Modérateurs: Modération Forum Haute-Fidélité, Modération Forum Univers Casques, Modération Forum Installations, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: lemanss et 20 invités

Toutes les solutions de traitement du signal : différentes méthodes, matériel et logiciel, mise en œuvre...

Amplitude et phase, comment ça marche ?

Message » 12 Nov 2017 19:12

Les appareils que l'on utilise pour faire de la correction active peuvent corriger la courbe de réponse, mais aussi, pour certains, la courbe de phase.

Est-ce utile, est-ce audible ?

J'ai fait quelques expériences dont je partage ici le résultat.

Ma première expérience a été de vouloir écouter ce que faisait mon système, enceintes + pièce, à la courbe de réponse et à la phase du signal. J'ai donc décidé de prendre un extrait musical, et d'utiliser les logiciels à ma disposition pour y appliquer la courbe de réponse uniquement, puis la courbe de phase uniquement, de mon système, et écouter ce que ça donne sans réflexions sur les murs et sans réverbération.

Pour cela, je pars d'une mesure faite au point d'écoute, des mes enceintes Neumann KH-120, dans mon salon qui est dépourvu du moindre traitement acoustique. Je coupe donc mon MiniDSP, et comme je ne sais pas faire de mesure de phase en plusieurs points, je prends une mesure en un seul point. Pour simplifier, la mesure est faite avec les deux enceintes en même temps.

Voici la courbe de réponse réelle au point d'écoute :

Image

Pas joli à voir... Normal : aucun lissage n'est appliqué. Je tiens à commencer par là afin que l'on sache bien à quel point la simulation est une simplification de la réalité.
Pour la phase, cela donne ceci :

Image

Elle fait un million de fois le tour du cadran... comment faire ? Il y a un bouton "Generate Minimum Phase" dans REW, cliquons dessus :

Image

Ah, voilà une courbe plus lisible. Mais je ne sais pas trop ce qu'elle représente. Je pense toutefois que pour une simple simulation, c'est un point de départ réaliste.

On va beaucoup simplifier tout ça en appliquant un lissage variable, pour ne garder que l'aspect général des courbes mesurées, sans les tout petits détails.

Image

Voilà. Et maintenant, ce que je vais faire, c'est utiliser le logiciel Rephase pour me générer deux corrections qui ressemblent à ça. Ensuite, on les écoutera (oui, oui, vous allez les écouter aussi... merci Youtube !)

Pour la correction de l'amplitude, REW va nous mâcher le travail. Je lui demande de faire une correction de la courbe bleue sur toute la bande audible. Je lui donne le maximum d'amplitude pour ses corrections. Courbe cible : plate.

Image

Je corrige un peu ses excès de zéle sur les deux minuscules creux autour de 100 Hz. Je ne suis pas aussi doué que lui, la courbe décolle un peu de la cible. J'en profite pour ajouter de la correction dans les hautes fréquences. Je ne sais pas pourquoi, il ne corrige jamais les hautes fréquences en auto.

Image

Et maintenant, astuce, je recopie chacun de ces filtres dans Rephase, en inversant les corrections, ce qui va me permettre de générer une copie de cette courbe de réponse au lieu d'une correction, et à phase linéaire, c'est-à-dire sans aucunement déphaser le signal.

Image

Il m'a fallu quelques tâtonnements pour trouver qu'il fallait cocher Proportional Q pour reproduire les filtres de REW dans Rephase. Les deux logiciels n'ont par défaut pas la même définition du Q.
Augmenter le nombre de taps me permet d'atteindre une bonne précision. Il n'y a plus qu'à sélectionner un format de sortie avec le bon taux d'échantillonnage (mon extrait musical est à 44100 Hz), et un nombre de bits compréhensible par tout logiciel normalement constitué.

J'importe ensuite l'impulse générée par Rephase dans REW pour vérifier que tout s'est bien passé.

Image

