Se connecter
Se connecter

ou
Créer un compte

ou
Pédago
1 réaction

Petit tour des méthodes employées pour réduire la taille des fichiers audio - La compression des données audio

Pour pouvoir être transmis sur des supports tels qu'Internet, le son est de plus en plus souvent numérisé et compressé. C'est de cet aspect que nous allons parler dans ce dossier.

De nos jours, de plus en plus de médias sont numé­ri­sés (image, son, vidéo…) et stockés ou trans­mis dans un format numé­rique. Cela a plusieurs avan­tages, dont le plus impor­tant est l’ab­sence de perte de qualité du média numé­risé pendant son trans­port ou lors de trai­te­ments sur celui-ci (à l’aide de logi­ciels, par exemple). Il existe égale­ment quelques incon­vé­nients intrin­sèques au carac­tère numé­rique, notam­ment la perte de préci­sion lors du passage du monde analo­gique au monde numé­rique (appelé conver­sion analo­gique / numé­rique ou échan­tillon­nage). Pour que le média numé­risé soit rigou­reu­se­ment le même que le signal d’ori­gine, il faudrait numé­ri­ser ce dernier avec une préci­sion infi­nie, donc en stockant une quan­tité infi­nie d’in­for­ma­tions… C’est évidem­ment très théo­rique et impos­sible à réali­ser. En pratique, la limite de préci­sion néces­saire est fixée géné­ra­le­ment par celle du récep­teur final de ce média : l’œil pour l’image, l’oreille pour le son. C’est ce dernier outil de l’homme qui nous inté­res­sera le plus dans ce dossier, puisque nous trai­te­rons prin­ci­pa­le­ment de la compres­sion numé­rique du son.

 

Stockage de l’in­for­ma­tion et capa­cité limi­tée

Dans les studios profes­sion­nels, et même dans les home studios plus modestes, on se préoc­cupe géné­ra­le­ment peu de la quan­tité d’in­for­ma­tion que l’on stocke sur son disque dur. Les stations sont de plus en plus perfor­mantes et la capa­cité des disques durs est mille fois plus élevée qu’il y a quelques années à peine. Du coup, on a tendance à stocker plus que néces­saire. Pour vous donner un ordre d’idée de la place que prennent vos enre­gis­tre­ments musi­caux, voici quelques exemples :

  • Un enre­gis­tre­ment en fichier «  wav  » d’un morceau de 4 minutes en qualité CD (44 Khz / 16 bits stéréo) : 42 Mo
  • Ce même enre­gis­tre­ment de quatre minutes, mais en multi­piste (chaque instru­ment est enre­gis­tré sur une piste sépa­rée) avec le logi­ciel Sampli­tude de Sek’D par exemple, sur 8 pistes mono en 24 bits 96 KHz : plus de 550 Mo. Le morceau de musique prend bien­tôt toute la place conte­nue sur un CD audio, et ce pour un seul morceau de quelques minutes !

Faisons un tout petit peu de maths… La formule pour calcu­ler la place prise par un enre­gis­tre­ment est simple. Soient :

  • K la taille du fichier en Kilo-octets
  • F la fréquence d’échan­tillon­nage en KHz
  • Q le nombre d’oc­tets utili­sés pour coder le signal (16 bits = 2 octets)
  • P le nombre total de pistes mono (si vous avez des pistes stéréo, cela équi­vaut à deux pistes mono)
  • T le temps de l’en­re­gis­tre­ment en secondes

K = P * F * Q * T

A l’in­verse, on trouve sur Inter­net des fichiers audio de quelques méga­oc­tets, d’une qualité plus qu’ho­no­rable. Ceci est rendu possible grâce à la compres­sion numé­rique. Nous allons expliquer les diffé­rentes manières de procé­der pour la compres­sion et voir quel type de compres­sion choi­sir en fonc­tion du contexte.

 

Compres­sion non destruc­tive

Algo­rithmes de compres­sion géné­ra­listes

