Traitements de DynamiqueCicmHd3d

12
Traitements de dynamique Benoît Courribet CICM, MSH Paris Nord, Université Paris 8, 2009

description

méthode

Transcript of Traitements de DynamiqueCicmHd3d

Page 1: Traitements de DynamiqueCicmHd3d

Traitements de dynamiqueBenoît Courribet

CICM, MSH Paris Nord, Université Paris 8, 2009

Page 2: Traitements de DynamiqueCicmHd3d

Table des matièresPréambule..............................................................................................................................3

1. Fonctionnement d'un compresseur....................................................................................31.1. Création d'un signal d'enveloppe:...............................................................................31.2. Comparaison du signal d'enveloppe avec un seuil de compression:........................41.3. Création d'un signal de contrôle d'amplitude, paramètre de taux de compression. . .5

1.4. Lissage du signal de contrôle d'amplitude, paramètres de temps d'attaque et de relâchement (attack et release):........................................................................................71.5. Application du signal de contrôle d'amplitude............................................................7

2. Paramètres additionnels:...................................................................................................82.1. Knee (ou « coude »)...................................................................................................82.2.Pre-compression..........................................................................................................92.3.Make-up gain...............................................................................................................9

3. Techniques avancées:.......................................................................................................93.1. Modification du signal d'enveloppe (sidechain):.........................................................93.2. Compression multibande:...........................................................................................93.3. Compression parallèle:.............................................................................................103.4. Compression M/S.....................................................................................................10

4. Autres traitements de dynamique:...................................................................................104.1. Limiteur:....................................................................................................................104.2. Expandeur:................................................................................................................114.3. Gate:.........................................................................................................................114.4. Dé-compresseur:......................................................................................................114.5. Dé-expandeur:..........................................................................................................12

2

Page 3: Traitements de DynamiqueCicmHd3d

Préambule

Ce document a pour but de présenter le fonctionnement des processeurs de compression dynamique, à travers l'étude de chaque paramètre, ainsi que de décrire quelques techniques plus avancées de compression (sidechain, compression stéréo, compression M/S, compression multibande, compression parallèle) et enfin de présenter succintement d'autres traitements de dynamique.

Le terme de « compression » peut signifier différentes choses. Il sert souvent à parler de la réduction de la taille de données informatiques. Cependant, on parle de la compression comme traitement de dynamique et on précise parfois "compression de dynamique" pour éviter la confusion avec la compression de données.

La dynamique est la plage d'intensités (des plus faibles aux plus fortes) correspondant à un signal audio. Le rôle du compresseur va être de réduire cette plage d'intensités.

L'échelle des intensités sera exprimée en décibels (dB) et dans le cas des signaux audionumériques, on exprimera les amplitudes en dBFS, 0 dBFS étant le maximum d'amplitude d'un signal audionumérique. Ainsi, les amplitudes sont généralement exprimées en nombres négatifs.

Enfin, nous nous intéressons ici à une implémentation logicielle d'un compresseur. Si un compresseur analogique fonctionne sur les mêmes principes, les explications que nous donnons (notamment pour la création du signal d'enveloppe) sont spécifiques à une version numérique.

Un compresseur logiciel a été réalisé dans l'environnement de programmation graphique MaxMSP, les fichiers sont disponibles dans la partie « téléchargements » du site du CICM ( http://cicm.mshparisnord.org ).

1. Fonctionnement d'un compresseur

Pour résumer le principe de fonctionnement d'un compresseur, on peut dire que le compresseur analyse le signal entrant et se déclenche lorsque l'amplitude du signal dépasse un certain seuil, il agit alors en réduisant la dynamique du signal au-dessus de ce seuil.

Nous allons maintenant décrire étape par étape le fonctionnement d'un compresseur.

1.1. Création d'un signal d'enveloppe:

La première étape consiste à extraire du signal original un signal correspondant à l'évolution temporelle de son amplitude (nous l'appellerons « signal d'enveloppe »). Il est important de comprendre que ce signal ne correspond pas à quelque chose d'audible, c'est juste un signal "utilitaire" qui sert au fonctionnement du compresseur.