Voilà donc ce que l'on va entendre lorsqu'on va convoluer le fichier généré avec notre extrait musical. Dans les grandes lignes, cela ressemble pas mal à la courbe de réponse de mon système (sans correction, hein, faut pas exagérer... en vrai, j'ai une correction active pour aplatir tout ça).

On fait la même opération pour la phase. Là, REW ne peut pas m'aider. Je dessine donc une courbe qui va vaguement dans le même sens que le courbe de phase de mon système (en fait, la courbe grise "Minimal phase" qu'on a faite plus haut), avec les curseurs de Rephase, en manipulant les fréquences et les Q.

Image

Je vérifie dans REW que le fichier généré par Rephase fonctionne bien :

Image

Parfait, cela agit bien sur la phase, sans agir sur l'amplitude.
Bon, c'est beaucoup plus approximatif que pour l'amplitude. Mais pourquoi ne pas jeter une oreille dessus ? Cela ne représente peut-être pas précisément la phase de mon système, mais c'est du même ordre de grandeur.

Allons-y. pour appliquer cela à un fichier audio, on utilise le plugin de convolution de Foobar2000.
Clic droit, convert.

Image

Process, DSP, convolver.

Image

Pour l'amplitude, attention de ne pas saturer le signal. On baisse le niveau :

Image

Et voilà le résultat en vidéo. Vous pouvez lancer la lecture et l'écouter.



L'audio est compressé en 192 kbps par mon logiciel vidéo, puis probablement transcodé à nouveau en AAC 192 kbps par Youtube. Malgré tout, on entend très bien le résultat.

La différence provoquée par la correction d'amplitude est énorme, naturellement, mais ce qui est très intéressant, c'est que la différence provoquée par la correction de phase est également tout-à-fait audible !

On a coutume de dire que la phase ne s'entend pas, sauf au casque sur des signaux artificiels. Pourtant, sans casque, entre le fichier d'origine et le fichier déphasé, je réussis l'ABX assez facilement, avec un score de 16/16.

La raison porte le nom de pré-echo. Le son de grosse caisse commence en avance sur le fichier déphasé.

C'est tout pour le moment :wink:
Prochain épisode : comparaison entre phase linéaire et phase minimale.
Dernière édition par Pio2001 le 13 Nov 2017 0:09, édité 1 fois.
Pio2001
Contributeur HCFR 2019
 
Messages: 8938
Inscription Forum: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline

Message » 13 Nov 2017 1:32

Réservé
Pio2001
Contributeur HCFR 2019
 
Messages: 8938
Inscription Forum: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline

Message » 13 Nov 2017 11:11

La correction en amplitude montre bien, dans la vidéo, ce qu'une salle fait à la courbe de réponse. Pour ceux qui doutent encore. ;)

Sinon, l'histoire du pré-écho : calcul de gros amateur qui est loin d'avoir tout compris.
40 hz => longueur d'onde = 340/40 m = 8.5 m
Si 360° correspondent à 8.5m alors 120° correspondent à 8.5x120/360 = 2.8m
Et donc 8 ms.
J'ai l'impression que le pré-écho qu'on entend est plus important que ça, effectivement il y a quelque chose qui m'échappe.

Par contre, que veut dire la phase d'une pièce ? Pas grand chose à mon avis, on ne sait pas bien ce que font les softs : il prennent la phase à l'amplitude max ? Il moyennent ?
De toutes façons aucune des deux n'est satisfaisante, ça n'a limite pas de sens.
J'ignore aussi ce que fait "Generate Minimum Phase" de REW.

Bref, pour la phase je crois qu'on est condamné à une mesure en champ proche + fenêtrage pour corriger le déphasage de l'enceinte et pas plus.

En tous cas, tu as démontré l'audibilité du déphasage. :bravo:
Mes propres tests me faisaient encore douter.
JAVA Alive
 
Messages: 2888
Inscription Forum: 12 Jan 2010 22:53
Localisation: Mayenne
  • offline

Message » 13 Nov 2017 13:47

JAVA Alive a écrit:La correction en amplitude montre bien, dans la vidéo, ce qu'une salle fait à la courbe de réponse. Pour ceux qui doutent encore. ;)


Et encore... la salle, elle rajoute des centaines de pics dans les aigus, que je ne simule pas. Sans compter toute la réverbération, qui est absente ici.
C'est sûr qu'un câble d'enceinte, à côté... ou même un ampli...