Vous connais­sez certai­ne­ment de multiples formats de compres­sion dits «  non destruc­tifs  ». La compres­sion zip, bien connue en infor­ma­tique, en fait partie. La propriété prin­ci­pale des algo­rithmes non destruc­tifs est qu’une fois décom­pressé, le fichier est rigou­reu­se­ment le même que le fichier avant compres­sion (au [def]bit[/def] près). Il n’y a donc aucune perte d’in­for­ma­tion. Comment peut-on réduire la place prise par un fichier tout en gardant toute l’in­for­ma­tion conte­nue dans celui-ci ? Pour simpli­fier, disons que l’al­go­rithme de compres­sion (prenons ici l’exemple du .zip) recherche dans le fichier des occur­rences multiples d’une suite d’oc­tets. Il se crée ainsi ce que l’on appelle un diction­naire, index qui réfé­rence ces suite d’oc­tets répé­ti­tives. Ensuite, l’al­go­rithme rempla­cera celles-ci, dans le fichier compressé, par des codes qui prennent moins de place.

 

Prenons un fichier texte, par exemple cet article que vous êtes en train de lire. Dans celui-ci, vous retrou­vez souvent les mots «  compres­sion  », «  destruc­tive  », «  son  », «  fichier  ». L’al­go­rithme de compres­sion va alors se créer une table de corres­pon­dance pour dire «  compres­sion  » = 1, «  destruc­tive  » = 2, «  son  » = 3, «  fichier  » = 4. Ainsi, dans le texte, ces mots vont être rempla­cés par leur code, plus court, donc prenant moins de place dans le fichier compressé. Voilà donc, de manière simpli­fiée, le fonc­tion­ne­ment de la compres­sion non destruc­tive. Sans trop rentrer dans les détails, sachez que la compres­sion (zip ou autre) se fait de manière intel­li­gente et plus complexe que selon le prin­cipe énoncé précé­dem­ment. Par exemple, on a recours à l’al­go­rithme de Huff­man, qui opti­mise le codage des données, puisqu’il encode les mots les plus fréquem­ment trou­vés avec le code le plus court possible, et garde les codes les plus longs pour les mots les moins fréquents. Par exemple, le chiffre 1 peut être codé sur un seul bit (alors que le mot «  compres­sion  » est codé sur au moins 11 octets, soit 88 bits !). Imagi­nons que le diction­naire comporte 1000 mots. A titre d’exemple, on pourra se permettre de coder un mot comme «  fonc­tion­ne­ment  », trouvé plus rare­ment dans le texte, sur 10 bits (10 étant ici le nombre de bits maxi­mum pour coder 1000 mots, puisque 2^10 = 1024).

 

D’autres formats de compres­sion non destruc­tive sont plus perfor­mants que le ZIP : le RAR ou le ACE entre autres. Voilà en ce qui concerne les algo­rithmes non dédiés à l’au­dio.

 

Limites des algo­rithmes géné­ra­listes

Parlons main­te­nant de ce qui nous inté­resse le plus : le son. Nous avions pris l’exemple d’un texte, et c’était parti­cu­liè­re­ment commode parce que ce type de média contient beau­coup de répé­ti­tions, donc peut se compres­ser très faci­le­ment. Il en va tout autre­ment dans le cas de l’au­dio, car le carac­tère très chan­geant du son fait qu’il est rare de retrou­ver des répé­ti­tions fidèles dans celui-ci. En effet, la décom­po­si­tion du son selon Fourier nous limite au cas d’un signal pure­ment pério­dique, mais en réalité une onde sonore ne se répète jamais rigou­reu­se­ment de la même façon. A cette règle font excep­tion les sons géné­rés par des oscil­la­teurs de base (ondes sinu­soï­dales, trian­gu­laires, etc.), au travers d’un logi­ciel ou d’un synthé­ti­seur virtuel. Même dans le cas d’un synthé­ti­seur réel, le son varie légè­re­ment et de manière non prévi­sible, comme nous allons le voir dans l’exemple suivant.

