Modérateurs: Modération Forum Installations, Modération Forum DIY, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 58 invités

Discussions générales sur le DIY Audio : choix des HP, comparaisons des principes : clos vs BR, etc

Pavillons et fréquence de coupure

Message » 10 Aoû 2012 20:25

nouvelle version de rephase 0.2.2 :

EDIT: lien supprimé, nouvelles version disponibles ici: viewtopic.php?f=1055&t=30024394

changements:
- Q plus précises pour les PPEQ
- nouveau filtres, dont corrections de filtres subsonics (approximations de butterworths optimisés pour "consommer" le moins de taps possible)
- possibilité de forcer le centrage de l'impulsion (à n'utiliser qu'en cas de nécessité, car ça "gâche" pas mal de taps pour rien)
- accélération de la vitesse de génération de l'impulse
- optimisation itérative automatique

Cette optimisation itérative est automatique dès la fin de la génération: rephase essai de minimiser les déviations d'amplitude sur la bande 15hz-20khz.
La déviation maximum d'amplitude est affichée, et l'optimisation stop quand elle n'arrive plus à la minimiser (après 25 itérations "inutiles"), ou quand l'utilisateur clic sur le bouton "stop and save".
Evidemment si on souhaite sauvegarder son impulse en 16 bits inutile de vouloir descendre à 0.00000001 dB de déviation...

