2012-01-18 1 views
3

Je suis actuellement en train de faire une thèse sur la reconnaissance d'accords avec EPCP avec le fichier wav en entrée, mais maintenant je suis bloqué pour déterminer le nombre de frames et la taille d'un single fichier wav. Je besoin de ces données que les paramètres de la fonction hammingwindow dans la bibliothèque NAudioComment faire pour récupérer le numéro de frame et la taille du fichier wav

public static double HammingWindow(int n, int frameSize) 

J'ai récupéré tous les en-têtes de wav disponibles, mais je ne sais pas comment obtenir le nombre de cadres et de sa taille. Puis-je le calculer à partir de données d'en-tête données? Ou y a-t-il un autre moyen?

+0

Il n'y a pas de taille de trame ou de trame dans les fichiers wav. Parlez-vous des échantillons, des débits binaires, etc.? –

+0

bien que je pourrais avoir mal compris à ce sujet. Je suis nouveau dans le traitement du signal. J'ai les taux d'échantillonnage, les débits binaires, les canaux, etc., car ils sont tous inclus dans l'en-tête wav. Si les données d'images n'existent pas dans wav, puis-je diviser les fichiers wav en images? –

+0

Comme je l'ai déjà dit, il n'y a pas de "cadre" en vague. Ce concept n'est tout simplement pas connu. Un cadre existe en vidéo mais pas en audio. De quoi parlez-vous quand vous dites "cadre"? –

Répondre

2

Si vous étiez au courant de ce qu'est une fenêtre de hamming, vous ne poseriez pas une question comme celle-là. L'article wikipedia vous dit tout à ce sujet.

Je ne suis pas moi-même un expert en DSP, mais je travaille avec lui depuis quelques mois dans mes temps libres. Tout ce que je peux vous dire, c'est que c'est un domaine absolument compliqué! Rien que vous pouvez saisir dans une semaine ou deux. Les élèves sont éduqués dans ce domaine pendant plusieurs semestres à l'école secondaire. Juste comme une note de côté.

Alors, en ce qui concerne votre question:

Vous choisissez une taille de bloc, ce qui est généralement prédéterminée à partir de votre matériel audio. Cela a toujours une base de 2, donc 128, 256 .... un typique est 1024. C'est votre encadrement. Lors de l'utilisation de fichiers WAV, vous pouvez choisir la mise en page comme vous le souhaitez.

Il devrait simplement répondre aux critères mentionnés ci-dessus.

Une fenêtre dans ce contexte est une "courbe" qui commence à l'instant 0 avec une certaine valeur et se termine à frameSize-1 avec une certaine valeur.

Le paramètre "n" de votre fonction est la position dans cette fenêtre. La fonction renvoie une valeur comprise entre 0 et 1, qui représente la valeur "n".

1

NAudio dispose d'une démo WPF dans laquelle SampleAggregator.cs utilise la fonction HammingWindow. Avez-vous vérifié cet échantillon et compris comment il est utilisé?

1

Je n'ai pas utilisé HammingWindow. Une trame selon this est comme un échantillon, mais pour le format multicanal "un instantané de tous les canaux à un point de données spécifique".

Vous pouvez obtenir la taille d'échantillon en utilisant quelque chose comme this de l'en-tête, si c'est vraiment ce que vous voulez.

Questions connexes