J’ai fait le test avec deux enre­gis­tre­ments de cinq secondes d’une onde en dent de scie. L’une est créée avec Sound Forge (donc parfai­te­ment pério­dique) appe­lée et l’autre provient d’un bon vieux synthé­ti­seur analo­gique, le Roland Juno 106. L’en­re­gis­tre­ment de ce dernier fait inter­ve­nir la stabi­lité rela­tive du son des synthé­ti­seurs analo­giques, et fait appa­raître néces­sai­re­ment du bruit de fond. Les deux sons étant de même durée à l’échan­tillon près, les fichiers non compres­sés corres­pon­dants font la même taille, 862 Ko. Après compres­sion avec l’al­go­rithme utilisé par le format ZIP, le premier se compresse énor­mé­ment et passe à 7 Ko, et l’autre beau­coup moins, étant réduit à 38 Ko. Ceci dit la diffé­rence dans le cas géné­ral est encore plus flagrant. Dans le cas de l’en­re­gis­tre­ment de l’onde sinu­soï­dale du Juno 106, nous avons affaire à un son très stable (quasi pério­dique). Par consé­quent, ce qui est à rete­nir est la diffé­rence d’ef­fi­ca­cité en fonc­tion du son à enco­der. En revanche, le facteur de compres­sion n’est ici pas repré­sen­ta­tif de l’ef­fi­ca­cité de tels algo­rithmes sur un son, à cause de la pério­di­cité du signal d’ori­gine. En effet, un son plus complexe se compresse beau­coup moins bien, comme nous le verrons tout à l’heure.

 

Algo­rithmes dédiés au son

Passons à présent à un exemple de son complexe. Sachez que de nombreux algo­rithmes propres à ce type de média existent, bien qu’ils soient moins connus. Citons WavArc (.ARC), tiré du format de compres­sion ARC de Dennis Lee, Audio­ZIP (.zip), tiré du ZIP de Lin Xiao, LPAC de Tilman Lieb­chen, Monkeys Audio de Matthew T. Ashland, et enfin RKAU de Malcolm Taylor.

 

Lors de mes tests compa­ra­tifs, le RKAU (Pour RK Audio) m’a parti­cu­liè­re­ment plu pour plusieurs raisons. D’une part, il est le plus effi­cace de tous les algo­rithmes non destruc­tifs cités. D’autre part, la compres­sion avec cet enco­deur s’ef­fec­tue rapi­de­ment. Enfin, le logi­ciel est gratuit et il est fourni avec un plug-in pour Winamp, ce qui signi­fie que vous pouvez direc­te­ment écou­ter les sons compres­sés au format RK Audio dans ce player. Vous trou­ve­rez ce programme ici (rkau107.zip).

 

Sound Forge propose quant à lui un format proprié­taire, le Perfect Clarity Audio (dont l’ex­ten­sion des fichiers est le PCA). Dans l’exemple précé­dent, le son est pério­dique, si bien que la compa­rai­son de cet algo­rithme avec le ZIP ou le RAR est biai­sée, puisque ce format, censé être parti­cu­liè­re­ment adapté au son, donne de moins bons résul­tats que le ZIP. La raison est simple : le son est trop pério­dique, sa compres­sion peut donc être assi­mi­lée à celle d’un fichier texte dans lequel on aurait reco­pié des centaines de fois le même para­graphe. Loin de moi l’idée, donc, de déni­grer le format déve­loppé par Sonic Foun­dry ! Pour preuve, si l’on prend l’ex­trait sonore son_complexe.wav, la compres­sion par l’al­go­rithme Perfect Clarity Audio donne de bien meilleurs résul­tats que le ZIP ou le RAR.

Comparaison des tailles de fichier entre compression destructive et non desctructive
Compa­rai­son des tailles de fichier entre compres­sion destruc­tive et non desc­truc­tive

 

Cepen­dant, malgré la compres­sion, les fichiers audio sont encore trop volu­mi­neux pour être utili­sés dans certains contextes : dans l’uti­li­sa­tion de tels fichiers sur Inter­net, certes, mais aussi dans les canaux de trans­mis­sion numé­riques comme le câble télé­visé. On a donc recours à un autre type de compres­sion : la compres­sion destruc­tive.

 