Ce signal d'enveloppe est obtenu de la façon suivante:

3

Page 4: Traitements de DynamiqueCicmHd3d

Le signal à traiter est moyenné et exprimé en valeurs RMS (Root Mean Square): on prend toutes les valeurs contenues dans n millisecondes (n varie en fonction du comportement que l'on souhaite obtenir pour le compresseur; on le fixe par exemple ici à 5 millisecondes) et on calcule la racine carrée de la somme des carrés de ces valeurs. Le signal obtenu est une courbe de valeurs positives qui donne une bonne représentation de l'évolution globale de l'amplitude du signal. Le choix d'un n plus petit fera que le signal rendra plus compte des petits détails d'évolution d'amplitude.

signal original (batterie)

signal d'enveloppe (n=5 millisecondes)

1.2. Comparaison du signal d'enveloppe avec un seuil de compression:

Ici intervient le premier paramètre réglable: le seuil de compression (ou threshold). Il est exprimé en dB. On compare donc l'amplitude du signal d'enveloppe avec ce seuil et on s'intéresse aux portions du signal dépassant ce seuil. Le résultat est ensuite recentré

4

Page 5: Traitements de DynamiqueCicmHd3d

autour de 0. Pour les illustrations qui suivent, on a ici réglé le seuil à -16 dBFS.

signal d'enveloppe au-dessus du seuil

même résultat, mais recentré sur 0

1.3. Création d'un signal de contrôle d'amplitude, paramètre de taux de compression

C'est ici que le compresseur entre en action, le signal que nous avons obtenu précédemment va être modifié afin de devenir un signal de contrôle d'amplitude. Plus l'amplitude du signal va dépasser le seuil de compression, plus le gain va être réduit. A un facteur d'échelle près, le signal de contrôle d'amplitude correspond à l'opposé du signal d'enveloppe minoré par le seuil.

Un paramètre va régir l'importance de l'action du compresseur: le taux de compression ou ratio. Exprimé comme un rapport, il rend compte de l'atténuation du signal au-dessus du

5

Page 6: Traitements de DynamiqueCicmHd3d

seuil de compression: un taux de compression de 3/1 signifie qu'un écart de dynamique de 3 dB au-dessus du seuil sera réduit à 1 dB.

Les cas limites sont, pour la compression: un taux de 1/1 ou 1:1 (le compresseur n'agit pas) et +∞/1 (ratio infini: ce qui dépasse le seuil est réduit à la valeur du seuil).

Une manière courante de représenter les réglages de seuil et de ratio est de présenter une fonction de transfert entre intensité du signal entrant en abscisse et intensité du signal sortant en ordonnée. Ainsi, voici quelques exemples illustrés de couples ratio-seuil:

Ratio: 3/1Seuil: -16 dBFS

Ratio: 3/1Seuil: -32 dBFS

Ratio: 1.5/1Seuil: -32 dBFS

Ratio: 7/1Seuil: -32 dBFS

Le signal de contrôle d'amplitude sera, par la suite, combiné (par multiplication) avec le signal original. Ainsi, lorsque le signal de contrôle d'amplitude vaut 1 (le maximum, sur les illustrations), cela signifie que le compresseur n'agit pas. Lorsqu'il est inférieur à 1, le compresseur agit et opère une réduction de gain.

Pour les illustrations suivantes, le taux de compression a été réglé à 3/1

signal de contrôle d'amplitude

6

Page 7: Traitements de DynamiqueCicmHd3d

1.4. Lissage du signal de contrôle d'amplitude, paramètres de temps d'attaque et de relâchement (attack et release):

Afin d'avoir un résultat sonore plus subtil, le signal de contrôle d'amplitude est lissé à l'aide de 2 paramètres:

le temps d'attaque (en millisecondes) est le temps que met le compresseur pour se "mettre en route" à partir du moment où le seuil de compression est dépassé

le temps de relâchement (en millisecondes) est le temps que met le compresseur avant de ne plus agir à partir du moment où le signal d'enveloppe repasse sous le seuil.

Pour l'illustration suivante, le temps d'attaque a été réglé à 3 millisecondes, le temps de relâchement, à 100 millisecondes

signal de contrôle d'amplitude lissé

Le réglage de ces 2 paramètres est capital. En effet, le temps d'attaque permet de gérer le comportement du compresseur par rapport aux transitoires d'attaque du signal entrant: un temps d'attaque très rapide permettra de compresser mêmes les signaux les plus rapides, alors qu'un temps d'attaque plus long permettra de garder intacts les transitoires d'attaque. On peut donc « adoucir » ou « renforcer » l'impact des attaques d'un signal uniquement en agissant sur ce paramètre. De même, un temps de relâchement trop rapide rendra plus audible l'action du compresseur (la résonance du son compressé subit une remontée de volume, par exemple), mais cette « couleur » peut également être recherchée.

1.5. Application du signal de contrôle d'amplitude

Il ne reste plus qu'à multiplier le signal original par le signal de contrôle d'amplitude.Il est important de noter que le volume sonore perçu est réduit par la compression. On trouve en général un paramètre "output gain" ou "make-up gain" afin de pallier ce

7

Page 8: Traitements de DynamiqueCicmHd3d

phénomène.

comparaison entre le signal original (à gauche) et le signal compressé (à droite)

2. Paramètres additionnels:

En fonction du compresseur utilisé, les paramètres disponibles varient (on n'a parfois pas accès aux temps d'attaque et de relâchement, ou bien ratio et seuil sont liés, etc.). On trouve parfois également quelques paramètres supplémentaires permettant d'affiner le comportement du compresseur.

2.1. Knee (ou « coude »)

Le paramètre de knee (« genou » en français, mais traduit par « coude »...) est en général exprimé en dB et décrit une action progressive du compresseur autour du seuil. Si ce paramètre est réglé à 5 dB, par exemple, cela veut dire que 5 dB avant que le signal entrant n'atteigne le seuil, le compresseur commencera à agir, mais avec un ratio qui augmentera progressivement jusqu'à atteindre la valeur réglée par l'utilisateur lorsque le seuil est atteint (parfois, l'action de ce paramètre est répartie avant et après le seuil).

Fonction de transfert d'un compresseur Même fonction de transfert, avec knee activé

8

Page 9: Traitements de DynamiqueCicmHd3d

2.2.Pre-compression

Ce paramètre (exprimé en millisecondes) permet de décaler légèrement le signal à traiter et le signal d'enveloppe: ainsi, il est possible pour le processeur « d'anticiper » les variations du signal. Cela est parfois pratique pour le traitement des transitoires d'attaque.

2.3.Make-up gain

Comme nous l'avons vu précédemment, le volume global d'un signal compressé est inférieur à celui du signal original, un paramètre de réglage de gain en sortie du compresseur permet d'adapter le volume du signal sortant au reste de la chaîne de traitement. On trouve également parfois un « Auto Make-up gain » qui calcule automatiquement la réduction maximale de gain et applique un gain positif pour la compenser.

3. Techniques avancées:

3.1. Modification du signal d'enveloppe (sidechain):

Certains compresseurs donnent la possibilité de modifier le signal d'enveloppe en y appliquant des traitements. Les modifications habituelles consistent à appliquer des filtres fréquentiels à ce signal. Ainsi, en appliquant un filtre passe-haut sur le signal d'enveloppe, on réduit l'action du compresseur sur les signaux contenant beaucoup de basses fréquences. Des processeurs spécialisés, comme les dé-esseurs, fonctionnent sur ce principe: un dé-esseur sert à atténuer la sibilance des signaux audio. Ce que l'on appelle sibilance est un phénomène de saturation des hautes fréquences rencontré le plus souvent sur les enregistrements de voix, lors de la prononciation (voix parlée, chant) de consonnes sifflantes. Un de-esser est réalisé en utilisant un compresseur dont le signal de sidechain est fortement filtré autour des fréquences correspondant au phénomène de sibilance (4000-15000 Hz).On peut également, plus radicalement, se servir d'un signal complètement différent pour contrôler la compression. Le « ducking », par exemple, très souvent utilisé lors de l'utilisation de voix-off, repose sur ce principe: la voix sert de détecteur pour le compresseur qui agit sur le fond sonore, permettant d'atténuer celui-ci lorsque la voix doit se faire entendre.

3.2. Compression multibande:

La compression multibande consiste à diviser le signal entrant en un certain nombre de bandes de fréquences et à appliquer un compresseur indépendant par bande de fréquence. On appelle également parfois cette technique « égalisation dynamique ».

9

Page 10: Traitements de DynamiqueCicmHd3d

3.3. Compression parallèle:

La compression parallèle consiste à mélanger le signal compressé avec le signal d'origine. Il est ainsi possible d'appliquer des traitements de compression radicaux, mais de doser l'action du compresseur à l'aide d'un réglage « dry/wet » (son original/son traité).La mise en œuvre de la compression parallèle dans un contexte logiciel peut s'avérer délicate et nécessite que le signal original et le signal compressés soient rigoureusement synchronisés, à l'échantillon près. Il convient donc de vérifier les caractéristiques de compensation de latence des logiciels utilisés.

3.4. Compression M/S

Le signal détecteur des compresseurs stéréo est réalisé en sommant les canaux gauche et droite du signal entrant. Chaque canal (gauche et droite, ou L et R) est alors modifié par le même signal de contrôle d'amplitude. Il est également possible d'effectuer un matriçage des canaux gauche et droite afin d'effectuer la réduction de gain sur les canaux Mid et Side correspondant au signal stéréo:Mid = L+R et Side = L-R avant de dématricer le résultat pour recomposer les canaux L et R. Cette technique offre une plus grande stabilité de l'image stéréo.

4. Autres traitements de dynamique:

Il existe de nombreux traitements de dynamique en dehors de la compression; nous détaillons les principaux ici:

4.1. Limiteur:

Il s'agit du cas limite d'un compresseur dont le taux de compression est très élevé (supérieur à 10/1 , voire infini dans le cas de ce qui est appelé un « brickwall limiter »). Ce type de processeur a pour but de gérer les pics d'un signal audio (c'est pourquoi on l'appelle aussi souvent « peak limiter »). Un limiteur a en général des temps d'attaque et de relâchement très rapides. Cependant, lorsqu'un limiteur vise à agir sur une portion plus importante du signal (pour permettre un accroissement global du volume sonore), le temps de relâchement peut être augmenté pour minimiser les artefacts audibles.

Fonction de transfert d'un limiteur

10

Page 11: Traitements de DynamiqueCicmHd3d

4.2. Expandeur:

Un expandeur fonctionne à l'inverse d'un compresseur: l'expandeur va augmenter les écarts de dynamique en modifiant les signaux sous un certain seuil. Les signaux d'intensités plus faible que le seuil subiront une réduction de gain.

Fonction de transfert d'un expandeur

4.3. Gate:

Un processeur de type « gate » est le cas limite d'un expandeur avec un taux d'expansion infini: le signal en dessous du seuil est réduit à 0. Utile pour supprimer les bruits de fond indésirables, il est parfois appelé noise gate.

Fonction de transfert d'une gate

4.4. Dé-compresseur:

Plus rarement utilisé, un dé-compresseur va accroître la dynamique d'un signal au dessus d'un certain seuil. Ce type de traitement est en général utilisé pour compenser l'effet d'un compresseur lorsqu'on n'a pas accès au signal original avant compression.

Fonction de transfert d'un dé-compresseur

11

Page 12: Traitements de DynamiqueCicmHd3d

4.5. Dé-expandeur:

Un dé-expandeur va réduire la dynamique d'un signal en dessous d'un certain seuil. Il est en général utilisé pour compenser l'effet d'un expandeur.

Fonction de transfert d'un dé-expandeur

12