Page affichée à 13:16:23
samedi 21 décembre 2024

Ce site n'utilise pas de cookie
logo7 Dôme acoustique Compteur pour tout le site : 17 185 002
Nombre actuel de lecteurs : 390

Les menus pour smartphone.
Faire
un don
par
PayPal
Le site de Dominique, un amateur passionné

 

1-2-2-7 : Filtrage et égalisation avec un PC

Mise à jour : 8 décembre 2024, Antidote 12.

 

Lire aussi :

 

Vocabulaire :

L'utilisation hi-fi du matériel appelé "égaliseur" est l'adaptation des enceintes à la pièce d'écoute, par la correction d'un certain nombre de défauts dans la courbe de réponse.

Quel que soit le terme utilisé, le but reste d'adapter les enceintes à la pièce d'écoute.
Sachez que plus le terme employé est recherché, plus le prix est élevé, ce n'est pas le matériel qui est cher, c'est le vocabulaire.
Avec la solution PC, vous aurez le résultat recherché, sans avoir à y mettre le prix, à condition de savoir le faire.

 

Un exemple, une petite deux voies en monophonie :

Cette enceinte est utilisée via un PC, JRiver et la convolution dans le PC, une carte son stéréo avec un canal sur le grave et un canal sur l'aigu.
Il faut faire la mise en monophonie des canaux D et G parce que les sources musicales sont en stéréophonie, le filtrage et la correction de la réponse du grave, le filtrage et la correction de l'aigu.
Filtrage et correction utilisent un fichier .wav généré avec rePhase.
Il y a un fichier de configuration .cfg qui fait la mise en monophonie, qui contient la valeur du délai à utiliser sur les aigus, et qui contient les chemins des deux fichiers de filtrage et correction.

3 fichiers pour une enceinte, ce n'est pas la mer à boire, ce n'est pas compliqué !

 

Le fichier de configuration :

Le nom du fichier de configuration se termine par 2.0_48.cfg, avec un espace devant le 2.
Vous ne devez pas changer cette fin du nom de fichier, c'est ce qui permet de dire à JRiver que l'on est en stéréo (2.0) à 48000 Hz (48).
JRiver sait choisir tout seul le bon fichier de configuration, en fonction du format du fichier qu'on lui demande de lire, grâce à cette fin de nom codée.

le fichier de configuration .cfg    
D'autres liens et exemples.    
C'est un fichier pour un format numérique à 48000 Hz, c'est la première valeur de la première ligne.

L'entrée est sur 2 canaux, la sortie aussi, ce sont les deux 2 qui suivent le 48000.

Le délai sur le grave est 0 ms, le délai sur l'aigu est 0.9801 ms dans l'exemple indiqué.
Voir ci-dessous "la spécificité du délai".

J'ai créé un répertoire fichiers_correction sous C:/
Vous pouvez mettre le répertoire avec le nom où vous voulez, à condition d'indiquer le nom et le chemin.
Ce répertoire contient les fichiers de correction, mais aussi le fichier de configuration qui doit bien être quelque part.

Un fichier de correction s'appelle 01-grave-48000.wav pour le canal 0 c'est-à-dire le canal gauche de l'ampli.
L'autre fichier de correction s'appelle 01-aigu-48000.wav pour le canal 1 c'est-à-dire le canal droit de l'ampli.

La ligne 0.5 1.5 fait la mise en monophonie.
Il y a les canaux 0 et 1 avant le point.
Il y a l'atténuation .5, en dB c'est 20*LOG(.5) = -6.0 dB.
Si vous ajoutez, en tension, deux fois -6.0 dB, vous avez 0.0 dB.

 

La spécificité du délai :

Cette partie a été retouchée sur les bons conseils de Jimbee, internaute qui intervient sur plusieurs forums. Qu'il soit ici remercié.

Le délai ne peut prendre qu'un nombre fini de valeurs, sans avoir accès aux valeurs intermédiaires.
Mon exemple utilise une fréquence d'échantillonnage de 48000 Hz, c'est à dire un pas de réglage de 1 / 48000 * 1000 = 0.020833 ms.
Avec 47 pas, nous pouvons avoir un délai de 0.9792 ms.
Avec 48 pas, nous pouvons avoir 1.0000 ms.
En millimètres, un pas de réglage c'est 343711 * 0.020833 / 1000 = 7.16 mm, une valeur inférieure n'est pas accessible.
Mon délai de 0.9801 ms sera, en pratique, transformée par la valeur immédiatement inférieure, 0.9792 ms.

