Correction/filtrage semi-automatisé (DStudio v5)
- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
Quelques améliorations pour la future version de DStudio.
-ASIO : commence à fonctionner.
Le problème provient de l'arrêt de la lecture du fichier, à ce moment on indique un Stop puis l'on fait le nettoyage et supprime les drivers.
Mais le stop n'agit apparemment pas directement sur la lecture en ASIO et vu le temps de latence Windows tente d'envoyer des données à un driver qui n'existe plus -> crash.
En laissant une seconde après le Stop ça semble bon.
Les fonctions "Générateur" passent aussi en ASIO, mais toujours pas de Volume vu qu’inexistant en ASIO.
Il faudrait le recréer sur tout ce qui sort, mais pas simple.
-Possibilité de choisir une fréquence de sampling en 48K ou 96K. Mais la longueur de la FFT reste toujours de 32K.
-Affiche les retours d'infos des softs tiers utilisés : sox pour des conversions et lsconv pour générer l'impulse. Et bien sur DRC.
-Possibilité d'utiliser la sortie R de la carte son en loopback : permet non pas une référence de temps comme dans REW, mais améliore la génération de l'Impulse et permet une référence en niveau de la carte son. (fonction de calibration de la carte son de REW)
Et beaucoup de petites choses dont :
-inversion de l'impulse
-affichage ou pas de l'impulse après une mesure
-nombre de période sélectionnable pour la génération des bursts ....
-ASIO : commence à fonctionner.
Le problème provient de l'arrêt de la lecture du fichier, à ce moment on indique un Stop puis l'on fait le nettoyage et supprime les drivers.
Mais le stop n'agit apparemment pas directement sur la lecture en ASIO et vu le temps de latence Windows tente d'envoyer des données à un driver qui n'existe plus -> crash.
En laissant une seconde après le Stop ça semble bon.
Les fonctions "Générateur" passent aussi en ASIO, mais toujours pas de Volume vu qu’inexistant en ASIO.
Il faudrait le recréer sur tout ce qui sort, mais pas simple.
-Possibilité de choisir une fréquence de sampling en 48K ou 96K. Mais la longueur de la FFT reste toujours de 32K.
-Affiche les retours d'infos des softs tiers utilisés : sox pour des conversions et lsconv pour générer l'impulse. Et bien sur DRC.
-Possibilité d'utiliser la sortie R de la carte son en loopback : permet non pas une référence de temps comme dans REW, mais améliore la génération de l'Impulse et permet une référence en niveau de la carte son. (fonction de calibration de la carte son de REW)
Et beaucoup de petites choses dont :
-inversion de l'impulse
-affichage ou pas de l'impulse après une mesure
-nombre de période sélectionnable pour la génération des bursts ....
- alka
- Administrateur du site
- Messages : 3098
- Enregistré le : mer. 15 juil. 2015 15:18
- Localisation : 92
- Contact :
Re: Correction/filtrage semi-automatisé (DStudio v5)
tu t'amuses bien et tu ne manques pas d'idées
l'automatisation approche...
attention : si tu fais une version 5.1 faudra en parler a dolby

attention : si tu fais une version 5.1 faudra en parler a dolby

- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
On, (je) avions bien galéré sur le RTA avec du bruit rose.
Vu que DStudio peut générer un sinus, il est logique de l'afficher en RTA.
J'ai un peu chipoté avec le fenêtrage, mais simplement à cause de Google. On tape Hann et il vous sort du Hamming...
Voici le résultat pour 1kHz, FS 96k, longueur 32K, fenêtrage Hamming.
En Hann, j'avais un truc horrible aux basses fréquences, içi c'est OK mais reste le niveau de bruit qui monte.
En comparant avec REW, j'ai la même chose dès que je lisse en 1/48dB par octave ce qui est le cas avec DStudio et somme toute logique vu que comme pour le Pink-noise, on prend une certaine bande de fréquence.
Par contre si je prend simplement non plus une bande mais la fréquence la plus proche issue de la FFT, le niveau de bruit devient plat, mais le niveau FS lui décroit avec la fréquence.
Que faire ?
Vu que DStudio peut générer un sinus, il est logique de l'afficher en RTA.
J'ai un peu chipoté avec le fenêtrage, mais simplement à cause de Google. On tape Hann et il vous sort du Hamming...

