-
Foobar, rePhase & Crossvolver: un pcXO fir
Multi amplification sur pc:
filtrage / égalisation fir par convolution
à éssayer ou lire au préalable :
quelques bases : tuto rePhase chez miniDSP
http://www.minidsp.com/applications/advanced-tools/rephase-fir-tool
approfondi, multi amplification :
Jimmy Thomas
"Thierry38efd"
Diyaudio easy fir crossover de Thierry
Attention : incompatibilité manifeste entre diverses configurations de VSTconvolver, telles décrites par Jimmy ou Thierry utilisant des fichiers TXT de configuration, et Crossvolver, qui utilise VSTconvolver en interne uniquement avec des fichiers wav.
Trois solutions sont ici décrites, la dernière propose d'intégrer toutes les fonctionnalités utiles dans foobar, cas favorable pour la stabilité en évitant le chainage d'applications via asio4all ect . Crossvolver reste intéressant pour sa souplesse lors de la mise au point initiale d'un système.
( PC windows XP duo core )
1: Configuration avec Crossvolver
Logique générale :
Pour chaque voie, rePhase permet de créer une impulsion à l'image de la fonction désirée ( filtrage x égalisation ) ( La réponse fréquentielle H(f) est la transformée de Fourier de réponse impulsionnelle h(t)
Le signal filtré est le résultat de la convolution entre le signal entrant et la réponse impulsionnelle h(t) associée à chaque voie )--> jeux de fichiers wav stéréo pris en compte dans le moteur de convolution multi-voies Crossvolver:
Les outils / softs à installer : ( cliquer sur le nom des softs pour liens et sur les images pour les voir en pleine définition)
donationware
---------------------------------------
--------------
structure pc ( XP ):
gestion des niveaux:
global: atténuation passive par commutateur à résistances 6 voies / 6 positions par bonds de 7 à 8 dB, entre les sorties de la carte et les amplis.( de même impédances d'entrée )
Réglages fins numérique dans foobar.
nota : Vb virtual cable ( phénomène d'échos ) est remplacé par VB Hifi cable & asio bridge en mode pass-through : pas de conversion par src interne
-----
Le but est de diriger la sortie stéréo du lecteur Foobar vers Crossvolver via VB-audio Hifi cable afin d'effectuer le filtrage 2 x trois voies ( quatre possibles ) par convolution.
Une convolution de correction générale dans foobar avec foo_convolve est optionnelle, plus trois filtres avec Crossvolver pour plus de souplesse, une grande variété de types et corrections fines de la réponse de chaque haut-parleur indépendamment en amplitude et en phase .
réglage sortie de Foobar:
vue générale
réglages entrées / sorties de Crossvolver:
engine --> configure
(en entrée, seules les voies 1 et 2 sont utilisées, les suivantes pouvant rester non assignées )
carte son utilisée :ESI Gigaport HD, les sorties internes filtrées de Crossvolver
à rediriger sont voie grave 3 / 4 , voie médium, 5 / 6 , voies aigus, 7 / 8
devices ---> wave
______________________________
_______________
_________
__
création des impulsions avec rePhase ,
ici pour une trois voies. Toutes les impulsions ont la même longueur, en stéréo, et sont centrées, ( centering : middle - float ) pentes type linéar phase, profil à choisir entre Linkwitz-Riley, Reject low / high, overlapping, brickwall, ect
choix des profils et pentes de coupures
courbes comparées:
influence sur le "ringing": impulsion du passe bas
avec signal test : décomposition deux voies sur une période carré 500 Hz
les pré et post signaux doivent s'annuler : l'alignement des hp doit être très précis, d'autant plus critique que les pentes choisies seront fortes.
----
quelques modèles de filtres à pentes progressives
<0,15 dB d’écart sur la somme
pour fc = 1kHz
ou encore:
----------------------
La cible est d'obtenir un filtrage complémentaire de la réponse propre des hp en les linéarisant préalablement à 2/3 d'octave ( ou + selon pentes retenues) de Fc.
Le but étant de respecter la cible acoustique jusqu'à un affaiblissement à -30 dB
---------------------------
sculpture de la réponse à partir d'une mesure de hp :La mesure est faite en relative proximité (moins d'un mètre, selon la disposition des enceintes et des premières réflexions de pièce ) de manière à représenter le son direct dans l'axe d'écoute : le haut parleur + charge + baffle.
L'aspect DRC, comprendre digital room compensation ( on ne corrige pas l'acoustique en modifiant le son direct ) est traité par un vst d'égalisation (IIR) en amont, ici dans foobar, pour la réponse modale , d'autre part une convolution globale permet d'affiner la réponse temporelle si besoin ( foo_convolve )
illustration de principe : filtrage voie haute
exemple: mesure d'un tw. isodynamique avec REW
Pour caler la phase dans Rew, l'outil "estimate ir delay" est performant, ainsi que la comparaison avec la phase minimum
puis la mesure exportée de Rew au format txt vers rePhase :
( avec ici un gain offset de -85dB pour se retrouver vers 0dB dans rePhase )
export à partir de mesures Arta:
disposition en colonnes des informations du fichier txt
ou par glisser-déposer du fichier de mesure txt dans la fenêtre de rePhase
utilisation des paragraphic : égalisation globale avec les presets puis taper les valeurs désirées F ( Hz) et Q pour affiner
1 : égalisation d'amplitude ( phase minimum )
2 : égalisation de phase
3 : filtrage / réglage des settings et génération de l'impulsion
centering : middle , float, ou " use closest perfect impulse " avec rePhase 9.9
Par défaut, le fichier wav généré se situe ( directory ) dans le même dossier que rePhase;
sinon, cliquer dans la fenêtre directory pour sélectionner une autre destination,
sauvegarder aussi au format .rePhase pour retouches ultérieures.
----------------------------------
ou en filtrage Horbach-Keele:
http://www.xlrtechs.com/dbkeele.com/PDF/Keele%20(2007-09%20AES%20Preprint)-%20Linear%20Phase%20Digital%20Crossover%20Flters%20Part%201.pdf
-------------
--
-
L'opération semblable est effectuée pour le médium et le grave.
Il importe, pour ne pas sur-corriger, de calibrer la chaine de mesure, surtout de disposer d'un fichier de calibration du microphone de mesure comprenant sa réponse en phase, ce qui n'est pas toujours le cas dans les fichiers génériques comme pour le ECM800.
L'erreur peut sinon dépasser 100° à 20 Hz: réponse type ecm8000 déduite par phase minimum:
ou encore : source : augerpro, Diyaudio
:http://www.diyaudio.com/forums/multi-way/106889-ecm8000-microphone-2.html
-------------
retenu pour cette mise en œuvre: mix de pente assez douces, 36dB/oct au médium-tweeter , 48 dB/oct grave-médium.
Les trois impulsions sont nommées, ici
crossvolvebasstest.wav, crossvolvemediumtest.wav et crossvolvehightest.wav
puis associées pour chaque voie : même longueur et idem nb. de partitions
File/config : --> désigner l'impulsion correspondant à la voie.
Si des gains ( positifs ) sont utilisés à l'égalisation des hp dans rePhase - paragraphic eq gain - il convient de baisser d'autant - Atténuation - dans Crossvolver pour éviter les saturations.
le réglage des délais servira à obtenir l'alignement des hp
Avant activation des amplis, le fonctionnement du filtrage est vérifié en utilisant le générateur interne de bruit rose:
puis passage en source externe, lecture ds Foobar, vue générale avec voies de sortie de la carte son externe
La mesure du résultat final est faite avec Rew. La fréquence glissante générée par Rew / générateur en wav puis lue dans Foobar. Chercher la bonne synchronisation au lancement de la lecture avec la mesure pour un résultat valide.
Solution depuis évoluée avec Rew: preferences, analysis, use acoustic timing référence:
sortie rew -> VB virtual cable à déclarer comme périphérique d'enregistrement dans windows, libre avec la 3ème solution "tout dans foobar" -> foo-record
foo-record : http://www.saunalahti.fi/~cse/foobar2000/foo_record.fb2k-component
Les égalisations d'amplitude en basses fréquences ( modales, liées aux dimensions de la pièce d'écoute ) sont faites à phase minimum, en IIR, avec un plugin VST indépendant, genre ReaQ, dans Foobar C'est aussi moins gourmand en ressources.
Le trou à 200 Hz est lié au placement du micro. ech. 2dB / division.( pas à corriger! )
L'égalisation de phase est choisie proche de la phase minimum.:
“A minimum phase system is one which is able to transfer input energy to its output in the least amount of time for a given frequency response”
Impulsion et step réponse :
--------------------------------
Problème : quelques humeurs au niveau des "clics " à gérer, dans cet essai utilisant 16384 taps x 4 = 65536, ( conso cpu 18% sur Dell duo-core)
Une aide : modifier le niveau de priorité des applications critiques dans le gestionnaire de tâches:
http://forum.cockos.com/showthread.php?t=74359
effet Ntaps / respect de la courbe cible pour un passe haut LR 48 à Fc = 200 Hz
en fonction du mode de fenêtrage avec taps identique
:http://en.wikipedia.org/wiki/Window_function#Nuttall_window.2C_continuous_first_derivative
rectangulaire:
blackman
warning :
!!! Les impulsions sont à recharger dans crossvolver à chaque mise en route. !!!
-----------------------------
------------------------------------------
2: Configuration avec VSThost et VSTconvolver:
La démarche générale est en tous points semblable, Crossvolver de JLO est en fait un "emballage", enrichi de quelques fonctionnalités, utilisant la base SAVIhost de Hermann Seib avec VStconvolver:
http://www.hermannseib.com/english/savihost.htm
installer VSThost et convolverVST:
http://www.hermannseib.com/english/vsthost.htm
convolverVST : http://sourceforge.net/projects/convolver/files/convolver/
Choisir cette version 4-4 pour l'intégration ultérieure dans foobar( sous XP )
L'interface est plus austère et la configuration de VSTconvolver pour les six voies, doit être faite en bloc, via un fichier .txt ( wordpad, textEdit ... ) indiquant les fichiers wav de convolution, selon des principes de rédaction détaillés dans les tutos de Jimmy et Thierry, liens en début de page, et d'autres exemples illustrés ici :
http://convolver.sourceforge.net/configegs.html
En 2 x 6 les voies d'entrée sont ( 0 , 1 ) et de sortie ( 0 , 1 , 2 , 3 , 4 , 5 )
logique d'écriture :
.. ect ...
( ératum : impulsions mono : 0 - impulse stéréo : 0 ou 1 pour choisir la piste à considérer pour convo )
Il faut bien veiller aux détails, à l'écriture méticuleuse de l'adresse des fichiers wav des impulsions de filtrage / égalisation correspondant, voie par voie.
(Les impulsions ont été refaites en mono)
aperçu pour les six voies :( impulsions en mono)
correspondant au dossier réunissant les fichiers wav et TXT situé en haut du disque C
activer les plug-in vst : glisser déposer leur icône dans la fenêtre de VSThost, puis relier entrées-sorties audio d'un trait de souris
Les liaisons entre blocs et plug-in vst sont, pour l'audio, représentées symboliquement par un trait supérieur jaune, indépendamment du nombre de voies, la liaison inférieure en orange concerne le flux des informations Midi.
Autre piège, à vérifier en fonction du système pc :
Premier essai fait avec partitionnement ( 6 partitions en vue de réduire la latence système ) dans la configuration de VSTconvolver: surprise !
Mesure des deux voies grave / médium : filtrage non conforme :
puis sans partition :
ouf !! --> mesure grave médium conforme, ainsi que de l'ensemble
effet du partitionnement sur le filtrage / égalisation du médium, sortie électrique :
Réglages par défaut : tuning rigour : Measure
"Measure finds an optimized method by actually and measuring the execution time of candidate methods, so there may be a pause while this happens. Depending on your machine, this can take some time (often a few seconds). This is a good default option."n partitions en 2^x : 0, 2, 4, 8 , ou 16 :
" The Partititions setting allows you to tune the convolution algorithm to your cpu (and the size of its cache). Try values such as 0, 2, 4, 8 or 16. A value of 0 will use straight overlap-save convolution. (A setting of 1 will effectively do the same, or more precisely overlap-add, but slightly less efficiently.) Also, the larger the number of partitions, the shorter the lag between input and output."
--------
mesure finale fenêtrée & pondérée au 1/6 oct: subjectivement un peu trop droit, cru, sera ajoutée par l'égalisation une pente légèrement descendante à partir de 200 Hz, -1dB/oct
le réglage final reste dépendant de la directivité des haut parleurs, de l'acoustique de la salle, et de la distance d'écoute.
Mesures au point d'écoute : Étude de Sean Olive:
une base indicative, la réponse cible selon Brüel & Kjaer :
profil général façon B&K curve au point d'écoute : beaucoup plus agréable
autour de la courbe cible: Mitchco
http://www.computeraudiophile.com/blogs/mitchco/what-tone-quality-your-audiophile-system-126/
Francis Brooke
article de Floyd E. Toole
Journal of the Audio Engineering Society Vol. 63, No. 7/8, July/August 2015 (⃝C 2015)
"The Measurement and Calibration of Sound Reproducing Systems"
http://forums.melaudia.net/attachment.php?aid=12107
et : calibration acoustique:
http://www.taylormadesystem.com/PDF/IRCAM%202007.pdf
------------------
-------
Bien qu'ayant perdu l'interface sympathique de Crossvolver, cette configuration VSThost est plus stable et le fichier TXT est automatiquement rechargé par VSTconvolver à l'ouverture du programme. Encore quelques clics.
---
exemple de réalisation avec VSThost :
http://www.jdm12.ch/Audio/2016.asp
Autre mise en œuvre :
"Le système de Greg, passage au FIR " sur Mélaudia
http://forums.melaudia.net/showthread.php?tid=5844&page=2
-----------------------------------
http://www.casadelsuono.it/project/default.asp
---------------
--------------
----
-
3 : Tout dans Foobar
Pour intégrer convolver VST dans Foobar :
s'il n'y est pas , installer foo-vst adapter de Yegor Petrov :
https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Components/VST_adapter
: fonctionnalité ajoutée dans préférences : VST plug-ins
puis, pour que convolverVST soit reconnu par foobar, en complément des installations précédentes , ajouter un chemin aux variables d'environnement système tel décrit ici
http://convolver.sourceforge.net/vst.html
avec windows explorer, clic droit sur poste de travail --> propriétés système
--> avancé ---> variables d'environnement:
et créer une nouvelle variable "path" désignant le chemin du dossier d'installation de convolver:
....ok
du dossier convolver, faire une copie des .dll suivantes
les coller dans le dossier components de foobar
donc, là :
-------------------
procéder ensuite à la prise en compte de convolver VST par foobar:
lancer foobar, préférences
components --> vst plug-in --> add,
désigner convolverVST.dll dans le dossier composants de foobar,
et redémarrer l'application.
à l'ouverture, convolverVST est maintenant listé dans les vst plug-ins:
mise en fonction : DSP manager : passer convolverVST --> active DSPs, à situer en fin de chaine des dsp, --> configure selected :
on retrouve le fichier txt de configuration six voies.
adapter le nombre de sorties en vst si besoin :
la carte de sortie est alors préférablement configurée en asio direct:
Il faut configurer le "mapping" dans l'ordre imposé par la logique Dolby:
(1/ left) (2 / right) (3 / center) (4 / LFE) (5 / surrounrd left) (6 / surround right)
en correspondance avec les indications données par le vu-mètre de foobar
indiquées : front left / front right / front center / LFE / rear left / rear right
------------------
Mesure à travers les corrections et filtrage
Le moyen est alors désigné pour faire des mesures avec un pc unique:
micro de mesures + préampli --> carte interne -- > entrées REW
REW sorties vers VB.audio-hificable, idem réglage enregistrement dans win
et envoi via foo-record dans foobar
réglages de l'enregistrement virtuel
------------
----
cette dernière solution est la plus simple si foobar reste la source exclusive ou que les sources externes y sont redirigées avec foo_record.
Avec une seule application ouverte, la conso cpu est réduite.
En lecture cd externe, et huit convolutions ( environ 65000 taps )
spectrogramme des voies filtrées :
Beaucoup plus robuste que solutions 1 et 2, peu de perturbations lorsque on bouge une fenêtre ou manipule une application annexe.
----------------
Windows 10 :
test avec un ultra portable Asus X205 d'entrée de gamme,
les processeurs à basse consommation autorisent l’absence de ventilation, ni bruit de disque dur interne. Excellente stabilité.
Installation identique, pour accéder aux variables d'environnement à partir du panneau de configuration:
pour ajouter la variable:
Conso cpu stable à 10 % avec 6 x 8200 taps
avec réglage ConvolverVST : 1 partition
------------------------
------------
-----
-
annexes :
-
Pour les sources externes à diriger vers vsthost : mise en fonction d'une M-Audio FW solo - permettant de disposer d'entrées stéréo analogiques ou numériques.
Le switch sources traditionnelles / dématérialisé se fait dans ASIO4ALL.
écran global des contrôles:
-------------------------------
---------------------------
avec Windows Média Player
activer convolver sous "lecture en cours", plugin, options, DSP audio:
réglage carte en 5.1 pour du 2x6 voies
convolverVST dans Jriver Jukebox V14
Il y a un bien un plug-in de convolution intégré d'origine :
"JRivolver" : http://yabb.jriver.com/interact/index.php?topic=68828.450
tools -> plug-in manager -> add plug-in -> add direct show dsp filter -> convolver plug-in ...
ou convolver filter
convolver filter plante et convolver plug-in
ne semble pas disposé à reconnaitre les sorties de la carte sous XP ...?
-------------
dans ce cas -> installation de convolverVST:
player--> play back options --> DSP studio --> add plug-gin --> VST plug-in
config carte son en direct sound: Le mode asio présent sur la version 12 a disparu sur la V. 14
qui par contre accepte les plug-in VST
----------------
-------
-----
autour du sujet :
-
http://yabb.jriver.com/interact/index.php?topic=87538.0
http://thewelltemperedcomputer.com/SW/AudioTools/RoomCorrection.htm
http://www.linkwitzlab.com/Attributes_Of_Linear_Phase_Loudspeakers.pdf
un how to de Mitchco avec Acourate :
http://digitalroomcorrection.hk/http___www.digitalroomcorrection.hk_/Digital_XO_%28Theory%29.html
de l'audibilité du group delay dans le grave
http://www.dafx14.fau.de/papers/dafx14_stephan_herzog_low_frequency_group_delay.pdf
Convpare de Jean-Luc Ohl :
http://www.ohl.to/audio/downloads/convpare.zip
DRC :
http://drc-fir.sourceforge.net/doc/drc.html#htoc162
alternative globale avec APO equalizer:
https://sourceforge.net/projects/equalizerapo/
Ultimate Equalizer: présentation
http://www.aesmelbourne.org.au/wp-content/media/Ultimate%20Equalizer%20Presentation%20Final.pdf
-
Commentaires
2GABYBAROJeudi 18 Février 2016 à 10:49Bonjour,
j'ai utilisé ces diverses configurations depuis plusieurs années, elles fonctionnent toutes pour de la multi-amplification.
Hifi cable fonctionne sans problème en asio et en wasapi exclusive
Par contre, j'utilise des convolutions longues ( 24 et plus de taps ) et les utilisations du processeur sont assez différentes.
De même, les résultats des plugins de convolution qui ne sont pas tous aussi efficaces sur les signaux de faible amplitude ( <-50db ).
Ma dernière configuration : hificable, host: Pedalboard2, plugin: freeverb3 impulser2 avec windows 7.
Je pense que chacun doit expérimenter tout ça.
Bye
Ajouter un commentaire
Un grand merci pour m'avoir mis sur la voie. J'ai pu appliquer la configuration avec VSTHost et ConvolverVST avec succès et voici mon tuto :
Windows PC as a FIR Audio Processor: how to?