Si j'ai indiqué un exemple à 48000 Hz, j'ai fait la mise au point à 96000 Hz avec un upsampling x2 dans JRiver.
Le pas de réglage est de 1 / 96000 * 1000 = 0.01042 ms, ou encore 3.58 mm.
Avec 96 pas, nous pouvons avoir un délai de 1.0003 ms, j'avais trouvé à l'écoute 1.0019 ms avant de connaître la notion du nombre de valeurs finies. Qu'ai-je entendu ?
Le délai pratique qui a été utilisé, c'est la valeurs immédiatement inférieure à 1.0019 ms, c'est à dire 1.0003 ms.

Idéalement, il faudrait faire un upsampling x4 dans JRiver, celui qui est le meilleur à l'écoute, pour une fréquence de 176400 Hz à partir d'un CD à 44100 Hz.
Le pas de réglage sera de 0.005669 ms, ou encore 1.95 mm.

 

Les fichiers de correction et filtrage :

Les fichiers sont générés par rePhase, avec les valeurs de filtrage et de correction que vous aurez indiquées.
Il faut un fichier de correction différent par format numérique, ainsi qu'un fichier de configuration différent par format numérique. Dans mes exemples, je ne parle que d'un seul format numérique, 48000 Hz.

Le filtre utilisé dans cet exemple est un filtre Quazi Optimal à 18 dB/octave, avec un raccord à -5 dB, une coupure à 220 Hz, et un délai théorique de 1.0000 ms, même s'il est à 0.9801 ms dans l'image ci-dessus.
Le délai réel est parfois un peu différent pour tenir compte du décalage mécanique des centres acoustique des haut-parleurs à la réalisation de l'enceinte.
Utilisez l'outil de calcul pour avoir les valeurs pratiques à utiliser.

 

L'aigu :

L'aigu est filtré à 252 Hz en Butterworth à 18 dB/octave.
J'ai ajouté un 2e filtre à 17500 en Butterworth à 12 dB/octave, pour limiter l'agressivité des extrêmes aigus. Ce filtre est facultatif, écoutez avec et sans.
Les corrections linéarisent la réponse jusque 70 Hz, pour que la pente de coupure du filtre à 252 Hz suive, le mieux possible, la courbe cible du filtre théorique jusque -26 dB environ.
Les EQ pour la courbe cible se trouvent Bank 1, mais j'aurais pu demander à REW de tout calculer en une fois, il sait le faire. Séparer les choses facilite les réglages.

Filtre aigu à 252 Hz en passe-haut et à 17500 Hz en passe-bas
 
Les EQ de la voie aigu, calculées par REW
 
Les EQ de la courbe cible, calculées dans rePhase

 

Le grave :

Le grave est filtré à 192 Hz en Butterworth à 18 dB/octave.
J'ai ajouté un 2e filtre à 62.5 en Butterworth à 18 dB/octave, pour terminer la transformée de Linkwitz avec une coupure électrique. L'écoute préfère un filtre à 18 dB qu'un filtre à 12 dB.
Les corrections linéarisent la réponse jusque 10 Hz, pour que la pente de coupure du filtre à 62.5 Hz suive, le mieux possible, la courbe cible du filtre théorique jusque -26 dB environ.
C'est une autre façon de faire la transformée de Linkwitz, avec REW et rePhase.

Filtre grave à 62.5 Hz en passe-haut et à 192 Hz en passe-bas
 
Les EQ de la voie grave, calculées par REW

 

Le répertoire :

Il y a dans ce répertoire :

Contenu du répertoire C:/fichiers_correction

 


 

Une usine à gaz !!!

Garder la partie ci-dessous, ou tout effacer ? Je n'ai pas encore tranché.
Mon petit exemple ci-dessus fonctionne très bien, et est tout de même plus simple.

C'est l'impression que j'ai eue en relisant les explications ci-dessous de Jean-Pierre, Dimitri et Jean.
Qui va oser se lancer dans un filtrage actif avec ces solutions ?
Personne...

 

Une interface de sortie 8 canaux avec bouton de volume :

TOPPING DM7 DAC symétrique ES9038Pro 8 Canaux Jack 6.35 mm TRS 32 bit 192 kHz DSD128.
Existe aussi en noir.
Le plus gros inconvénient, pas d'autre entrée que celle USB sur le PC qui fait le filtrage.

Le banc d'essai sur Audio Science Review.

 

Pour haut-parleur grave, médium et tweeter :

