Modérateurs: Staff DIY, Staff Installations, Staff Juridique • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités

Pour discuter de tout ce qui sert dans un projet DIY, de la défonceuse au logiciel de mesure

rePhase: linéarisation de phase, EQ et filtrage FIR

Message » 17 Oct 2012 0:02

Hello,

J'avais constaté ne pas etre capable d'importer d'Impulse sous Windows 7 64b...... Et bien c'est tout simple, c'est la version 64b de HOLM qui n'est pas stable, télécharger la version HOLMImpulse 1.4.2.0 (Windows 2000, XP, Vista, 7) et le problème est résolu.


j'ai essayé...,en vain.
Merci du tip quand même.


le spectrogramme,avec et sans correction de phase.

image

le même CSD que dessus animé.

image
Dernière édition par thierry38b le 27 Oct 2012 7:26, édité 2 fois.
thierry38
 
Messages: 892
Inscription: 26 Jan 2006 18:42
  • offline

Annonce

Message par Google » 17 Oct 2012 0:02

 
 
Publicite

 
Encart supprimé pour les membres HCFR

Message » 17 Oct 2012 9:18

Perso je n'ai jamais réussi à observer qq chose de significatif avec le spectrograme de REW, mais bon je n'ai pas bcp insisté non plus: c'est ultra dépendant des paramètres, tout comme celui d'ARTA...
pos
 
Messages: 1996
Inscription: 07 Mai 2007 16:36
  • offline

Message » 17 Oct 2012 18:51

oui REW est devenu délicat à utiliser depuis ses débuts,

y a t-il un intérêt pratique à corriger sous le 20 Hz ?

il a été évoqué le 16 Hz plus haut,avec 32000 samples.
comme une correction PPEQ à ces fréquences,nécessite beaucoup d'échantillons,si en pratique on peut s'en passer,cela évitera de charger le processeur.

je dis ça...je dis rien. :hein:

HOLM+rephase simulé.

Image
thierry38
 
Messages: 892
Inscription: 26 Jan 2006 18:42
  • offline

Message » 17 Oct 2012 21:49

Pour ceux qui veulent essayer le filtrage actif par convolution avec Jriver, voici un tuto.
Avec la participation de Pos,
http://jimmy.thomas.free.fr/Jriver/Tuto ... mpulse.pdf

viewtopic.php?f=1196&t=29965831&start=900

A+
JIM
Membre HCFR
Membre HCFR
 
Messages: 5543
Inscription: 19 Nov 2001 2:00
Localisation: Toulouse
  • offline

Message » 18 Oct 2012 0:53

thierry38 a écrit:y a t-il un intérêt pratique à corriger sous le 20 Hz ?

Sans doute pas, surtout en intérieur, et effectivement c'est le nb de taps dispos (limite hardware ou limite en terme de délai) qui va fixer la limite basse de correction...
Et puis mesurer de manière fiable la réponse en phase à ces fréquences... :hein:
Le mieux, si on a les taps dispos, est sans doute de rester sur la correction théorique, au moins pour la forme.

Pour les CSD, j'ai fait qq mesures:
Le sujet est une petite 2 voies, coupée à 2khz en LR 48dB/oct, avec un BR à 35Hz et un subsonic butt 12dB/oct à 25Hz.
La mesure est prise à ~1m avec Holm, sans grang soin: à la va vite, le mur arrière 30cm derrière et plein d'objets autour: Holm porposait un gating vers 1khz... (d'ailleurs le gating est bcp plus simple et efficace avec la mesure linéarisée en phase, puisque l'impulse est groupée pour toutes les fréquences! C'est un "effet de bord" intéressant qui facilite la mesure!)
Donc ça va être moche et passablement foireux, mais bon, c'est juste pour illustrer!

La modélisation de la phase de l'enceinte ressemble à ça (c'est la correction en mode time=inv) :

Image

Je ne remet pas les mesures de phase avant/après, en gros avant ça ressemble à la modélisation, et après ça ressemble à un truc plat...

Donc le but était d'observer tout ça sur un CSD. Évidemment dans le choix des paramètres on est tout le temps entrain de jouer entre précision temporelle et fréquentielle, et il faut "cibler" tel ou tel phénomène à observer.
Bon on fond tout cela n'est pas très utilise: au mieux on observera le group delay avant/apres correction, mais allons y tout de même!

Donc pour commencer, le plus facile, la coupure à 2khz. On va donc observer l'effet de 720° de rotation de phase autour de la coupure.

Voilà les paramètres choisi, ainsi que le calage de l'impulse:

Image

Attention à bien remettre CSD à chaque fois, Arta aime bien remettre sur STF tout seul...
Je fixe en plus la vue sur sonagramme, et l'echelle sur 15dB

Voici tout d'abord le CSD d'une impulse idéale avec ces params (générée avec rephase sans aucune correction):

Image

Ensuite le CSD de l'impulse de modalisation (la correction en time=inv), qui est l'impulse idéale de notre enceinte avec les filtres IIR:

