Roon DSP resampler [transcoding]

I am using ROON ARC a lot. Since smartphones resample to 48 khz I found it better to convert everything I download to OPUS. OPUS comes with the Speex resampler inbuilt, but I suppose ROON resample the wave-files to 48 khz before it is sent to the OPUS-codec. I am curious. What resampler do ROON use? Is it one of the general available or do ROON have it’s own resampler?

Moderator edit: Title update to aid clarity … [transcoding]

1 Like

Hi @Par_Linden !

Roon’s sample rate converters use fully synchronous, polyphase interpolation.

You can read more about the implementation here: https://help.roonlabs.com/portal/en/kb/articles/dsp-engine-sample-rate-conversion

Yep, but the OP wanted to know what software package was used, like SoX, or did Roon generate it’s own code to do such.

1 Like

All the code in MUSE (previously Roon DSP) has been built from scratch and is proprietary by the Roon team.

How do you know everything in MUSE is built from scratch.

There are various update notes saying they rebuilt the various DSP’s ‘from scratch’ , like for example version 1.3.

Plus, nearly 100% of Roon’s signal processing code in Roon’s Core has been re-built from scratch, using 64-bit floating point processing throughout, including the implementations used by pre-existing features like Crossfade and Volume Leveling.

That text says nothing explicitly about resampling. If ROON uses Sox, for example, it might just mean that the source code is compiled in conjunction with rebuilding MUSE.

The other link had Brian explain their in house code:

We own our DSP code.
All integer-ratio down-sampling uses filters designed by Meridian. As of the Roon/Sooloos split, these were the same filters used in their Sooloos products (we have no reason to believe that this has changed since). These are minimum-phase FIR decimation filters.
Asynchronous down-sampling uses polynomial interpolation. This is only used for AirPlay.

That text talks about filters, which are not the same thing. It is also not clear if resampling is part of MUSE or if it is purely a software package that MUSE communicates with.

Clearly regardless, the actual transcoding between different formats, for example between wav and OPUS, is performed by software packages that are not part of MUSE. My question concerned whether the resampling in connection with the transcoding to OPUS is handled by OPUS’ built-in resampler or by another external resampler, and if so which.

I see, the actual resampling of the files themselves between formats I don’t know, nor can find, but I am very curious to see about this.

If it was using a 3rd party resampler it would be credited like all the others non proprietary software is.

Al copyrighted non RoonLabs components are available to see via the app.



1 Like

Still, this license-info does not say if the resampling is done by the OPUS-code or if it is done in ROON DSP prior to converting to OPUS.

Is only used with ARC. As such, you will find the copywrite reference information in the Copywrite section of the ARC app.

Any up or downsampling done is done before opus encoding as can be see in the signal path quite clearly and is done using Roons bespoke DSP engine Muse same as anything else. On the phone it then converts back to pcm to apply any additional DSP processes you have or is required for the final signal path. Muse is their own code as has been said and pointed to posts about Roons signal processing.