Segmenter le signal

 

par Ettougourti Mohamed Ali


Lire le fichier audio, déterminer son taux d’échantillonnage, le nombre de bits de chaque mot, et le nombre des canaux, mono ou stéréo, n’est que la première étape et le premier module du programme.

Nous devons à présent identifier les notes musicales, leurs fréquences et leurs durées.

Faut-il avoir un savoir-faire musical  préalable ?

Une certaine maitrise du sujet ne serait pas de trop.  Elle est surtout utile  pour vérifier les résultats engendrés par le programme et en mesurer les performances et la fiabilité.

Plusieurs méthodes existent pour détecter les notes musicales d’un signal audio.

Deux sont parmi les plus connues.

Chaque note passe par  une naissance, l’attaque, une durée où le signal est stable,  une extinction où l’énergie décline graduellement.

Détecter les notes revient donc soit à traquer les attaques. C’est-à-dire la naissance de la note qui se distingue par un changement brusque d’énergie, en traquant les changements d’énergie dans le signal.

Soit segmenter le signal en laps de temps assez fins pour pouvoir détecter le début et la fin de chaque note musicale jouée.

La détection des notes n’est pas chose aisée. Plus d’une note peut-être jouée dans un
Laps de temps très court et même plusieurs notes peuvent naitre simultanément.

S’il s’agit de la même note jouée mais à différentes octaves et à de timbres différents,
Selon l’instrument ayant produit le signal, on est toujours dans la monophonie.

Mais si les notes jouées simultanément ne sont pas les mêmes ex : un do et un mi. On est désormais dans la polyphonie. La musique orientale est  généralement monophonique.

 
Le choix de la première méthode, détection des changements brusques d’énergie dans le signal, semble à priori séduisant, mais l’expérience montre que cette méthode manque de précision et n’est pas assez performante pour rendre fidèlement le signal dans son intégralité.

Quelle que soit la méthode adoptée on doit fixer la taille du segment ou la fenêtre d’analyse.
Les expériences psychologiques et les données scientifiques nous guident à ce propos.

L’ouïe humaine serait sensible à des changements de très courte durée de l’ordre de 20 millièmes de seconde.

D'autre part d’un point de vue purement musical, une note musicale ne serait pertinente que si le signal dure au moins une centaine de millièmes de secondes.

Ainsi les rythmes les plus rapides en musique dépassent rarement les 120 battements par seconde Soit une noire de 500 ms. L’on sait que la musique orientale est beaucoup plus lente
Que la musique occidentale.

Le rythme le plus lent est de 40 noires par seconde soit 60000/40 ou 1500 ms la durée d’une noire.

A un tempo de 120 noires par minutes. La double croche est de 500ms /4 soit 125 ms. La triple croche dure la moitié soit 62 ms, la quadruple croche 31 ms ou 30 ms.

Il semblerait donc pertinent de fixer la fenêtre d’analyse à 30 ms.

La taille du segment dépend du taux d’échantillonnage et de la qualité du son : mono ou stéréo.

Pour un taux d’échantillonnage de 44100 mots saisis par seconde, qualité CD du son, l’on doit
réserver une mémoire de 44100*0.03  soit 1323 mots (à 16 bits ou 8 bits selon le nombre de bits

Par mot). Si le signal à analyser est un son stéréo il faut prévoir le double soit 2646 mots.

Chaque segment doit être analysé, sa fréquence déterminée, la note musicale identifiée, L’énergie du signal convertie en amplitude.

(204)