Compres­sion destruc­tive

Comme je le disais tout à l’heure, la limite de préci­sion que les entre­prises se fixent lorsqu’elles créent un produit diffu­sant de l’au­dio est calquée géné­ra­le­ment sur les limites des sens de l’homme. Repre­nons l’exemple du para­graphe précé­dent. L’onde en dent de scie prove­nant du synthé­ti­seur analo­gique est accom­pa­gnée d’un bruit de fond, et c’est prin­ci­pa­le­ment ce bruit de fond qui rend le fichier non répé­ti­tif, donc compres­sible diffi­ci­le­ment. En effet, par défi­ni­tion un bruit est une onde tota­le­ment chao­tique. On ne peut donc pas trou­ver deux occur­rences iden­tiques dans un tel signal. Pourquoi garder cette infor­ma­tion, non néces­saire, dans le fichier sonore ? C’est sur ce genre de consta­ta­tions que la compres­sion destruc­tive se base.

 

Il existe égale­ment de multiples formats de compres­sion destruc­tive. Il faut savoir que l’un d’entre eux, le très connu MP3, a été créé et breveté par Thom­son Multi­me­dia. Aussi, théo­rique­ment, chaque personne qui crée un fichier MP3 pour l’ex­ploi­ter commer­cia­le­ment est censée rever­ser des droits à l’en­tre­prise. Le format imposé par Micro­soft, le Windows Media Audio (WMA), ressemble au MP3. Il est réputé être légè­re­ment de meilleure qualité pour une même taille de fichier. Son format est égale­ment breveté donc son utili­sa­tion se fait en contre­par­tie de droits rever­sés à Micro­soft. Bien sûr, ces problèmes de droits ne sont à consi­dé­rer que si vous êtes de grandes entre­prises comme Mp3.com (Univer­sal) ou que vous vendez des players MP3 / WMA en grande quan­tité. A petite échelle, personne ne vien­dra vous deman­der des royal­ties ! Le format OGG Vorbis quant à lui résout ces problèmes de brevet. C’est un format quasi iden­tique au MP3, à la diffé­rence que l’uti­li­sa­tion de celui-ci est libre de droits. Malheu­reu­se­ment, ce format n’est pas aussi répandu que le MP3 ou le WMA.

 

Parmi les autres formats de compres­sion destruc­tive, citons le MP3Pro, évolu­tion du bien connu MP3, le Real Audio de Real Networks, le Yamaha VQF. Les algo­rithmes utili­sés sont prin­ci­pa­le­ment le MPEG (pour le format MP3), l’AAC (MP3Pro), l’ATRAC (Sony Mini­disc), le PASC (Philips DCC), et enfin les Dolby AC-1, AC-2 et AC-3. Un petit mot sur le MP3Pro au passage : puisque ce format s’avère de meilleure qualité que le MP3 pour une réduc­tion encore plus grande de la quan­tité d’in­for­ma­tions stockées, pourquoi ne pas utili­ser exclu­si­ve­ment le MP3Pro ? La raison est que le temps de calcul néces­saire à décom­pres­ser un tel format est élevé. Ainsi, décom­pres­ser un morceau en MP3Pro risque de consom­mer toutes les ressources de votre ordi­na­teur et de n’en lais­ser à aucune autre appli­ca­tion.

 

Afin de défi­nir les diffé­rentes tech­niques utili­sées pour compres­ser le son, nous allons prin­ci­pa­le­ment nous appuyer sur le format MP3 (Mpeg 2 layer 3), format audio utili­sant typique­ment la compres­sion destruc­tive, donc les limites psychoa­cous­tiques de l’oreille humaine, afin de suppri­mer certaines parties du son inau­dibles.

Le masquage de fréquences