Je remercie Jean-Pierre pour la recherche de solutions, les essais, et la rédaction de ce chapitre qui, sans lui, n'existerait pas.

La source restant les fichiers FLAC lus par mon NETBOOK, j'ai voulu conserver FOOBAR avec le pilote ASIO.
J'ai fait l'acquisition d'une carte son externe que j'ai du prendre en USB (mon NETBOOK et sa connectique obligent), ma petite interface de départ, excellente au demeurant (celle décrite par Dominique) n'offrant qu'une voie d'entrée/sortie.
Compte tenu des impératifs de connectique, de qualité et du nombre de voies, mon choix s'est porté sur une ESI 1808, trop riche de possibilités pour mes besoins actuels, mais correspondant à mon cahier des charges.

Ma petite interface de départ :

image891.jpg

 

ESI 1808 :

image977.jpg

 

Cette carte attaque donc les deux amplis de puissance.
Elle leur distribue le signal traité par le mini PC via FOOBAR et les greffons de filtrage et égalisation.

Pour le filtrage j'utilise "foo-dsp_xover", voir le PDF.
C'est un outil extrêmement intéressant puisqu'il permet de gérer de très nombreux paramètres par voie (jusqu'à quatre voies), les fréquences de coupure, la pente d'atténuation, la forme du filtre, le gain, la phase, le délai, voir les réglages_PC_HiFi_JpP.pdf.

Pour l'égalisation, j'ai essayé beaucoup de choses et j'ai finalement retenu"LinearPhaseGraphicEQ version2.1.5".
Il s'agit d'un plugin VST, qui nécessite un support pour être vu par FOOBAR.
Dans mon cas ce support est "George Yohng's VSTwrap".
Grand nombre de points d'entrée, grande amplitude possible, sauvegarde des courbes, rappel auto de la dernière configuration au démarrage de FOOBAR : Je n'ai pas trouvé mieux.

Mes réglages (ne vous fiez pas aux captures d'écran pour les valeurs) ont été obtenus uniquement à l'oreille, ce n'est pas totalement optimisé.
J'ai trouvé de fabuleux outils pour faire de l'analyse et de la correction haut-parleur/salle en temps réel, mais je déplore mon manque de compétence pour les utiliser.
Si vous parvenez à démêler cet écheveau, je suis preneur (il s'agit des softs de Ohl, "Align, Cross-Volver, LS-Filter" http://www.ohl.to/about-audio/ ).

Le réglage de volume se fait depuis le curseur de FOOBAR, ce qui n'est pas l'idéal, l'atténuation logicielle se faisant au détriment de la profondeur d'analyse du signal, 1 bit en moins par tranche de 6 dB.
J'ai en projet d'utiliser un contacteur rotatif et des résistances en cascade, au moins pour une partie de l'atténuation.

 

Ce que ne fait pas cette solution :

Si vous n'avez qu'une seule source de musique, votre PC, la solution ci-dessus est parfaite.
Si maintenant vous souhaitez avoir une 2e source, telle la télé (pour avoir un son de qualité via votre chaîne), le signal de la télé doit rentrer en numérique dans le PC pour profiter de l'égaliseur, du filtrage, et de la multiamplification de la chaîne.
Comment fait-on cette liaison ?
Jean-Pierre aimerait bien raccorder son tuner analogique...

Foobar sait gérer un flux numérique entrant, il le fait pour la lecture directe d'un CD - File/Open Audio cd - à partir d'un lecteur CD de PC.
Mes enfants m'ont offert un tout petit lecteur/graveur CD/DVD externe, auto alimenté par le port USB du NETBOOK, cela fonctionne très bien.

Je me pose d'ailleurs la question, et à toi aussi Dominique, si dans ce cas de lecture directe "informatique" des algorithmes de correction interviennent ou bien si on se trouve dans un cas de lecture bit à bit comme pour une transcription via Exact Audio Copy par exemple. 

On devrait pouvoir trouver un plugin qui permette de lire un ou plusieurs autres flux, cette fois en provenance de la carte son.

Les softs "Console", "Jack" et "Ozone", qui sont payants, semblent offrir ces possibilités de rewiring. À déterminer...

 

Une configuration réelle par Jean Ibarz :

Problématique : Router le flux numérique des logiciels vers une entrée ASIO pour le VSTHost.

Pour effectuer le filtrage sur PC, il faut pouvoir intercepter le flux numérique avant sa conversion analogique.
Le problème majeur ici est que Windows ne propose pas, contrairement a Linux, de possibilité native pour intercepter le signal simplement.
Mais ce problème n'est pas le seul...
En effet, la plupart des hôtes VST (logiciel qui permettra d'effectuer le DSP : Digital Signal Processing = Traitement numérique du signal) ont besoin d'utiliser un pilote ASIO en entrée/sortie.
Vous me direz en quoi est-ce un problème ?
Pour les 2 raisons qui suivent :

J'ai trouvé plusieurs méthodes pour contourner ce problème, comme utiliser une sortie de carte son et renvoyer le flux en entrée de la même carte son (pas terrible, car on effectue alors une conversion DAC ==> ADC supplémentaire avec les désagréments qui en découlent : Augmentation de latence, distorsion du signal, monopolisation de 2 canaux de sorties/entrée de la carte son, et quand on sait que la majorité des cartes n'ont que 2 canaux en entrée, ça veut dire qu'il n'en reste plus pour permettre de faire les mesures !).

Je vais donc vous proposer une méthode plus correcte, en termes de qualité, de stabilité, et de simplicité : c'est actuellement la solution que j'utilise sur mon système.
L'inconvénient de cette méthode (on ne peut pas avoir que des avantages) est qu'elle nécessite une carte son spécifique : La M-AUDIO DELTA1010LT (ou toute autre carte son qui permet de faire ce que je vais vous expliquer par la suite).

 

Une solution avec la fonction monitoring/mixer de la carte M-AUDIO DELTA1010LT

Pour intercepter le flux numérique audio, nous allons avoir recours à une astuce : copier le flux numérique et le renvoyer en entrée de carte son.
En effet, la fonction "monitoring" ("mixer") de la M-AUDIO DELTA1010LT permet de copier, au niveau du pilote, un flux qui la traverse (en entrée ou en sortie) et le renvoyer sur l'entrée audio "monitoring", utilisable en ASIO dans un VST HOST.

Pour cela nous allons donc configurer Windows pour utiliser la sortie SPDIF de la carte son (on aurait pu utiliser une autre sortie, mais je conserve les sorties analogiques libres, car elles sont utilisées sur mon système et branchées aux amplis de puissances).
Si vous n'utilisez pas toutes les sorties analogiques et souhaitez bénéficier de la sortie S/PDIF pour attaquer un ampli de puissance, vous pouvez tout aussi bien utiliser une sortie analogique libre (par exemple 7-8) au lieu de la sortie SPDIF.

On va donc dans les périphériques audio de lecture et on configure la sortie SPDIF comme périphérique de sortie par défaut, en désactivant tous les autres périphériques analogiques pour être certain qu'Asio4all puisse prendre le contrôle exclusif des sorties nécessaires.

Ensuite, dans le panneau de configuration de la M-AUDIO DELTA1010LT, on va dans l'onglet "mixer", on fait défiler les canaux à l'aide de la barre de défilement horizontal vers la droite, et on clique sur "solo" sur le canal "spdif rtn".
De cette façon, tous les canaux sont mutés et uniquement le canal de sortie SPDIF est renvoyé vers le mixer.

On vérifie bien entendu que le niveau du canal "spdif rtn" est au max sur le mixer (pour envoyer le flux spdif rtn dans le mixer à leur niveau maximal donc sans atténuation), idem pour le niveau de sortie du canal mixer.

Configuration MIXER (1)
 
Configuration MIXER (2)

 

À présent vous pouvez lancer votre VST Host, configurer le périphérique audio sur "Asio4All".
Il faudra utiliser les options de réglages avancés de Asio4all pour n'utiliser en ASIO que les sorties de carte son nécessaires et donc pas la sortie que vous utilisez sous Windows pour la retransmission du flux vers l'entrée monitoring.
On choisira donc, indépendamment, les sorties analog 1-2, analog 3-4, etc., et pas le canal analog multi, car il comprend le SPDIF, ce qui aurait pour conséquence de bloquer le périphérique Windows !).
En capture on sélectionne le canal "delta 1010lt monitor), qui sera donc la copie exacte du signal numérique récupéré de la sortie SPDIF, donc le flux de sortie de tous les logiciels fonctionnant sur votre pc avec le même niveau de sortie que celui de Windows (le réglage du volume s'effectuera donc simplement par la barre de volume de Windows, ce qui simplifie quand même drôlement les choses !).

Configuration ASIO4ALL)

 

Si tout ce passe bien, vous redémarrez votre pilote virtuel Asio4All en désactivant/réactivant le pilote, et les canaux sélectionnés (monitoring en entrée et les sorties que vous avez configurées) devraient s'activer avec succès.

Il ne vous reste plus qu'a réaliser le patch que vous souhaitez, en faisant transiter le flux récupéré sur l'entrée "monitoring" 1-2 par les divers plugins VST (ou autres) avant de ressortir vers les canaux souhaités, et vous pourrez vous "fabriquer" sur mesure votre filtre actif sur pc !

 

Logiciel hôtes de plugins Vst (VSTHosts) :

Il existe plusieurs hôtes de plugins Vst, certains gratuits, d'autres payants.
Les logiciels payants tels que Console et Usine intègrent une fonction de "patching", ce qui permet de router le flux audio entre chaque plugin comme bon vous semble. Un exemple concret avec Console :

Patching Console

 

Similitude sous Usine, avec la possibilité en plus offerte par ce logiciel d'utiliser des modules, tels que des opérations mathématiques simples, des vus mètres, des boutons : sliders, faders, boutons rotatifs, etc.) :

Patching Usine

 

Usine présente également l'avantage de présenter une interface "utilisateur" (front-end) plus conviviale que Console, bien que le logiciel soit plus cher et plus complexe à prendre en main.
L'avantage, c'est qu'une fois maîtrisé, vous pouvez obtenir ceci :

Interface utilisateur Usine

 

Avec une interface comme ceci, il est bien plus simple d'agir sur le système, on peut muter les voies individuellement par un simple clic sur le bouton "On", on peut ajuster l'amplitude de chaque voie individuellement, inverser la phase, contrôler le niveau de sortie de chaque voie pour contrôler qu'on ne sature en aucun cas, c'est royal !!!

Par ailleurs, Console a une gestion de priorité de calculs moins poussée que Usine, ce qui engendre de légères désynchronisations mesurables (avec un peu d'astuce) mais dont on ne se rend pas forcément compte de suite.
Sous Usine, je n'ai pas ce problème.

Un dernier point à faire attention concerne Asio4all :
Une option dans les options avancées dénommées "Hardware Buffer" avec la mention "(Does not always work)", je traduis : "Buffer matériel ne fonctionne pas toujours".
Chez moi, et au moins avec cette carte son, cette fonction ne fonctionne pas et entraîne des latences aléatoires sur les canaux de sorties.
Ainsi donc, vous aurez une image sonore instable, car le centre se décalera, un coup à gauche, un coup à droite, en raison d'un délai gauche / droite qui va varier plus ou moins aléatoirement.
De plus les buffers underflows sont plus fréquents, même avec un buffer maximum j'avais fréquemment des interruptions sonores lorsque je lançais un processus un peu trop gourmand...
En laissant la case "Hardware Buffer" décochée, le problème est bien moins fréquent : Il ne se produit presque jamais, en tout cas si peu que je n'y fais pas vraiment cas !
Je tenais à le signaler, car j'ai passé par moins de 5 jours à déceler l'origine du problème, je vous évite donc ce travail.

Jean Ibarz.

 

Un grand merci pour votre visite. --- Retour direct en haut de la page ---

Logo Dôme acoustique

Un grand-père facétieux disait à ses petits enfants que le grand truc blanc tout en haut du Puy-de-Dôme était un thermomètre géant.
Quand il deviendra tout rouge il faudra vite se sauver, parce que le volcan va se réveiller !!!

Malgré les apparences, ce site internet n'est que celui d'un amateur passionné auvergnat.
"Amateur" doit être compris dans le sens "non professionnel", dans l'aspect financier de l'approche : Je ne vis pas des revenus de cette passion.
"Amateur" doit être compris dans le sens ou rien ne m'oblige à vous répondre, si vous êtes désagréable. C'est rare, mais le cas arrive de temps en temps.

Il y a un savoir-vivre élémentaire qui consiste à demander l'autorisation avant de reprendre tout ou partie de ce qui est écrit dans ce chapitre.
Je vous donnerai l'accord, demandez-le simplement pour être en règle. Sont exclues les demandes extravagantes, les demandes de copie de ma base de données haut-parleurs.


Contrôle de validation W3C du code HTML 5 de la page, copiez l'adresse de la page avant de cliquer sur le lien.
Contrôle de validation W3C des CSS de la page, copiez l'adresse de la page avant de cliquer sur le lien.
Test "responsive" en simulant des écrans de smartphone de résolution différentes.
Ce sont trois outils de contrôle pour le webmaster du site Dôme Acoustique, c'est inutile pour les utilisateurs.
Avoir le lien dans chaque page est plus simple pour les retrouver.