Voici le résultat pour 1kHz, FS 96k, longueur 32K, fenêtrage Hamming.
En Hann, j'avais un truc horrible aux basses fréquences, içi c'est OK mais reste le niveau de bruit qui monte.
En comparant avec REW, j'ai la même chose dès que je lisse en 1/48dB par octave ce qui est le cas avec DStudio et somme toute logique vu que comme pour le Pink-noise, on prend une certaine bande de fréquence.
Par contre si je prend simplement non plus une bande mais la fréquence la plus proche issue de la FFT, le niveau de bruit devient plat, mais le niveau FS lui décroit avec la fréquence.
Que faire ?
-
- Messages : 190
- Enregistré le : jeu. 16 juil. 2015 16:17
- Localisation : Grenoble fournaise/Frigidaire
Re: Correction/filtrage semi-automatisé (DStudio v5)
Hello Thierry,
Je ne saisis pas le sens de la phrase,
Je ne saisis pas le sens de la phrase,
Par contre si je prend simplement non plus une bande mais la fréquence la plus proche issue de la FFT, le niveau de bruit devient plat, mais le niveau FS lui décroit avec la fréquence.
- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
La FFT de 32k va donner 16k valeurs de 0Hz à 24kHz si FS=48khz.
Hors, mon affichage de courbe se fait via un axe logarithmique sur 687 points.
Pour chaque point de cet axe, on prend dans la table de 16k la valeur correspondante.
Indépendamment, j'ai trouvé un article qui me semble complet sur les FFT dans notre domaine:
http://www.zytrax.com/tech/audio/equali ... post-scale
Hors, mon affichage de courbe se fait via un axe logarithmique sur 687 points.
Pour chaque point de cet axe, on prend dans la table de 16k la valeur correspondante.
Indépendamment, j'ai trouvé un article qui me semble complet sur les FFT dans notre domaine:
http://www.zytrax.com/tech/audio/equali ... post-scale
- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
J'ai appliqué la méthode simple :
-On prélève 32768 samples du signal.
-Fenêtrage.
-FFT 32K
-Extraction de la magnitude des complexes pour 16383 points.
-Mise en dB puis affichage.
Par contre en zoomant très fort, il reste un petit soucis:
Une dent de scie entre chaque point de la courbe
On sample en 96K.
Je pense à un problème au niveau des fonctions d'affichage.
-On prélève 32768 samples du signal.
-Fenêtrage.
-FFT 32K
-Extraction de la magnitude des complexes pour 16383 points.
-Mise en dB puis affichage.
Par contre en zoomant très fort, il reste un petit soucis:
Une dent de scie entre chaque point de la courbe
On sample en 96K.
Je pense à un problème au niveau des fonctions d'affichage.
- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
Le problème en RTA est que l'on prélève un certain nombre de samples (32768 pour DStudio) de manière plus ou moins aléatoire sur un signal entrant.
Voici un petit croquis ps très bien dessiné.
En 1, on a par exemple un sinus, l'on prend un bloc 32768 samples (en bleu) que l'on passe par la FFT et pendant ce temps on prend un nouveau bloc (en rouge).
Vu que l'on n'est pas synchro avec le sinus, les débuts et fins de blocs sont à des niveaux totalement différents.
Cela va créer de la disto et un graphique RTA totalement instable.
Pour contrer cela on fenêtre les samples des blocs comme en 2.
C'est bien mieux de donne ceci.
Il existe différents types de fenêtrage selon le signal à a analyser. Tous ayant leurs avantages et inconvénients.
REW a trouvé une parade bien simple et élégante.
On connait le principe du bruit rose périodique qui connait le même phénomène.
L'astuce est d'utiliser non plus une séquence aléatoire, mais une séquence sur la longueur de la FFT qui correspond au 32768 samples.
On a donc syncro entre signal généré et signal lut. (pour cela il faut idéalement utiliser la même carte son pour les 2 fonctions)
En sinus, on va faire pareil.
1KHz en 48k va produire 682.666667 périodes sur les 32768 samples.
Si l'on arrondi à 682 et que l'on calcule la fréquence équivalente, on aura 999.0234375 Hz qui elle tombe pile dans nos 32768 samples.
Plus besoins de fenêtrage et donne ceci :
Évidemment on n'a plus la fréquence exacte souhaitée mais selon ce que l'on veut mesurer, peut être une très bonne solution.
A noter que les niveaux de bruit sont différents, mais ça c'est dû au fait que le fenêtrage modifie les niveaux et qu'il convient de compenser.
Ce que je n'ai pas encore bien fait.
Voici un petit croquis ps très bien dessiné.
En 1, on a par exemple un sinus, l'on prend un bloc 32768 samples (en bleu) que l'on passe par la FFT et pendant ce temps on prend un nouveau bloc (en rouge).
Vu que l'on n'est pas synchro avec le sinus, les débuts et fins de blocs sont à des niveaux totalement différents.
Cela va créer de la disto et un graphique RTA totalement instable.
Pour contrer cela on fenêtre les samples des blocs comme en 2.
C'est bien mieux de donne ceci.
Il existe différents types de fenêtrage selon le signal à a analyser. Tous ayant leurs avantages et inconvénients.
REW a trouvé une parade bien simple et élégante.
On connait le principe du bruit rose périodique qui connait le même phénomène.
L'astuce est d'utiliser non plus une séquence aléatoire, mais une séquence sur la longueur de la FFT qui correspond au 32768 samples.
On a donc syncro entre signal généré et signal lut. (pour cela il faut idéalement utiliser la même carte son pour les 2 fonctions)
En sinus, on va faire pareil.
1KHz en 48k va produire 682.666667 périodes sur les 32768 samples.
Si l'on arrondi à 682 et que l'on calcule la fréquence équivalente, on aura 999.0234375 Hz qui elle tombe pile dans nos 32768 samples.
Plus besoins de fenêtrage et donne ceci :
Évidemment on n'a plus la fréquence exacte souhaitée mais selon ce que l'on veut mesurer, peut être une très bonne solution.
A noter que les niveaux de bruit sont différents, mais ça c'est dû au fait que le fenêtrage modifie les niveaux et qu'il convient de compenser.
Ce que je n'ai pas encore bien fait.
- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
Au niveaux des évolutions.
Sauvegarde de plus de paramètres lorsque l'on quitte DStudio, du genre dimension de fenêtre, si la fenêtre "Courbes" était affichée, elle le sera à l'ouverture suivante et la même place...
Générateur de 2 sinus simultanés pour pouvoir voir les effets d'une fréquence sur une autre, l'IMD.
Curseur dynamique dans la fenêtre des courbes.
Mais faudra un peu patienter car l'ensemble doit être debugger un minimum.
Je vais aussi me remettre activement à DRC, mais pour cela il me faut quelques soirées tranquilles.
Sauvegarde de plus de paramètres lorsque l'on quitte DStudio, du genre dimension de fenêtre, si la fenêtre "Courbes" était affichée, elle le sera à l'ouverture suivante et la même place...
Générateur de 2 sinus simultanés pour pouvoir voir les effets d'une fréquence sur une autre, l'IMD.
Curseur dynamique dans la fenêtre des courbes.
Mais faudra un peu patienter car l'ensemble doit être debugger un minimum.
Je vais aussi me remettre activement à DRC, mais pour cela il me faut quelques soirées tranquilles.
- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
J'ai un peu joué avec DRC et ses paramètres, il y en a beaucoup.
DRC est avant tout prévu pour faire de la correction globale en FIR, voici en jouant sur les paramètres et courbe cible.
Avec DStudio ou autre, on va générer un fichier cible.
Tout simplement en IIR on crée ce que l'on veut comme fonction de filtrage puis on l'exporte en fichier texte.
Suffit après de le renseigner pour qu'il soit transmis à DRC.
Si l'on veut de la phase linéaire, on décoche "Inclure Phase" ce qui va donner une phase à 0°.
Voici les réglages provisoires :
On va limiter la bande de fréquence à celle qui nous intéresse.
Dans mon cas c'est pour une bas médium coupé à 80Hz et 950Hz.
Voici le résultat :
En rouge la mesure (pas trop bien faite)
En bleu la courbe cible.
En rose la simulation donnée par DRC pour le résultat.
Et les phases :
J'ai fait de même pour le haut médium entre 950 et 6000Hz.
Il suffit d'envoyer les impulses générées par DRC à l'ADAU1452 et normalement c'est ok.
DRC est avant tout prévu pour faire de la correction globale en FIR, voici en jouant sur les paramètres et courbe cible.
Avec DStudio ou autre, on va générer un fichier cible.
Tout simplement en IIR on crée ce que l'on veut comme fonction de filtrage puis on l'exporte en fichier texte.
Suffit après de le renseigner pour qu'il soit transmis à DRC.
Si l'on veut de la phase linéaire, on décoche "Inclure Phase" ce qui va donner une phase à 0°.
Voici les réglages provisoires :
On va limiter la bande de fréquence à celle qui nous intéresse.
Dans mon cas c'est pour une bas médium coupé à 80Hz et 950Hz.
Voici le résultat :
En rouge la mesure (pas trop bien faite)
En bleu la courbe cible.
En rose la simulation donnée par DRC pour le résultat.
Et les phases :
J'ai fait de même pour le haut médium entre 950 et 6000Hz.
Il suffit d'envoyer les impulses générées par DRC à l'ADAU1452 et normalement c'est ok.
- alka
- Administrateur du site
- Messages : 3098
- Enregistré le : mer. 15 juil. 2015 15:18
- Localisation : 92
- Contact :
Re: Correction/filtrage semi-automatisé (DStudio v5)
ça a l'air magique. Dis nous si ça marche pour de vrai 

- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
Bien sur que ça marche pour de vrai, j’avais déjà vérifié et la courbe simulée correspond bien.
Oui, c'est magique dans le sens où l'on ne doit se préoccuper de pas grand chose.
Reste la question de savoir s'il a corrigé ce qu'il fallait.
Oui, c'est magique dans le sens où l'on ne doit se préoccuper de pas grand chose.
Reste la question de savoir s'il a corrigé ce qu'il fallait.
Re: Correction/filtrage semi-automatisé (DStudio v5)
Bonsoir
J'ai voulu tenter quelque chose
-mesure des HP avec REW
exporter en txt cette mesure avec REW
importer cette mesure dans rephase en mettant l'offset à -95db
Triturer la courbe de phase et filtrer avec un passe -bas à 700 hz
Créer une impulse de 7000 taps
L'importer dans DStudio 5 et la je ne retrouve pas mes petits
PS;J'ai la version de DS5 qui date du mois de mai 2016
Aurais je loupé quelque chose durant ces 25 pages
Edit du 13/2: j'ai refait des essais ce matin, cela ne peut pas fonctionner de cette manière.
Je mettrais le message à jour plus tard
Par contre Thierry, si tu avais la dernière version de DS5
J'ai voulu tenter quelque chose
-mesure des HP avec REW
exporter en txt cette mesure avec REW
importer cette mesure dans rephase en mettant l'offset à -95db
Triturer la courbe de phase et filtrer avec un passe -bas à 700 hz
Créer une impulse de 7000 taps
L'importer dans DStudio 5 et la je ne retrouve pas mes petits
PS;J'ai la version de DS5 qui date du mois de mai 2016
Aurais je loupé quelque chose durant ces 25 pages
Edit du 13/2: j'ai refait des essais ce matin, cela ne peut pas fonctionner de cette manière.
Je mettrais le message à jour plus tard
Par contre Thierry, si tu avais la dernière version de DS5
Modifié en dernier par razzortec le lun. 13 févr. 2017 10:49, modifié 1 fois.
- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
Rephase affiche l'effet des filtres sur la mesure.
L'impulse importée dans Dstudio sera la représentation des filtres.
L'impulse importée dans Dstudio sera la représentation des filtres.
Re: Correction/filtrage semi-automatisé (DStudio v5)
c'est ce que j'ai mis du temps à comprendre
Et pour le dernière version de DS5