L’une des proprié­tés les plus inté­res­santes parmi celles utili­sées pour ne pas «  enco­der l’in­utile  » est la tech­nique de masquage. Le seuil à partir duquel l’oreille humaine perçoit un son dépend énor­mé­ment de la fréquence de ce son. Par exemple, nous perce­vons beau­coup plus faci­le­ment un son faible à 4 kHz qu’à 50 Hz ou 15 kHz. De plus, à partir de 25 kHz, quel que soit le niveau sonore, l’oreille humaine ne perçoit plus aucun son. Le MP3, tout comme les Mini-Disc et le Dolby, utilise donc la tech­nique de masquage : si deux sons de fréquences proches sont joués avec une inten­sité très diffé­rente, on pourra suppri­mer le son le plus faible qui sera de toute façon masqué et ignoré par l’oreille humaine.

Le phénomène de masquage de fréquences
Le phéno­mène de masquage de fréquences


Le graphe ci-dessus met en relief le phéno­mène de masquage de fréquences. En effet, en présence d’un signal de 500 Hz, un son d’une fréquence proche de 500 Hz est masqué et son niveau doit dépas­ser la courbe b pour être audible par l’oreille humaine. Si son niveau est en dessous, on n’est pas obligé d’en tenir compte dans le fichier compressé.

Le Joint Stereo

Pronon­cez à l’an­glaise ! Il ne s’agit pas d’une inven­tion Hippie de dernière géné­ra­tion, mais d’un proces­sus appelé «  stéréo jointe  » en bon français. Ce qui était valable pour la compres­sion non destruc­tive l’étant aussi pour la compres­sion destruc­tive, la taille du fichier est direc­te­ment propor­tion­nelle au nombre de pistes enre­gis­trées. Enre­gis­trer en mono prend donc deux fois moins de place que d’en­re­gis­trer en stéréo ! Or un autre aspect de l’oreille humaine est sa capa­cité limi­tée à loca­li­ser la prove­nance des basses fréquences dans l’es­pace de diffu­sion, contrai­re­ment aux hautes fréquences dont on distingue faci­le­ment la prove­nance. Ainsi, pourquoi coder les basses en stéréo ?

C’est ce prin­cipe qui est utilisé avec le «  Joint Stereo  » : le spectre du signal est coupé en hautes et basses fréquences, les hautes fréquences étant codées en stéréo, et les basses en mono… Et il est diffi­cile d’en­tendre la diffé­rence, la plupart du temps. Notez que l’on a géné­ra­le­ment le choix d’ac­ti­ver ou non le Joint Stéréo lors de l’en­co­dage. Si votre morceau fait inter­ve­nir des basses qui ont une image stéréo­pho­nique large (ce qui est rare, l’éner­gie des basses étant à centrer dans un bon mix), vous pouvez préser­ver cet aspect du morceau.

 

L’al­go­rithme de Huff­man

Une fois de plus, Huff­man a frappé. Son algo­rithme consiste, un peu comme précé­dem­ment, à recher­cher, une fois le son encodé, des occur­rences iden­tiques (minus­cules samples comme une période de sinu­soïde par exemple). C’est rare­ment le cas dans un morceau complexe, mais cela peut l’être dans une partie éthé­rée d’un morceau. A ce moment là, chaque occur­rence est codée et au lieu d’en­re­gis­trer n fois la même occur­rence, on indiquera simple­ment un code de quelques bits y faisant réfé­rence.

Para­mètres de la compres­sion

Lorsque nous voulons enco­der un fichier sonore, nous dispo­sons de plusieurs options. Celui qui déter­mine le plus la qualité du son compressé final est le «  Bitrate  », qui est en fait le débit consommé lors de la trans­mis­sion du fichier. Par exemple, en 128 kbps, le fichier devra, pour être écouté en temps réel («  strea­ming  » en anglais) être télé­chargé à la vitesse de 128 kilo bits par seconde (16 Ko par seconde). Ceci est impos­sible à faire avec un modem en 56 Kbps contrai­re­ment à l’ADSL qui permet géné­ra­le­ment au moins 4 fois cette bande passante.

 