Image

Et le CSD de la correction elle même (time=norm), qui est évidemment l'inverse de la modélisation:

Image

La mesure de l'enceinte réelle avant correction (désolé c'est moche et bruité, mais c'est juste pour montrer):

Image

La mesure après application de la correction par l'openDRC :

Image

Donc ca colle assez bien à la théorie (même si là la mesure est faussée)

On remarque sur l'impulse de modelisation que ca bouge aussi dans le bas, on va donc ajuster un peu les params pour aller oberver tout ca.
On dois voir les filtres à 35 et 25Hz, 24dB et 12dB respectivement, soit 540° de rotation en tout dans cette zone.
Bon là niveau mesure ça va clairement pas être folichon je vous préviens, car les approximations de la mesure vont ressortir à plein :D

On passe sur un FFT de 2048 samples, et on augmente aussi le param "FFT block shifts"

Voilà la CSD de l'impulse de modélisation (comme tout à l'heure, la correction en time=inv)

Image

La mesure avant correction:

Image

Évidemment ça chute sévère sous 50Hz (c'est une petite enceinte), donc on n'observe plus grand chose là dessous (surtout dans ces conditions)

Et la mesure après correction:

Image
pos
 
Messages: 1996
Inscription: 07 Mai 2007 16:36
  • offline

Message » 18 Oct 2012 1:02

JIM a écrit:Pour ceux qui veulent essayer le filtrage actif par convolution avec Jriver, voici un tuto.
Avec la participation de Pos,
http://jimmy.thomas.free.fr/Jriver/Tuto ... mpulse.pdf

viewtopic.php?f=1196&t=29965831&start=900

A+

Super JIM! :thks:
pos
 
Messages: 1996
Inscription: 07 Mai 2007 16:36
  • offline

Message » 18 Oct 2012 15:24

Merci Jim, super tuto!
Avatar de l’utilisateur
STRA
Staff Haute-Fidélité
Staff Haute-Fidélité
 
Messages: 7298
Inscription: 28 Jan 2010 3:41
Localisation: Toulouse
  • offline

Message » 18 Oct 2012 16:01

J'ai mis à jour les premiers posts du topic avec des liens vers les cas d'usage, et le tuto de JIM !
pos
 
Messages: 1996
Inscription: 07 Mai 2007 16:36
  • offline

Message » 18 Oct 2012 18:01

Merci pos pour cet outil tres bien fichu :thks:

Pour ceux que ca interesse, j'avais fait des essais de correction de phase avec DRC-FIR et poste quelques courbes dans le topic IK ARC 2 / MultEQ XT32.
Ce dernier est un filtre a phase minimale, calcule en plusieurs points pour eviter les corrections excessives. Mais ne corrige pas le Tg.
Avec DRC-FIR en preset "ERB" donc assez soft et sense etre proche des caracteristiques de notre systeme auditif, j'arrivais a ceci:
Image
On voit bien que la phase avec MultEQ est identique a celle sans correction (sans wrapping ici) et que DRC lui peut lineariser la phase.
Cette correction supplementaire, que j'ajoute comme une convolution au dessus de MultEQ XT32, est calculee en un seul point, au point d'ecoute.

En utilisant rePhase avec simplement les caracteristiques theoriques de l'enceinte: LR24 a 650Hz et 3.3KHz, closed box at 35Hz Q 0.7, j'obtiens quelque chose d'assez proche ma foi:
Image

La reponse impulsionnelle est egalement tres proche:
(en bleu: apres ARC/MultEQ = tres proche de sans correction, en rouge rePhase, en orange DRC, les traces rouge et orange se superposent)
Image
L'interet de regrouper en une belle impulsion est effectivement de beaucoup mieux voir les reflexions, comme celle sur le sol a 1ms.

Reste a comprendre ce qu'il se passe sous 200Hz, pas facile de mesurer la, et au dessus de 10KHz, les O300 ayant une petite EQ d'origine sur le tweeter.
Mais c'est assez rassurant de voir que DRC avec son fenetrage variable en fonction de la frequence, permet d'obtenir des resultats proche de la theorie malgre une mesure au point d'ecoute en environnement reverberant :)
palm
 
Messages: 5732
Inscription: 30 Nov 2003 1:34
Localisation: Nord
  • offline

Message » 18 Oct 2012 18:25

Merci Palm, très intéressant en effet! (et rassurant pour moi aussi :wink: )

Un truc m'intrigue:
sur ton graph comparant la phase corrigée par rephase et celle corrigée par DRC-FIR on voit que la phase de DRC-FIR finie vers -45°.
Evidemment en changeant un peu le calage de l'impulse on peut la faire aboutir à 0° sans prob (je ne sais pas comment REW gère le calage), mais ça recoupe tout de même ce qu'on peut voir ici:

http://drc-fir.sourceforge.net/doc/drc.html#htoc244

Image

C'est à dire une phase qui monte tout doucement, puis finit vers -45°.
Ça a l'air d'être voulu par DRC-FIR (vu que ce sont les mesures "exemple" avec le fenêtrage le plus court) et je me demande si c'est lié au contrôle des éventuelles oscillations en toute fin de bande?...
En effet avec rephase par exemple si on fini sur un target de phase différent de 0° en fin de bande (à la freq de nyquist) on peu parfois observer de petites oscillations d'amplitude dans cette même zone (en prenant par exemple -0.5dB/+0.5dB, voir 0.1dB, en prenant le fenetrage rectangular (le pire pour ça) et en mettant "optimization" à "none").
L'optimisation itérative, ainsi que le choix du fenêtrage, suppriment normalement le problème, mais vu que DRC-FIR ne fait pas d'optim itérative (il me semble) peut être est-ce une méthode pour gérer ce problème?..
Enfin bon avec rePhase le meilleur résultat à ce niveau est toujours obtenu avec la phase qui finie à 0°...
Une idée sur le pourquoi du comment ?
Dernière édition par pos le 18 Oct 2012 18:34, édité 1 fois.
pos
 
Messages: 1996
Inscription: 07 Mai 2007 16:36
  • offline

Message » 18 Oct 2012 18:31

Attention mon graphique est coupe a 10KHz pas 20, je n'ai plus le plot sous la main, mais j'ai vu une difference qui est sans doute liee a l'EQ du tweeter dans le filtre des O300... a creuser.
J'ai aussi eu un warning de clipping dans sox que j'ai utilise pour la convolution, donc des petites choses a eclaicir avant de prendre ces graphes pour argent comptant.
Neanmoins sur le principe les deux methodes collent assez bien dans la bande 200-10000, malgre la reflexion sur le sol.
palm
 
Messages: 5732
Inscription: 30 Nov 2003 1:34
Localisation: Nord
  • offline

Message » 18 Oct 2012 18:37

argh oui, 10khz :ko:

sox peut faire la convolution lui-même?
Je ne savais pas, c'est super ça! Je vais voir si je peux l’intégrer à rephase pour faire des petits tests de conv sur de courts extraits wav par exemple (en off line)
pos
 
Messages: 1996
Inscription: 07 Mai 2007 16:36
  • offline

Message » 18 Oct 2012 19:51

Merci JIM j'attendais ce genre de tuto pour franchir le cap. Ce n'est pas facile d'accès tout ça mais au final ça n'a pas l'air si compliqué ;)

Et merci pos pour ce super soft qui plus est gratuit!!!

Je n'ai pas encore tout à fait saisi le fonctionnement de l'onglet Filters Linearization mais pour le reste c'est du tout bon. Je partage cependant l'avis de JIM concernant l'ajout (si c'est possible) des fonctions high/low shelv.