Donc en gros niveau utilisation par rapport à la précédente version il faut stopper soit même la génération (l'optimisation en fait), mais le gain est intéressant, surtout quand on est à la limite des taps...
Dernière édition par pos le 27 Aoû 2012 1:19, édité 1 fois.
pos
 
Messages: 1996
Inscription Forum: 07 Mai 2007 16:36
  • offline

Message » 12 Aoû 2012 17:06

Merci pour ton travail :D

Pourrais-tu expliquer ça s'il te plait:

possibilité de forcer le centrage de l'impulsion (à n'utiliser qu'en cas de nécessité, car ça "gâche" pas mal de taps pour rien)


J'arrive pas à comprendre sur quoi l'impulsion à besoin de se centrer :wtf: , et du coup comment tu te rends compte qu'il faut utiliser ce centrage?
adrixn
 
Messages: 241
Inscription Forum: 05 Mar 2010 18:39
  • offline

Message » 13 Aoû 2012 19:49

En temps normal sur du filtrage FIR à phase linéaire l'impulse est symétrique, et donc centrée au milieu. Par exemple sur le DX46 il y a 512 taps, donc 512 échantillons pour l'impulse, et avec les filtres FIR simples proposés dans l'interface le délai est toujours de 256 samples (5.33ms à 48khz) puisque l'impulse est centrée.
Les techniques de fentrage (atténuation progressive à mesure que l'on arrive aux extrémités de l'impulse, pour eviter les "ruptures" trop brusques susceptibles de generer des ondulations dans la réponse) sont elles aussi généralement symétriques.
Ici le filtre FIR généré n'est pas à phase linéaire: au contraire il produit un décalage de phase (inverse de celui du filtre en aval), et l'impulse n'est donc pas symétrique.
En fait sur un filtre "classique" causal (à phase minimale) "bien fait" (calé en phase, par exemple un LR acoustique) l'impulse s’étend sur la droite: le pic des aigus en premier (la ref pour le 0°), puis le reste du spectre de plus en plus décalé suivant les rotations de phases entrainées par le filtre et les réponses naturelles des HP et de la caisse. Pour l'impulse "inverse" générée par rephase avec les fonctions de linéarisation de filtre c'est le contraire: le pic des aigus est à droite, et le reste s'étend vers la gauche (en gros l'impulse est "jouée à l'envers" par rapport aux allpass du filtre IIR à compenser). Avec les PPEQ ca peut etre un peu différent, mais en règle générale c'est vers la gauche...
Donc niveau centrage de l'impulse dans tous les cas c'est "dommage" de mettre le pic des aigus au milieu, car on gâche potentiellement la moitié des taps pour pas grand chose. Mais d'un autre coté ça n'est pas non plus idéal de la caler à droite (notamment à cause des PPEQ).
Le centrage par défaut est donc fait selon l’énergie, et doit normalement être le centrage idéal de l'impulse: rephase calcul une impulse sur un nombre de taps double de celui requise normalement, avec le pic d'aigu au milieu, puis fait "glisser" une fenetre de taille egale au nombre de taps final sur cette impulse en calculant à chaque fois la quantité l'energie perdue (en dehors de la fenetre), et ensuite choisi la fenetre pour laquelle cette quantité d'energie perdue etait minimale. Ensuite le fenetrage est évidemment appliqué de manière asymétrique (avec comme point central le pic d'aigu de l'impulse). A noter que ca n'est pas un simple fenetrage, mais 4 fenetrages (avec une difference faite entre la partie gauche et droite de l'impulse, ainsi qu'entre les aigus et les graves).
(ca n'est pas la fonction d'optimisation itérative évoquée plus haut: ce fenetrage est fait lors de la premiere génération de l'impulse, et ensuite conservé pour toutes les iterations d'optimisation)
Donc en règle générale avec la fonction de centrage par défaut ("energy") le pic de l'impulse est le plus souvent très à droite. On peut le voir sur l'affichage une fois l'impulse généré, avec l'offset en samples et en ms (en fonction de la frequence de sampling choisie), qui represente la position du pic d'aigus (et celle à prendre en compte dans holm impulse par exemple). C'est ce délai qu'il faut aussi considerer comme le délai imposé par une convolution de cette impulse. Donc par exemple si on a 512 taps et une impulse centrée à 480 samples le délai à 48khz ne sera pas de 5.33ms comme sur le DX46 (offset = 256 samples), mais de 10ms.
On profite donc au mieux du nombre de taps disponibles (que l'on aura choisi en fonction des capacités de la machine ou du logiciel qui fera la convolution, par exemple 6144 taps pour un openDRC, mais presque pas limité sur un plugin PC...), mais on paye le prix du délai qui va avec.
Donc en résumé il vaut mieux toujours laisser la fonction de centrage sur l'option "energy", mais il y a deux cas on l'on peut choisir le forcer le centrage au milieu de l'impulse:
- si l'on veut un délai precis: (taps/2)/freq de sampling
- si le logiciel qui doit lire l'impulse (pour analyse ou pour la convolution) exige une impulse centrée au milieu (je crois que c'est le cas d'align2, et d'arta si l'on veut utiliser les fonctions genre CSD, mais je ne suis pas sur)
pos
 
Messages: 1996
Inscription Forum: 07 Mai 2007 16:36
  • offline

Message » 14 Aoû 2012 10:37

Ok merci :wink: . Donc c'est surtout une optimisation de la consommation. Du coup pour s'éviter des bourdes en utilisant des PPEQ, il suffit de lire l'impulse dans holm et voir si une partie est tronquée ou non, si j'ai bien compris.
adrixn
 
Messages: 241
Inscription Forum: 05 Mar 2010 18:39
  • offline

Message » 14 Aoû 2012 18:56

Oui c'est une optimisation des taps, mais quelque soient les reglages (PPEQ ou pas) le centrage par l’énergie doit normalement être optimal, donc pas de crainte à avoir que l'impulse soit tronquée plus qu'elle ne devrait l’être ;)
Et si elle l'est (nb de taps trop court ou trop de corrections dans le bas, ou par exemple un phase qui ne veut pas finir sur un multiple de 180° dans le bas) on le voit tout de suite sur l'indication de déviation maximum.
Après c'est toujours une bonne pratique de regarder l'impulse sous holm...
pos
 
Messages: 1996
Inscription Forum: 07 Mai 2007 16:36
  • offline

Message » 20 Aoû 2012 16:54

Bonjour,

tcli a écrit:
ohl a écrit:Pour éviter les distortions de délai de groupe sur les filtres, une solution possible est l'utilisation de filtres soustractif à délai (cf les travaux de Lipshitz et Vanderkoy, et l'étude de Kreskovsky). C'est sans doute plus simple que d'utiliser un filtre "classique" puis de le corriger. La contrainte des filtres soustractifs reste la pente maximale du passe-haut limitée au 4e ordre environ.

Et le fait qu'il n'est pas possible de les mettre en œuvre directement avec un DCX ou DX46 ...

Quoique...
http://jimbee.over-blog.com/pages/DCX2496_soustractif_delay-2554286.html

A+

Francis Brooke

P.S. Pour mémoire, le sujet est "Pavillons et fréquence de coupure"
Francisbr
 
Messages: 1260
Inscription Forum: 20 Sep 2002 15:09
Localisation: Lyon (69)
  • offline

Message » 20 Aoû 2012 19:22

Francisbr a écrit:Bonjour,

tcli a écrit:
ohl a écrit:Pour éviter les distortions de délai de groupe sur les filtres, une solution possible est l'utilisation de filtres soustractif à délai (cf les travaux de Lipshitz et Vanderkoy, et l'étude de Kreskovsky). C'est sans doute plus simple que d'utiliser un filtre "classique" puis de le corriger. La contrainte des filtres soustractifs reste la pente maximale du passe-haut limitée au 4e ordre environ.

Et le fait qu'il n'est pas possible de les mettre en œuvre directement avec un DCX ou DX46 ...

Quoique...
http://jimbee.over-blog.com/pages/DCX2496_soustractif_delay-2554286.html


Je connais ce site, la mise en œuvre avec un DCX nécessite de le modifier, c'est pourquoi j'ai dit "directement" :

principe du filtre soustractif avec delay pour trois voies.
Les fonctions de retard et le filtrage passe bas sont assurées par
un dcx2496 et les fonctions soustractives sont faites en sortie
de dac, by-passant les étages analogiques d'origine du dcx.


Francisbr a écrit:P.S. Pour mémoire, le sujet est "Pavillons et fréquence de coupure"

Oui pos devrait créer un nouveau sujet (et un modérateur déplacer les posts).
tcli
 
Messages: 4071
Inscription Forum: 23 Nov 2009 22:40
Localisation: Complètement à l'ouest
  • offline

Message » 20 Aoû 2012 19:31

Oui, ce serait bien d'ouvrir un nouveau sujet, déjà que celui ci est peu lisible.

Pos, as tu mis en oeuvre le mini DSP avec ton soft ?
JIM
Modérateur Installations
Modérateur Installations
 
Messages: 7073
Inscription Forum: 19 Nov 2001 2:00
Localisation: Toulouse
  • offline

Message » 23 Aoû 2012 13:57

Salut JIM,
Oui, j'utilise le miniDSP, par exemple ici: viewtopic.php?f=1055&t=29727976&start=1770#p177107490

Désolé pour le bordel sur ce topic, je vais en créer un autre pour la suite. J'ai une nouvelle version presque prête, avec notamment de l'eq à phase linéaire en plus, et une interface un peu plus travaillée...

Pour en revenir au sujet initial de ce topic, as-tu testé la correction de la rotation de phase du TH4001 avec de l'eq?
Je te rappel la recette: très forte eq à faible Q très loin hors bande pour redescendre la phase dans la bande, et ensuite creux dans le bas de la bande pour réaplanir l'amplitude (avec évidemment plusieurs étapes d'aller-retour).
On arrive en fait typiquement à la réponse d'une transformée de linkwitz... (on peut jouer avec dans winisd pro, mais hélas leur algos d'eq ne sont pas du tout fiables)
A noter que sur les DSP hypex (genre PSC400 ou AS2-100) on doit presque pouvoir le faire avec un seul biquad, grace à leur "asymetric shelving".

