Question

Je suis nouveau dans le monde de l'audio et on m'a confié une tâche que je ne sais pas comment gérer. Je dois afficher un graphique représentant la hauteur d'un fichier WAV. Le fichier WAV peut être polyphonique, puis je dois afficher le graphe de hauteur de l'instrument dominant (lire: avec le volume le plus fort) (ou chanter avec une voix humaine). Je connais assez bien .NET et je ne connais pratiquement rien en C, C ++, Java.

J'ai commencé une recherche sur le Web et, d'après ce que j'ai compris, la détection de la hauteur des fichiers WAV polyphoniques est un problème non résolu, mais je n'ai pas besoin de la hauteur exacte, je veux juste savoir si elle est supérieure à la suivante, et quelle est sa longueur

Mes questions sont les suivantes:

  1. Où devrais-je commencer pour apprendre la théorie derrière cette tâche? Existe-t-il des livres recommandés pour cela?

  2. Existe-t-il un API / outil capable de le faire?

Merci,

ML

Était-ce utile?

La solution

Vous pouvez utiliser l’analyse de Fourier pour extraire les fréquences constitutives de l’onde. Voici une question SO: Transformation rapide de Fourier en C #

Autres conseils

J'ai commencé le traitement du signal avec Traitement du signal numérique . Vous pouvez acheter le livre imprimé pour environ 30 $, ou télécharger le pdf gratuitement. Il est destiné à des non-scientifiques et contient de nombreuses informations pour vous aider à utiliser diverses techniques de traitement du signal.

La FFT (transformée rapide de Fourier) convertira un signal temps vs amplitude en une fréquence (cases) en fonction de l'intensité (énergie). Vous pouvez passer d'une fréquence à une note à l'aide des diagrammes standard disponibles sur de nombreux sites Web.

Je travaille sur un projet quelque peu lié. Vous voudrez étudier les transformations rapides de Fourier. Je peux recommander ce projet écrit en C # - écrit comme une guitare accordeur, mais il peut être facilement modifié selon vos besoins.

Ceci ne fera cependant pas de multi-pitch. Il existe un produit appelé " celemony " qui prétend avoir cette capacité en utilisant "Direct Note Access (DNA)". Leur technologie est naturellement une source fermée, mais vous pourrez peut-être obtenir une licence au bon prix.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top