La synthèse de son additive

Après de nom­breux mois à lire sur la musique élec­tron­ique, sur la manière de faire du son, et à utilis­er des logi­ciels pour en faire, j’avais de plus en plus envie de me lancer dans la fab­ri­ca­tion d’un syn­thé­tiseur logi­ciel. Pas un truc révo­lu­tion­naire, hein ! Mais quelque chose à visée péd­a­gogique, pour appren­dre com­ment faire du son, et le partager avec d’autres.

Et le hasard faisant bien les choses, j’ai ren­con­tré dans le groupe de recherche Infor­ma­tique Sans Ordi­na­teur de l’IREM (là où je tra­vaille déjà à des activ­ités péd­a­gogiques) un copain de jeu, Pas­cal Lafour­cade, qui voit en la pro­gram­ma­tion musi­cale une manière ludique de for­mer les jeunes publics à l’informatique.

Dans cet arti­cle, je vous pro­pose donc de décou­vrir ce qu’est la syn­thèse addi­tive, en illus­trant mes pro­pos par quelques exem­ples générés par l’outil que je suis en train de dévelop­per, basic­synth.

Le son, c’est quoi ?

Le son, c’est le résul­tat de la com­pres­sion puis décom­pres­sion rapi­de de l’air (ou de tout autre matéri­au), que nos oreilles captent, et que l’on peut pro­duire de plein de manières dif­férentes : avec un instru­ment de musique, un haut-par­leur, ou tout objet du quo­ti­di­en. Pour réus­sir à en fab­ri­quer avec un ordi­na­teur, il faut pren­dre le temps de com­pren­dre com­ment cela marche physique­ment.

On peut représen­ter la compression/décompression suc­ces­sive de l’air par une courbe, où l’axe hor­i­zon­tal serait le temps, et l’axe ver­ti­cal la quan­tité de pres­sion, qui peut être néga­tive ou pos­i­tive. On appelle de telles représen­ta­tions des oscil­lo­grammes :

Plus le son est fort à nos oreilles, plus l’amplitude de la pres­sion est impor­tante. Dans l’exemple suiv­ant, le son représen­té en jaune est iden­tique au son rouge, excep­té son vol­ume : il est beau­coup plus faible.

En plus du vol­ume sonore, notre oreille apprend très tôt à dis­tinguer les sons aigus des sons graves. Sur les oscil­lo­grammes, c’est la longueur d’onde qui va vari­er. Quand la longueur d’onde varie, il n’y a bien sûr pas le même nom­bre d’oscillations par minute. C’est ce qu’on appelle la fréquence. On a par exem­ple pris l’habitude d’appeler la la note cor­re­spon­dant à une vibra­tion de 440 oscil­la­tions par sec­onde. Sa longueur d’onde, usuelle­ment mesurée en mètres, est donc équiv­a­lente à la dis­tance par­cou­rue par une vibra­tion dans l’air en 1/440 sec­onde. Chaque note usuelle a ensuite sa fréquence. En les jouant suc­ces­sive­ment, on peut pro­duire une mélodie.

J’ai du bon tabac, syn­thétisé par une méth­ode d’échantillonnage de sinus, très basique.

Pour fab­ri­quer ce son, j’ai util­isé la tech­nique de l’échantillonnage. Il s’agit du principe util­isé pour pro­duire du son numérique : on découpe chaque sec­onde en 44100 inter­valles (ce nom­bre a été fixé au moment de la com­mer­cial­i­sa­tion du CD), et on choisi une valeur numérique (cor­re­spon­dant à la pres­sion, la mesure ver­ti­cale) pour chaque échan­til­lon :

Dans ce pre­mier exem­ple, le son n’est pas très agréable : on dirait un buz, agres­sif, peu mélodieux. Il faut donc tra­vailler pour amélior­er ce son. La pre­mière chose à faire con­siste à intro­duire une enveloppe. Le principe de l’enveloppe d’une note est de faire vari­er le vol­ume de la note pro­gres­sive­ment, pour imiter les sons tels qu’ils sont pro­duits par les objets qui nous entourent. On peut par exem­ple faire mon­ter pro­gres­sive­ment le vol­ume de la note, puis le dimin­uer pro­gres­sive­ment, pour avoir un son très doux :

J’ai du bon tabac, syn­thétisé avec une enveloppe montante/descendante.

Dans cet exem­ple, chaque note est jouée avec sa fréquence fon­da­men­tale, mais le vol­ume varie, comme illus­tré ci-dessous :

Dans l’univers de la syn­thèse musi­cale, on a pris l’habitude de décom­pos­er l’enveloppe des sons en qua­tre par­ties : l’attaque, le déclin, le main­tien, et le relâche­ment. En faisant vari­er l’amplitude et la durée de cha­cune de ces par­ties, on est capa­ble de simuler grossière­ment des sons proches de ceux enten­dus dans notre quo­ti­di­en, qui sont sou­vent issus d’une pre­mière par­tie (frot­te­ment ou frappe), et d’une sec­onde par­tie plus ou moins longue.

Voici le même morceau que précédem­ment, mais joué avec une attaque et un déclin très pronon­cée (pour simuler une frappe), un très court main­tien beau­coup plus faible, et un lent relâche­ment :

J’ai du bon tabac, syn­thétisé en sim­u­lant un son frap­pé, grâce à une enveloppe adéquate.

Cepen­dant, dans la vraie vie, aucun instru­ment n’est capa­ble de pro­duire un son « pur ». Il y a tou­jours une foul­ti­tude de notes qui se mélan­gent, pour pro­duire un son riche. Chaque instru­ment a été conçu pour pro­duire un mélange spé­ci­fique de sons, pour chaque note jouée. C’est ce que l’on appelle le tim­bre de l’instrument. Or, quand on trou­ve un son har­monieux, c’est sou­vent que les sons qui vien­nent com­pléter la note fon­da­men­tale sont des notes dont la fréquence est un mul­ti­ple de la note fon­da­men­tale. Ain­si, la pre­mière har­monique d’un la à 440 Hz est un son qui vibre à 2 × 440 = 880 Hz, la deux­ième har­monique est un son qui vibre à 3 × 440 = 1320 Hz, etc. En syn­thèse addi­tive, on peut donc ajouter à chaque fois que l’on joue une note quelques har­moniques, dont on con­stru­ira une enveloppe beau­coup plus réduite, afin de garder la note fon­da­men­tale en avant, tout en l’enrichissant.

En rejouant la même par­ti­tion que précédem­ment, et lui en ajoutant quelques har­moniques, voilà ce que l’on obtient :

J’ai du bon tabac, syn­thétisé en sim­u­lant de manière rudi­men­taire un son de piano, grâce à une enveloppe adéquate et des quelques har­moniques.

Et voilà, c’est tout pour aujourd’hui ! Si vous voulez vous aus­si essay­er de fab­ri­quer du son avec mon petit syn­thé­tiseur péd­a­gogique, ren­dez-vous sur la page du pro­jet, où vous pour­rez télécharg­er le syn­thé­tiseur ain­si que le script qui a servi à fab­ri­quer les exem­ples que nous avons écouté. Le tout est écrit en python, et sous licence GPLv3.

4 thoughts on “La synthèse de son additive”

  1. Arti­cle très intéres­sant, instruc­tif.
    A pro­pos de l’échantillonnage, si je com­prends bien : pour un LA réglé à 441Hz, une oscil­la­tion (une péri­ode) du sig­nal occupe 100 inter­valles de l’échantillonnage à 44,1kHz.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.