Any plans for convolution and parametric EQ? [Released in Roon v1.3]

Hi David,

Just noting that you don’t need to use an NAA with HQPlayer to use it’s inbuilt convolution engine. You can just use HQPlayer on the listening room PC (subject to specification requirements for different filters etc.)

@brian. Bob Stuart has now answered a long list of questions over at Computeraudiophile. In his answers to Q44 and especially Q65 he outlines how MQA can deal with DSP (room correction etc.) and still ‘authenticate’ the stream How would this work in Roon with a device like the microRendu? Would the last part in ‘MQA decode 2’ take place in the microRendu or Roon server? Would microRendu (or any RoonReady network endpoint) be able to report back to Roon server which DAC is connected, to enable selection of the correct DAC profile in MQA?

One thing to keep in mind–just because they entertained an interview doesn’t mean that MQA suddenly started spilling even more details in their partner relationships. For the most part, what’s in the interview is the same as the information that we have.

How would this work in Roon with a device like the microRendu? Would the last part in ‘MQA decode 2’ take place in the microRendu or Roon server?

The server is the more sensible place from our perspective, but Bob’s answers (as you noticed) do not address this clearly, so we’re not sure.

A few thoughts on this:

  • Forcing each RoonReady partner to license IP from MQA one by one (as would be necessary if each one was going to distribute an MQA decoder) seems like a big hassle and slow-down for MQA. However, it would also enable them to collect more license fees.
  • If DAC-specific profiles were used, Bridge manufacturers would need to issue firmware updates to distribute new ones, which would add more slow-down and hassle for everyone.

We are in a great position to manage those details in a single place in the server, but as before, we still don’t know whether we will be allowed to or what exactly it will look like.

Would microRendu (or any RoonReady network endpoint) be able to report back to Roon server which DAC is connected, to enable selection of the correct DAC profile in MQA?

YES. We built this capability into RoonReady and RAAT from the beginning, in part because we were aware of MQA’s sensitivity to DAC identification issues. We can extract the identifying information from any USB device connected to Roon or a RoonReady bridge.

That said, the world is not quite that simple: not all DACs can be positively identified over USB–many manufacturers take a shortcut and call their device “FooCorp USB Audio 2.0” instead of “FooCorp Product”, or neglect to use unique USB identifiers for each product. We have no idea if or how MQA will elect to handle cases like this, since in those cases it is impossible to really know exactly what the DAC is.


Thank you very much for a quick and clarifying answer @brian. There are still quite a few unknowns in this it seems, but I am pleased to know that DSP treatment of an MQA stream is part of the design.

1 Like

Any news on this subject?
I’m kind of hoping that someone might say “yep, it’s in our roadmap for delivery in …”

Am I being too ambitious?

1 Like

Let’s drop a flag for @brian and see if he has any news about this.

For anyone interested in implementing room EQ with FIR convolution filters and Roon immediately, note that HQ Player has that capability.

It is on the roadmap. We generally don’t discuss release dates for features until they are imminent.

My feeling is that we will probably “walk” before we “run” with DSP features. So the more widely used stuff–upsampling, speaker correction, eq, and multichannel features are likely to come before more technically advanced features like convolution. But I don’t know that we’ll phase it out like that for sure.

Also keep in mind that we’ve focused on audio distribution and sound quality for the past six months, and it’s time for us to give metadata and library management features some much needed love. I expect some audio-related improvements to happen in parallel to the extent that is possible, but more of our development resources are going to be focused in other areas in the immediate future.

Not trying to bum you out, just trying to set reasonable expectations. We have been working on DSP features, and have some neat stuff in the prototype bin waiting to be finished up and released. :slight_smile:

When you say convolution, is the approach to use vst files generated by other rc applications or do you plan to do your own measurements and filter generation? Maybe a simple first approach would be to work with the leading players like Dirac and Acourate to ensure that Roon can use their ASIO drivers as an Audio output? Let them do the convolution and output to the DAC.

When I say “convolution” I mean loading impulse response files (as JRiver, Audirvana, HQPlayer, AcourateConvolver, etc. do). I don’t see us taking responsibility for doing the measurements anytime soon.

Roon already supports ASIO–so no reason not to use those drivers today. I know that we have plenty of users using Dirac. If there are compatibility issues with something specific, let us know and we’ll look into it.

I may well be in the minority but the metadata stuff is just fine for me :slight_smile:

I’ve never been much into that sort of thing, and only ever deal with it to make sure the albums have the right names and cover art - the rest is just a bonus to me. But I mainly listen to electronic/pop with occasional others, and dont have any bootleg or vinyl needle drops or similar.