Et pour le dernière version de DS5
- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
Par contre, si tu importe ta mesure en "Mesure", tu devrais retrouver la même courbe que dans rephase en "Simu".
Pour la dernière version, je dois d'abord faire un gros nettoyage car je me suis éparpillé.
Pour la dernière version, je dois d'abord faire un gros nettoyage car je me suis éparpillé.

- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
Bon, j'ai un problème avec les courbes cibles à passer vers DRC.
En toute logique on prend une appli FIR 2 voies ou 3 voies et là évidemment il n'y a pas de crossover IIR pour pouvoir créer ces cibles.
Il faut donc prendre une appli 2x3 créer ses courbes cibles, et ensuite reprendre une appli FIR.
Pas très pratique.
Je ferais bien une petite fenêtre avec quelques réglages :
Fonctions passe-haut et passe-bas et EQ.
La question: je repasse par des biquads, qui ne seront utilisés qu'en interne du soft ou existe t’il un autre moyen simple ?
On n'a même pas besoin de la phase, ce qu'il faut juste c'est dessiner une courbe.
En toute logique on prend une appli FIR 2 voies ou 3 voies et là évidemment il n'y a pas de crossover IIR pour pouvoir créer ces cibles.
Il faut donc prendre une appli 2x3 créer ses courbes cibles, et ensuite reprendre une appli FIR.
Pas très pratique.
Je ferais bien une petite fenêtre avec quelques réglages :
Fonctions passe-haut et passe-bas et EQ.
La question: je repasse par des biquads, qui ne seront utilisés qu'en interne du soft ou existe t’il un autre moyen simple ?
On n'a même pas besoin de la phase, ce qu'il faut juste c'est dessiner une courbe.
- alka
- Administrateur du site
- Messages : 3098
- Enregistré le : mer. 15 juil. 2015 15:18
- Localisation : 92
- Contact :
Re: Correction/filtrage semi-automatisé (DStudio v5)
je resterai avec les biquads.
il y a moyen de trouver les équations directes de quelques fonctions de transfert simple comme les filtres LP ou HP d'ordre 1 et 2 mais dès que ça se complique ça devient des équations inextricables. De plus, tu dois déjà avoir les fonctions pour le faire dans DS avec les biquads en complexes.
il y a moyen de trouver les équations directes de quelques fonctions de transfert simple comme les filtres LP ou HP d'ordre 1 et 2 mais dès que ça se complique ça devient des équations inextricables. De plus, tu dois déjà avoir les fonctions pour le faire dans DS avec les biquads en complexes.
- thierryvalk
- Administrateur du site
- Messages : 3770
- Enregistré le : jeu. 9 juil. 2015 20:08
- Localisation : Belgique
Re: Correction/filtrage semi-automatisé (DStudio v5)
Presque 1 mois plus tard ....
le générateur de courbes cible est +- opérationnel .
On jusqu’à 3 courbes en plus, les courbes "Cible".
Dans chaque encart de crossover FIR on a un bouton qui ouvre une fenêtre pour créer sa courbe cible correspondante.
Lorsque c'est fait, on réalise une mesure puis l'on clique sur DRC pour ouvrir la fenêtre de contrôle de DRC.
On ajuste à la louche la plage de fréquences à corriger, puis on lance les calculs.
On a maintenant toutes nos courbes et si la correction de DRC nous parait bonne on clique sur Transfer To DSP+.
Encore quelques détails à régler dont la normalisation du niveau car la simu me donne du -30dB à la place de 0 dB.
Puis test en live.

On jusqu’à 3 courbes en plus, les courbes "Cible".
Dans chaque encart de crossover FIR on a un bouton qui ouvre une fenêtre pour créer sa courbe cible correspondante.
Lorsque c'est fait, on réalise une mesure puis l'on clique sur DRC pour ouvrir la fenêtre de contrôle de DRC.
On ajuste à la louche la plage de fréquences à corriger, puis on lance les calculs.
On a maintenant toutes nos courbes et si la correction de DRC nous parait bonne on clique sur Transfer To DSP+.
Encore quelques détails à régler dont la normalisation du niveau car la simu me donne du -30dB à la place de 0 dB.
Puis test en live.

Retourner vers « DSPiy général »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 8 invités