Je vais peaufiner mes réglages et je vous donnerais mon avis sur une configuration 3 voies active ;)
XqutR
 
Messages: 2183
Inscription: 16 Avr 2011 14:48
  • offline

Message » 18 Oct 2012 21:35

Hello,

après pas mal de mesure avec convolution.

la correction est OK.

j'ai rajouté un 2eme convolver,dans VSThost.

cela pour mesurer une IR de filtrage en aval de la correction PHI.
cela fonctionne dans tous les cas,sauf les LPF (peut être une coquille dans une équation commune aux LPF :-? ).

toutes les autres combinaisons fonctionnent,mesurées au micro.

un déphasage négatif vient se greffer ,avec les LPF>12 dB/Oct <200 Hz (et uniquement dans ces cas de figure ).
-LR
-reject low
-reject high

ce déphasage négatif augmente avec la pente choisie (24/48/96...).

il n'apparait pas dans rePhase,ni le target,ni le result.

mesuré à 1m.

Image

en vert,le LPF 48 mesuré sur la correction de phase en amont.

la carte son rebouclée

Image

EDIT

uniquement <200 Hz et avec LPF >12 dB/oct.

Image



je vais continuer de creuser.

Thierry
thierry38
 
Messages: 892
Inscription: 26 Jan 2006 18:42
  • offline

Message » 18 Oct 2012 23:01

C'est dû au calage de ton impulse de mesure dans holm: il se cale automatiquement sur un pic de l'impulse, et avec ton noise floor relativement haut il trouve ce pic au mauvais endroit quand il n'a pas bcp de signal (l'amplitude de l'impulse diminue à mesure que tu descend la freq et que tu augmente la pente).
Ajoute qq échantillons sur l'offset de ta mesure et tu retrouvera une phase plate.
D'ailleurs tu peux importer directement dans Holm l'impulse de la correction (et là il devrait arriver à la caler tout seul, mais check sa valeur d'offset tout de même, qui doit etre la meme que celle donnée par rephase), et vérifier que la phase est bien plate.
pos
 
Messages: 1996
Inscription: 07 Mai 2007 16:36
  • offline


Retourner vers Outils & Logiciels