2009-02-28 5 views
2

Je travaille sur un projet de transcription musicale polyphonique. J'ai lu des articles et parcouru des articles qui expliquent des tâches similaires. Je suis très confus à propos de nombreux aspects du domaine du problème. J'espère que quelqu'un pourra m'aider.Transcription musicale

Jusqu'ici j'ai obtenu un flux de données audio décodées à partir d'un mp3 donné.

J'ai compris la détection de début est la première étape vers la transcription. . Y at-il une bibliothèque java disponible qui peut être utilisée pour détecter les débuts.

Ensuite, la détection de la fréquence fondamentale est également fait avec l'utilisation de FFT comme je l'ai lu.

Je veux connaître l'utilisation de FFT dans ces tâches. (Je ne connais pas beaucoup FFT). Est-il absolument nécessaire d'effectuer FFT pour la détection de l'apparition et la détection F0. Sinon, quelles sont les autres façons. Puis-je effectuer la FFT sur le flux audio que j'ai, ou y at-il une autre opération qui doit être effectuée afin de manipuler ces données audio.

Merci beaucoup.

+0

sujet intéressant! – erickson

Répondre

3

Cette question about note onset detection contient beaucoup d'informations qui peuvent vous être utiles.

Cela semble un projet énorme mais très intéressant, bonne chance pour vous.

3

La transcription musicale consiste à créer une partition musicale à partir d'un son (ou de données audio). Alors que les musiciens accomplis et en particulier les compositeurs sont capables de faire cela, c'est une tâche extrêmement difficile à faire avec une machine, et pour autant que je sache, il y a eu peu de succès jusqu'ici - principalement des expériences académiques. Fondamentalement, pour reconnaître les notes, vous voulez savoir où elles commencent, où elles se terminent, et quelle est leur hauteur. La transformée de Fourier est le moyen le plus fondamental de transformer en principe le domaine temporel (données audio) en domaine fréquentiel (emplacements). En pratique, les instruments de musique génèrent beaucoup d'harmoniques (harmoniques) et si on a ajouté de la polyphonie (beaucoup de F0), c'est un bordel.

Vous pouvez essayer de fournir quelque chose comme des tranches séquentielles de 50 millisecondes de données audio à la FFT. De cette façon, vous obtiendrez le spectre de chaque tranche, puis détecter les pics les plus forts dans chaque tranche, et déduire le rythme de ce qui se passe entre les tranches successives. Désolé, je ne pouvais pas aider beaucoup ... Mais je voulais juste faire remarquer que ce que vous essayez de faire est extrêmement difficile, sérieusement. Peut-être devriez-vous commencer par quelque chose de plus simple, comme la détection de mélodies sinusoïdales à une note. Bonne chance!

6

Ce champ est connu comme l'écoute de la machine.

La transcription polyphonique de la musique codée numériquement est l'un des saints grails de l'écoute mécanique. C'est un problème non résolu et un domaine de recherche active. Les sous-champs suivants:

  • détection Onset
  • extraction de battement (détection de la structure métrique, sig de temps, etc.)
  • détection de hauteur (possible en utilisant l'auto-correllation, et d'autres méthodes, sur des signaux monophoniques , mais un problème non résolu lorsqu'il est appliqué à la musique polyphonique complexe)
  • Détection de clé (détection de signature de clé).

En fonction de la nature de votre projet, vous trouverez peut-être utile d'explorer l'environnement de programmation SuperCollider. SC est un langage conçu pour des projets tels que celui-ci, a déjà un grand nombre de machines (plug-ins d'écoute ugens), et un cadre global pour traiter les FFT, les signaux audio, et bien plus encore.

+0

bonne réponse. Le meilleur exemple commercial que j'ai vu est l'ADN de Celemony Melodyne: http://www.celemony.com/cms/index.php?id=dna Très impressionnant ce qu'ils ont réalisé, bien qu'il ne soit pas directement destiné à la transcription. –

0

Pour détecter la fréquence fondamentale de la mélodie dans la musique polyphonique, vous pouvez essayer le plug-in (utilisation non commerciale) vamp MELODIA: http://mtg.upf.edu/technologies/melodia

Si vous souhaitez implémenter vous un algorithme d'extraction de la mélodie » Je vais devoir vérifier l'état de l'art actuel dans la recherche, un bon point de départ pourrait être la campagne d'évaluation annuelle d'extraction de mélodie MIREX:

Cela, ou juste google "extraction de mélodie";)

Questions connexes