EDIT: tiens, un truc interessant: http://www.diyaudio.com/forums/analog-l ... ost2650656
If you have say a mid in a sealed box with say q=0.5 Fs 90Hz, you can use LT to change to say Q=0.707 Fs 300Hz, thus the mid is now filtered with a classic butterworth rolloff at -3dB at 300Hz (true acoustical output). Add a separate 12dB butterworth stage (after LT) at 300Hz and you end up with an true acoustical output of LR24 at 300Hz -6dB.
You can use this method on the tweeter filtering as well.
Thats how my 3 way active xover is.
I recommended you actually measure the box q/Fs to get accurate acoustical results.

au lieu de faire une linkwitz transfrom pour applanir puis de faire un filtrage ici le principe est de faire les deux d'un coup (si on connait precisement la coupure naturelle de départ evidemment...). On perd en souplesse (changement de coupure = changement du LT et du filtre, mais ca se gère...) mais on gagne en puissance DSP necessaire
Dernière édition par pos le 23 Aoû 2012 23:35, édité 1 fois.
pos
 
Messages: 1996
Inscription Forum: 07 Mai 2007 16:36
  • offline

Message » 23 Aoû 2012 15:12

pos a écrit:Salut JIM,
Oui, j'utilise le miniDSP, par exemple ici: viewtopic.php?f=1055&t=29727976&start=1770#p177107490

On arrive en fait typiquement à la réponse d'une transformée de linkwitz... (on peut jouer avec danbs winisd pro, mais hélas leur algos d'eq ne sont pas du tout fiab


Je vais dire une bétise , mais avec un miniDSP , ne peut on pas librement choisir les coefs des biquad ,
de façon a avoir directement une transformé de linkwitz ?

Note : il faudra peut etre 2 biquad car la réponse passe haut d'une compression est pas forcement d'ordre 2,
mais c'est pas grave la transformé de Linkwitz est généralisable à des ordres supérieurs.

Ce qui me gène un peu dans cette méthode, c'est que, certe, tu te retrouves dans des conditions bien controlées, mais ta coupure électrique en prend un coup et la tenue en puissance ou les distorsion peuvent poser problème non ?
tcli
 
Messages: 4071
Inscription Forum: 23 Nov 2009 22:40
Localisation: Complètement à l'ouest
  • offline