JAVA Alive a écrit: Sinon, l'histoire du pré-écho : calcul de gros amateur qui est loin d'avoir tout compris.
40 hz => longueur d'onde = 340/40 m = 8.5 m
Si 360° correspondent à 8.5m alors 120° correspondent à 8.5x120/360 = 2.8m
Et donc 8 ms.
J'ai l'impression que le pré-écho qu'on entend est plus important que ça, effectivement il y a quelque chose qui m'échappe.


En effet, dans la partie à venir, je montrerai que le retard pris par le grave, mesuré au point le plus fort, est bien plus long que le déphasage maximum indiqué par la courbe de phase.
Imagine une impulsion pure. Si tu déphase un peu une fréquence, tu vas obtenir des oscillations de part et d'autre du pic d'impulsion. Quelle est leur durée ? Je crois bien que mathématiquement, elles sont infinies.
Ca fait partie des trucs que je dois tester : le pré et le post ringing sont ils tout de même infinis si le délai introduit par la courbe de phase est strictement borné ?

JAVA Alive a écrit: Bref, pour la phase je crois qu'on est condamné à une mesure en champ proche + fenêtrage pour corriger le déphasage de l'enceinte et pas plus.

En tous cas, tu as démontré l'audibilité du déphasage. :bravo:
Mes propres tests me faisaient encore douter.


Démontré ? Voire... Le test suivant sera de faire la simulation d'amplitude en phase minimale (donc avec déphasage en même temps). Et là, l'effet risque d'être moins audible, parce qu'il n'y aura plus de pré-echo du tout... Sauf que le grave paraît retardé auditivement (y compris dans ma pièce !). Je n'ai pas encore fait d'ABX.
Et j'ai trouvé d'autres trucs intéressants : faire une correction de phase opposée à la précédente annule tout le pré et le post echo.
Et je vais aussi simuler une correction approximative d'amplitude en phase minimale sur le fichier lui-même distordu en phase minimale. Je parie que cela va réavancer le grave qui a été retardé.

Ces observations seront très utiles pour savoir ce qu'il faut faire pour la room correction. Je parie que la correction à phase minimale est meilleure, et que c'est audible.

A suivre...
Pio2001
Contributeur HCFR 2019
 
Messages: 8938
Inscription Forum: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline

Message » 13 Nov 2017 18:33