Vous dispo­sez en outre de l’ac­ti­va­tion ou non du système de stéréo jointe. Parfois il peut être préfé­rable de désac­ti­ver cette option. Néan­moins cela a pour consé­quence de devoir enre­gis­trer plus d’in­for­ma­tions pour coder le signal. Comme la limite de quan­tité d’in­for­ma­tions est stric­te­ment fixée par le bitrate, le son stéréo devra être codé avec moins de préci­sion pour contrer l’aug­men­ta­tion d’in­for­ma­tions à coder résul­tant du fait qu’il faut coder deux canaux, et sera donc de moins bonne qualité.

 

Enfin, les créa­teurs du MP3 ont fait la consta­ta­tion suivante : dans un morceau, on trouve des passages sombres ou silen­cieux. Pourquoi les coder de la même manière que les passages très brillants et complexes ? Ils ont donc amélioré le format MP3 grâce à l’im­plé­men­ta­tion du «  Variable Bit Rate  » (VBR). Ce système permet de faire varier dyna­mique­ment le bitrate du codage en fonc­tion de la complexité du son. Ainsi un passage sombre sera codé en 16 Kbps au lieu de 128.

 

L'ensemble des paramètres de compression dans le logiciel CDEx
L’en­semble des para­mètres de compres­sion dans le logi­ciel CDEx

 

Conclu­sion

Alors, que choi­sir ? Une compres­sion destruc­tive, non destruc­tive, aucune compres­sion ? Les profes­sion­nels du son vous le diront tous (parfois avec un mépris des plus trou­blants) : la compres­sion destruc­tive est une cala­mité. En effet, pourquoi se fati­guer à travailler le mix d’un morceau en finesse, l’échan­tillon­ner en 24 bits / 96 KHz, faire atten­tion à la qualité du son dans les moindres détails, si c’est pour fina­le­ment utili­ser une compres­sion destruc­tive et ainsi perdre tous les détails du morceau ? Et pour­tant, la télé­vi­sion et la radio numé­riques, de même que la trans­mis­sion de médias sur Inter­net, utilisent la compres­sion destruc­tive (prin­ci­pa­le­ment le MPEG) pour permettre d’en­voyer le flux d’in­for­ma­tions en temps réel. Il serait inima­gi­nable de trans­mettre du son non compressé via les canaux de trans­mis­sion dont nous dispo­sons actuel­le­ment.

 

La conclu­sion de cette réflexion est la suivante : si vous travaillez en local, chez vous, et que vous avez de la place de votre disque dur, passez-vous de compres­sion. Au pire, si vous utili­sez majo­ri­tai­re­ment des produits de Sonic Foun­dry (Acid, Sound Forge…) vous pouvez compres­ser en PCA sans aucune perte de qualité sonore. Vous pour­riez égale­ment archi­ver les anciens morceaux en les compres­sant en RK Audio. En revanche, dès que vous voulez diffu­ser vos morceaux sur un media à bande passante limi­tée (comme Inter­net), vous devez utili­ser la compres­sion destruc­tive comme le MP3.

 

Biblio­gra­phie

 

Voici une liste de sites utili­sés lors de la rédac­tion de cet article :

Site de Thom­son Multi­me­dia, à l’ori­gine du MP3
http://mp3li­cen­sing.com

Site de l’ins­ti­tut de Fraun­ho­fer dédié à l’au­dio et au multi­me­dia
http://www.iis.fhg.de/amm

Compa­ra­tif d’al­go­rithmes de compres­sion non destruc­tive
http://www.firstpr.com.au/audio­comp/loss­less

Tout sur la compres­sion MPEG
http://www.mpeg.org

Détails sur l’al­go­rithme ATRAC utilisé dans le mini­disc
https://www.mini­disc.org

Site offi­ciel de l’en­co­deur gratuit CDEx
http://www.cdex.n3.net

Je vous invite à visi­ter ces sites pour en savoir plus.

  • lescéréalesquileurrent 429 posts au compteur
    lescéréalesquileurrent
    Posteur·euse AFfamé·e
    Posté le 21/04/2020 à 20:17:39
    bonsoir ! l'article étant de 2002 y a t'il des gens compétents pour le mettre à jour si il y a du mieux,évidemment !
    ciao ciao !

Vous souhaitez réagir à cet article ?

Se connecter
Devenir membre