I understand that one of Roon’s key USPs is metadata, but I for one am much more excited about EQ etc as it will have a much bigger impact on my enjoyment. Although 1.2 was all about ‘sound’ and was no doubt a huge undertaking, it was mostly behind the scenes stuff in my general use case, so am looking forward for more toys to play with! :wink:

With a lot of new RoonReady coming out (microRendu ordered) its going to be increasing frustrating to deal with Room Correction for example…


Why frustration?

Mainly because I want to use a microRendu (assuming it ever ships and is actually good) and finally clear computers out of the lounge, but then I’m ‘forced’ between using Roon & Dirac OR Roon & microRendu. I guess the frustration is knowing that I’m so close to a great system, but that I can’t quite get there - not without going down the HQP route or buying a hardware Dirac box, neither of which I’m keen on.

The simplest solution is Dirac or AU/VST in Roon - but obviously by simplest I mean for me, not the Roon team! :wink:
RC has a bigger impact than anything else in day to day ‘enjoyment’ of my system but it sounds like it could be a long wait if we’ve got a full meta-oriented release coming first…

Yeah, yeah, I know I didn’t have to buy an endpoint, but it’s all part of the Roon ecosystem that was planned, and I want to take advantage of it… and it’s a new toy… :grinning:

Aah, so the issue is Roon cannot accept the Dirac’s output as input. Would be great if it could… Roon Core > Dirac software > Roon Core > Roon Ready endpoint > DAC

1 Like

Yup, it sure would.

Brian had mentioned an idea for implementation via plugins, but it didn’t sound trivial so I’m not supposing it will be soon. The only other options I can think of are your ‘loopback’ type suggestion (which from memory I think has been somewhat ruled out already), or the ability for Dirac audio processor to send to a RoonReady endpoint which seems very unlikely all round.

Yeah, I know. Everyone has their thing, and no-one’s is the same. And it sucks that using RAAT means giving something else up.

These limitations are all in Roon, not RAAT. The next step, from a technical standpoint, is getting Roon’s engine to the point where it has well-defined places to insert signal processing steps. Right now, the architecture is optimized for bit-perfect playback with a few special cases (volume leveling, crossfade, and compatibility-oriented conversions).

Once that’s done, we should start seeing steady progress.

Supporting impulse-response filters generated by other software is not hard in principle. It’s having confidence that we’ve done it “right” that is tricky. In the end, it is “just” an FFT Convolution applied to a signal.

Just because HQP appears to have that capability doesn’t mean it works. Have any of you personally tried generating a multi-way setup using HQplayer and load mono .wav files which incorporate delays for each speaker?

I have done it. I’ve tried to work with Jussi to resolve obvious problems with his convolution engine. He hasn’t responded.

Based on my experience with the current version of HQP, the .wav filters do not work properly in a multiway setup. In particular, I use a 2.2 setup with mono subs. I use pipeline to sum channels for the mono subs. I’ve set everything up correctly and the delays are all screwed up in HQplayer. To my knowledge, there’s been no verification that HQplayer convolver actually works in a multiway setup with delays built into the .wav IR filters. Other than simple 2CH setups, I don’t see how HQP is a decent Convolver solution.

If someone could show me I’m wrong and show me how I’ve set things up incorrectly, I’d be happy because I love the HQP integrated volume control with Roon.

An easier solution would be to allow Acourate Convolver to be integrated with Roon over network just like HQplayer. Acourate Convolver is the gold standard for convolution. Unlike HQP, one can easily verify their filters are working with Acourate Convolver.

No, I haven’t used HQP for multichannel convolution and I’m sorry to hear it’s not working for you. We’ll drop a flag for @jussi_laako in case there is something he can do to assist.

In the last two days I’ve started 2ch convolving with HQP, after generating measurements in EQ Wizard and a WAV file in rephase, but haven’t yet attempted phase correction. I just made corrections to the bottom end up to about 500 Hz. So far I’m enjoying it. Would definitely be interested in checking out Accourate Convolver.

+1 for some kid of integrated solution. Having discovered what DLRCS can do for the sound in my room, I am loath to give it up, but I can’t get it to play nicely with Devialet AIR. I am using Roon on a NUC with RoonBridge on a Mac (just for AIR) so personally, I don’t mind where the RC ends up, as long as it starts with Roon and ends with AIR.

I have, I’m using it to process 3D HRTF for headphone listening and it is working fine for me… (I can listen 5.0/5.1 surround through headphones)

If it is gold standard, why don’t you use it instead?

Thank you Jussi. The beta version you sent me today works perfectly for my mono sub setup. The delays all work well now. Thanks for helping me!

1 Like