Hello Pio
pour une réponse en amplitude donnée la courbe de "phase minimale" est celle qui minimise le retard de groupe à toutes les fréquences.
Par extension un système est dit "à phase minimale" quand sa réponse en phase se confond avec la courbe de phase minimale.
Mais ton système audio n'est pas à phase minimale, principalement pour 2 raisons:
- un ensemble de HPs filtrés n'est pas à phase minimale
- les réflexions dans une pièce ne sont pas à phase minimale
(Mais attention dans les deux cas ce n'est pas blanc/noir, un système peut être à phase minimale sur certaines plages de fréquences seulement).
En gros dès que tu sommes des signaux très déphasés (ou décalés temporellement) le résultat n'est plus à phase minimale.
REW représente la phase d'un système quelconque comme la somme d'une phase minimale et d'un "excès de phase" qui correspond à la partie du signal qui arrive "en retard".

Et bien sûr qu'une correction de phase peut être audible, tout dépend de la quantité ! :ko:
Denis31
Pro-Fabricant
Pro-Fabricant
 
Messages: 4527
Inscription Forum: 16 Sep 2005 9:50
Localisation: Toulouse
  • offline

Message » 13 Nov 2017 19:56

Super post, mais je ne vois pas les images :( . Suis-je le seul ?
Stefc13_2
 
Messages: 1460
Inscription Forum: 27 Jan 2014 11:51
  • offline

Message » 13 Nov 2017 20:14

Ah flûte...
Les images sont hébergées chez Free pages perso, et apparaissent sous le nom de domaine online.fr

Est-ce que tu vois celle-ci ? J'ai remplacé le nom de domaine par free.fr.

Image
Pio2001
Contributeur HCFR 2019
 
Messages: 8938
Inscription Forum: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline

Message » 13 Nov 2017 22:40

Toujours pas :(

il y a juste "Image" d'afficher.
Stefc13_2
 
Messages: 1460
Inscription Forum: 27 Jan 2014 11:51
  • offline

Message » 13 Nov 2017 23:03

Denis31 a écrit:pour une réponse en amplitude donnée la courbe de "phase minimale" est celle qui minimise le retard de groupe à toutes les fréquences.
Par extension un système est dit "à phase minimale" quand sa réponse en phase se confond avec la courbe de phase minimale.
Mais ton système audio n'est pas à phase minimale, principalement pour 2 raisons:
- un ensemble de HPs filtrés n'est pas à phase minimale
- les réflexions dans une pièce ne sont pas à phase minimale
(Mais attention dans les deux cas ce n'est pas blanc/noir, un système peut être à phase minimale sur certaines plages de fréquences seulement).
En gros dès que tu sommes des signaux très déphasés (ou décalés temporellement) le résultat n'est plus à phase minimale.
REW représente la phase d'un système quelconque comme la somme d'une phase minimale et d'un "excès de phase" qui correspond à la partie du signal qui arrive "en retard".


Salut Denis31,
Merci pour ces précisions !

Si je trace la phase mesurée (en vert), la phase minimale (en gris), et l'excess phase (en noir), je vois que les variations localisées représentent très fidèlement le comportement à phase minimale (comparer les courbes verte et grise entre 50 Hz et 200 Hz), avec par dessus une "excess phase" complètement monotone, mais qui descend parfois vite, parfois lentement.

Image

Ne sachant pas trop comment interpréter cela, et frustré par la chute difficile à interpréter en terme de délai, j'ai farfouillé un peu et je suis tombé sur l'onglet GD "Group Delay" :

Image

Et en lissage variable :

Image

Alors là, là, ça me donne carrément du grain à moudre !

Même code couleur : en vert la réalité. En gris la partie purement phase minimale (Min Group Delay), en noir l'excess phase (Excess Group Delay).
Il semble y avoir des artefacts de lissage : entre 1500 et 2500 Hz, la courbe brute montre un comportement à phase minimale pure (vu l'aspect des courbes grise et verte, c'est impossible que ce soit une coïncidence), tandis que sur la version lissée, il n'y a pas de phase minimale (la courbe grise est plate).
Qu'est-ce que ça veut dire ? A mon avis, que le logiciel lisse d'abord l'amplitude, puis calcule la phase minimale à partir de l'amplitude lissée, et que cela n'a aucun sens.
la partie de droite des courbes grise et noire lissées (en fait, la noire, c'est la verte moins la grise), après 220 Hz, est à ignorer. Seule la courbe verte a un sens (j'espère).
Pio2001
Contributeur HCFR 2019
 
Messages: 8938
Inscription Forum: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline

Message » 13 Nov 2017 23:18

Stefc13_2 a écrit:Toujours pas :(

il y a juste "Image" d'afficher.


Flûte,
Malheureusement, le forum ne permet pas d'héberger des images. Il faut donc que je les mette quelque part en ligne avant de pouvoir les intégrer dans mes messages.

Si tu utilises un proxy d'entreprise, cela s'explique par le fait qu'il bloque toutes les pages perso free.fr. Sinon, il y a peut-être un blocage momentané entre ton fournisseur Internet et Free. Ou alors dans tes paramètres internet, est-ce que tu aurais bloqué free.fr / online.fr ?

Ou alors tu as un bloqueur de pub du tonnerre avec toutes les options à fond, qui a simplement décidé de ne pas afficher les images provenant de sites tiers. Regarde si tu peux assouplir les options de navigation pour le site homecinema-fr.com.
Pio2001
Contributeur HCFR 2019
 
Messages: 8938
Inscription Forum: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline

Message » 13 Nov 2017 23:26

C'est tombé en marche :-) ! Merci pour tes efforts :bravo:
Stefc13_2
 
Messages: 1460
Inscription Forum: 27 Jan 2014 11:51
  • offline

Message » 14 Nov 2017 0:18

Si on zoome sur la partie droite de la courbe de group delay, on voit que les écarts entre la phase minimale (gris) et la mesure (vert) sont essentiellement des pics qui partent chacun dans une direction.

Image

Or, sur la courbe d'amplitude et de phase minimale en degrés, cela correspond toujours à un creux dans la courbe de réponse, avec une brusque variation de la phase théorique. La fréquence de 1407 Hz est indiquée par le curseur.

En vert, l'amplitude de la courbe de réponse, en gris, la phase minimale correspondante.

Image

Si on ajoute la phase mesurée en vert clair, cela donne :

Image

Doit-on en déduire que ce sont des erreurs de mesure ?
Pio2001
Contributeur HCFR 2019
 
Messages: 8938
Inscription Forum: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline

Message » 14 Nov 2017 23:16

Les précisions de Denis31 sont tout à fait pertinentes.

@Pio : pourquoi parler de pré-écho ? Une correction de phase mal calculée peut certainement décaler temporellement les signaux selon la fréquence mais pour un pré-écho audible, il me semble qu'il faut un peu exagérer la correction de phase.

Mais je pense que l'estimation de la correction telle qu'elle est faite ci-dessus n'est pas tout à fait valide.
Si le but est de comparer à l'écoute une correction à phase minimale de l'amplitude et une correction combinée d'amplitude et de phase, il me semble plus judicieux de :
- mesurer, corriger et écouter une seule enceinte (à la fois parce que les différences de timbres sont plus audibles en mono sur une enceinte et que la correction de phase risque d'influencer différemment chaque enceinte et donc de modifier l'image stéréo : dans ce genre de tests, il faut éviter de bouger simultanément plusieurs paramètres)
- faire des mesures moyennes en plusieurs points tant en amplitude qu'en phase (une correction basée sur une mesure en un point n'est pas valide) : REW permet facilement de faire une moyenne d'amplitude et peut-être aussi en phase (je crois). Puis corriger l'amplitude et la phase à partir de ces courbes moyennes et ne pas corriger la phase pas à partir de la phase minimale obtenue par l'amplitude.
En tout cas, le sujet est passionnant.
ohl
Pro-Divers
Pro-Divers
 
Messages: 2030
Inscription Forum: 13 Aoû 2004 16:17
  • offline

Message » 15 Nov 2017 2:08

Merci pour tes remarques, Ohl.
Pour le moment, je suis occupé à poursuivre mes simulations avec Rephase. C'est très intéressant. Je vais publier au fur et à mesure, tout en essayant d'être compréhensible pour un lecteur ayant quelques bases.
Il y aura trois chapitres de plus.
Pio2001
Contributeur HCFR 2019
 
Messages: 8938
Inscription Forum: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline

Message » 15 Nov 2017 3:13

Nous avons vu plus haut que la pièce d'écoute joue un grand rôle dans le son qui arrive à nos oreilles au point d'écoute.
Lorsque nous faisons de la correction active, nous pouvons agir sur deux choses : la courbe de réponse, avec n'importe quel égaliseur, et la courbe de phase, avec certains égaliseurs seulements, dits "à phase linéaire".

Que signifie "phase linéaire" ? Lorsque nous ouvrons le panneau Paragraphic EQ du logiciel Rephase, nous voyons qu'il nous propose deux types d'égalisation : Phase minimale, et Phase Linéaire.

Image

Comparons les résultats obtenus dans les deux cas. Pour cela, nous allons exporter l'impulse response et la charger dans le logiciel REW afin d'analyser le résultat.
Nous allons aussi regarder ce qui arrive au signal lui-même lorsqu'il est filtré ainsi. Nous partirons d'une impulsion instantanée.

Pour le filtrage à phase linéaire, cela donne ceci :

Image

La notion de phase linéaire se comprend aisément : la courbe de phase est plate. Le filtrage ne modifie pas la phase du signal.
L'impulsion est transformée en un signal symétrique. Le grave, le medium, et l'aigu sont étalés de part et d'autre de l'impulsion initiale. Cet effet porte de multiples noms : time smearing, pre-echo, post-echo, pre-ringing, post-ringing, effet Gibbs... J'utiliserai les termes pré et post-ringing.
Comme le signal est symétrique, en moyenne, le grave, le medium, et l'aigu restent synchronisés. C'est ce que signifie une courbe de phase plate.

Si on recommence à phase minimale, voilà ce qu'on obtient :

Image

Cette fois, la phase est affectée par le filtrage. La courbe n'est plus plate.
Par contre, l'impulsion n'est étalée que vers la droite. Il n'y a pas de pré-ringing. A noter que toutes choses égales par ailleurs, le post-ringing est beaucoup moins audible que le pré-ringing (c'est l'un des effets utlilisés dans la compression mp3).
La conséquence de ceci, c'est que grave, medium et aigu ne sont plus synchronisés. L'aigu est joué en premier, le médium ensuite, et le grave en dernier.

Pour résumer,

Filtrage à phase linéaire :
  • Toutes les fréquences restent synchronisées
  • Il y a du pré-ringing
  • Ce dernier introduit un délai : l'égaliseur ne fonctionne pas tout-à-fait en temps réel

Filtrage à phase minimale
  • Les fréquences graves sont en retard par rapport aux autres
  • Il n'y a aucun pré-ringing
  • L'égaliseur fonctionne en temps réel

Le retard des basses fréquences est-il vraiment important ? Regardons ce qui se passe avec notre fichier-test habituel. A l'aide de Foobar2000, je le filtre en phase linéaire et en phase minimale, avec la courbe d'égalisation donnée plus haut (grave à +21 dB et quelques autres filtres).
Comparons les résultats. On se cale sur les hautes fréquences, qui ne sont que très peu déphasées dans un cas comme dans l'autre. Agrandissons au maximum :

Image

Ensuite, reculons un peu le niveau de zoom, et sélectionnons les six plus grandes alternances du coup de grosse caisse qui suit, et mesurons leur position par rapport à notre point de repère.

Image

En haut, la version à phase linéaire. En bas, à phase minimale.
Le retard pris par le grave dans la version à phase minimale est de 74 millisecondes. Soit, musicalement, la durée d'une triple croche !
Notez le pré-ringing visible à gauche dans la version à phase linéaire.

Si on diminue le niveau de zoom, l'aspect général est le suivant. Les marqueurs suivent le rythme de la musique.

Image

Image

Est-ce que tout cela est audible ? Vous l'avez deviné, j'ai de nouveau fait une petite vidéo de démonstration.
J'ai en outre fait un ABX avec un score de 16/16 entre les deux versions.
On entend bien le pré-ringing précéder le coup de grosse caisse avec le filtre à phase linéaire, et on peut aussi entendre que le grave est en retard avec le filtre à phase minimale.



Le délai paraît énorme. Cela s'explique par l'amplitude extrême du filtre appliqué. Mais le plus curieux, c'est que si, au lieu de regarder le signal, on se base directement sur la courbe de phase...

Image

On a au maximum 62 degrés de retard à 50 Hz.
Soit 1/50 * 62 / 360 * 1000 = 3.4 millisecondes.

Je rappelle qu'il s'agit ici d'une simulation virtuelle, et non d'une mesure de ma pièce. La courbe de phase indiquée ci-dessus est exactement celle qui est appiquée au fichier audio !

Comment expliquer cela ? C'est simple : la durée du pré et du post-ringing n'a rien à voir avec la valeur maximale de la phase.
Ils ne sont pas limités à 3 ms, ni même 74 ms : mathématiquement, ils peuvent être infinis. Et ce sont eux qui sont responsables du glissement temporel que l'on entend.

Cela nous apprend une chose très importante : la courbe de phase ne nous indique pas le décalage temporel subi par le signal. Ce décalage, c'est le Group Delay qui va nous l'indiquer.
Et ça, ce sera l'objet du prochain chapitre.
Dernière édition par Pio2001 le 15 Nov 2017 14:25, édité 3 fois.
Pio2001
Contributeur HCFR 2019
 
Messages: 8938
Inscription Forum: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline


Retourner vers Correction active et logiciels de mesure