Message » 23 Aoû 2012 16:11

tcli a écrit:Je vais dire une bétise , mais avec un miniDSP , ne peut on pas librement choisir les coefs des biquad ,
de façon a avoir directement une transformé de linkwitz ?

Note : il faudra peut etre 2 biquad car la réponse passe haut d'une compression est pas forcement d'ordre 2,
mais c'est pas grave la transformé de Linkwitz est généralisable à des ordres supérieurs.

Oui sur toute la gamme minidsp (avec les plugin "advanced") on a accès aux biquads, et on trouve sur leur forum une feuille excel permettant de calculer toute sortes de filtres, dont des LT.
Mais avec l'openDRC utilisé en deux voies stéréo on ne peut pas le faire (sauf pour la coupure basse du woofer éventuellement...).
Sur le DX46 ou le DCX (et la plupart des autres filtres) il faut empiler des EQ (et avec des précautions particulières avec le DX46 qui est en virgule fixe), sur les DSP hypex on a accès à des shelvings asymétriques qui permettent de s'en approcher (hélas pas d'accès aux vrais coefs des biquads, donc ca n'est jamais qu'une approximation...), et sur les minidsp on peut le faire directement...
Par contre je ne suis pas certain que, mis à part l'openDRC, les minidsp soient en virgule flottante: ils sont en 28/56bits, et j'ai bien peur que ce soit du fixe, donc là aussi attention avec l'eq...
(l'openDRC est en 32bits flottants par contre)

Ce qui me gène un peu dans cette méthode, c'est que, certe, tu te retrouves dans des conditions bien controlées, mais ta coupure électrique en prend un coup et la tenue en puissance ou les distorsion peuvent poser problème non ?

Si tu vise une coupure acoustique donnée ca revient presque au même au final, avec juste un peu plus de niveau tout en bas (en fait le vrai respect de la coupure acoustique jusqu'en bas, au lieu d'une coupure tronquée dans le bas la plupart du temps). Ensuite rien n’empêche de viser une coupure acoustique élevée, genre LR48 (surtout si on corrige sa rotation de phase), et là plus de problème.
pos
 
Messages: 1996
Inscription Forum: 07 Mai 2007 16:36
  • offline

Message » 23 Aoû 2012 21:08

Non pos, je n'ai toujours pas essayé mais je le ferai. Maintenant avec tout ça, vu que je suis en config HC, même le mini-dsp, ça revient cher.
Je vais tout bazarder (ampli-PS3) et passer au PCHC, marre du matos fermé ... :grr:
JIM
Modérateur Installations
Modérateur Installations
 
Messages: 7073
Inscription Forum: 19 Nov 2001 2:00
Localisation: Toulouse
  • offline

Message » 23 Aoû 2012 23:10

JIM a écrit:Je vais tout bazarder (ampli-PS3) et passer au PCHC, marre du matos fermé ... :grr:

+1
Je suis en train de développer un convoler sous forme de pluging ladspa pour Linux.
J'ai déjà le PC sous xbmc (openelec) pour accéder mes fichiers audio stocké sur mon NAS.
Après , il faudra juste trouer les bonnes réponse impulsionnelles à lui fournir, et c'est là que ça va être coton ...
tcli
 
Messages: 4071
Inscription Forum: 23 Nov 2009 22:40
Localisation: Complètement à l'ouest
  • offline

Message » 23 Aoû 2012 23:41

JIM a écrit:Non pos, je n'ai toujours pas essayé mais je le ferai.

Pour la mesure vu que tu n'a pas de filtre FIR je te conseil d'utiliser le filtrage du signal source dans holm, en visant genre une octave sous la coupure, et beaucoup de taps, et de chercher à aplanir la phase puis l'amplitude (en itérations) dans cette zone. N’hésite pas à booster fort et très loin hors bande (eventuellement une decade en dessous).
L'autre possibilité est de mesure un LR48 directement en sortie de ton DCX, puis d'essayer de le suivre à la mesure avec toujours un LR48, mais c'est franchement moins facile (mais aussi moins risqué que d'attaquer sans filtre, si le PC déconne, etc...)
pos
 
Messages: 1996
Inscription Forum: 07 Mai 2007 16:36
  • offline

Message » 23 Aoû 2012 23:42

tcli a écrit:Après , il faudra juste trouer les bonnes réponse impulsionnelles à lui fournir, et c'est là que ça va être coton ...

Tu cherche à régler l'enceinte elle même ou carrément à faire du DRC?
pos
 
Messages: 1996
Inscription Forum: 07 Mai 2007 16:36
  • offline


Retourner vers Discussions Générales

 
  • Articles en relation
    Dernier message