How to convolve multichannel filters from Acourate?

Up until now I was running Roon in a PC in my bedroom that streamed to an audio PC with HQPlayer connected to the DAC. I created digital crossovers and room correction filters in Acourate that I then convolved in HQPlayer to have an active 3-way stereo system.

I’m trying to do without HQPlayer, but having trouble with implementation in Roon. I installed RoonBridge on the AudioPC, and can see it from Roon Audio Settings showing ASIO Lynx Hilo USB which I named AudioPC. Before engaging DSP engine I played a song and could see the DAC receiving data OK.

I set AudioPC DSP engine to upsample to 176kHz or 192kHz so it’s always an integer multiple. No DSD used. I played a 44kHz file and could see at the DAC it was receiving 176kHz data, as it should.

In the DSP engine I added the convolution filter and pointed to a zip file that contains all the wav filters created in Acourate (e.g.; Cor1S176.wav, Cor2S176.wav, Cor3S176.wav, and same for 192, 48, 88, 96kHz). Note these are stereo filters. Played the song and strange sounds come out. Clearly something is wrong.

Thoughts?

cheers!

Bump. Hoping to get input :slightly_smiling_face:

I think, you need @support here. :slightly_smiling_face:

Ok, seems something’s wrong with my approach. Should I email Support instead of hoping for someone to chime in?
Or other alternative approach?

Hello @Horacio_Lewinski,

I believe you may need to create a custom convolver text configuration file to get things working with Roon’s DSP Engine.

We include some further information about the convolution engine in our Knowledge Base.

In addition, here is some further information on how to create a convolver configuration text file. Some further examples can be found at this link.

-John

John,

Thanks a lot for the guidance. I will look into this. Before going down that path, is there a way to come up with filters developed from Acourate where I can just point the Roon convolver to a zip file with the filters are and enjoy music, as described in the KB? The need for such a script is because my filters are stereo, or because they are wav instead of dbl, or other?

Regards

I guess there’s not much interest in supporting users like me. Maybe including DSP engine was more towards catching flashy news or simpler implementations?

I haven’t been able to figure the config file syntax for a 3 way active system. And there doesn’t seem to be appetite for supporting that here.

I guess I will need to go back to HQPlayer.

Horacio I am happy to help you.
You have basically two options:

  • generate a 6 channel convolution file concatenating your 3 stereo files, and import it in Roon as .WAV - Audacity can do this, make sure you disable all dither and resampling.
  • build a .cfg convolver file as described in the documentation, zip it together with your existing files, and import it in Roon

If you provide me with your channel layout, I can build this file for you. It works, my current setup is identical as yours (3 way stereo active filtering, so 6 channels, done in Roon or HQPlayer).

Alec,

Thank you so much!

Mine is an active 3-way stereo: 1 channel to subwoofer, 1 for midbass, 1 for midrange plus treble (passive xo still in there).

On Acourate I created stereo filters, so for example Cor1S176.wav , Cor2S176.wav and Cor3S176.wav.
I have Roon setup to up sample everything to either 176k or 192k so that it uses integer multiples. I only do PCM up to these rates.

Looking forward to it!!

Ok so on the Dac/amp side:
Sub Left > channel 1
Sub Right > channel 2
Woofer Left > channel 3
Woofer Right > channel 4
Mid/Highs Left > channel 5
Mid/Highs Right > channel 6
Correct ?

Correct! Exactly

OK here are two cfg files, one for 192K rate, the other for 176.4K.

  • Download them into an empty folder “Horacio”,
  • Add CorS1S176.wav, CorS2S176.wav, CorS3176.wav, CorS1S192.wav, CorS2S192.wav, CorS3192.wav to this folder
  • Zip the whole folder in a file Horacio.zip
  • Import Horacio.zip into Roon convolution engine

NB: if you want to further edit the CFG files, channel numbers start at 0, so 6 channel is from 0 to 5.

EDIT: here’s the content of the 192K configuration file

192000 2 6 0
0 0 
0 0 0 0 0 0 

Cor1S192.wav
0
0.0
0.0

Cor1S192.wav
1
1.0
1.0

Cor2S192.wav
0
0.0
2.0

Cor2S192.wav
1
1.0
3.0

Cor3S192.wav
0
0.0
4.0

Cor3S192.wav
1
1.0
5.0