Adust volume when playing DSD files


I use Roon (last version) in integration with a Innuos Zen Mk3 : ZEN Mk3 – Innuos – High-Fidelity Digital Music Servers and Streamers paired with a DAC Audiomat Tempo 2.9 : Convertisseur Audiomat Tempo 2.9 - High End Audio with “DSD over PCM” setting in DSD Playback Strategy, as my DAC (with Amanero 384 USB module) only works in this mode.

The installation is working without preamplifier as I use Roon control volume via DSP function, so the Roon Volume Control Mode is set on “DSP Volume”.

I control Roon from my tablet or my PC and all seems to work perfectly except that all DSD files aren’t played as such but like PCM ones (Roon Signal Path shows me a conversion from DSD to PCM and the DAC, thanks to its Lock light in green, confirms to me that it receives PCM)

This conversion of DSD files to PCM is consecutive to the fact that I have previously settled the Roon Volume Control Mode on “DSP Volume” because if now I set the Roon Volume Control Mode on “Fixed Volume” I notice that there is no more conversion in PCM (Roon Signal Path shows me a DSD without conversion and the DAC thanks to its Lock light now in red, confirms to me that it receives DSD)

So my question is simple : how can I play DSD files, without PM conversion while being able to adjust the Roon volume ?
A Roon plugin ?
Or maybe it will be possible on a future Roon update ?

I thank in advance the forum users for the help they will be able to give me.


Hi Jean, welcome! The simple answer is: you can’t. There is no way to adjust volume or use DSP in general with DSD without a conversion. This is a limitation of DSD, not Roon.

Likely you will not replace your DAC with one with volume control. Here is an example for a passive volume control.

Sure you can. HQPlayer does it.

There is still conversion happening under the covers that doesn’t preserve the 1-bit nature of DSD. When DSP is done in PCM, the steps are:

  • Convert 1-bit to multi-bit (e.g. 64-bit floating point)
  • Down-sample to a lower frequency (e.g. 352.8 kHz)
  • Do DSP
  • Up-sample back to original DSD frequency
  • Convert multi-bit back to 1-bit using a delta-sigma modulator.

When DSP is done in “DSD”, this is what happens instead:

  • Convert 1-bit to multi-bit (e.g. 64-bit floating point)
  • Apply a low-pass filter to remove most quantization noise
  • Do DSP
  • Convert multi-bit back to 1-bit using a delta-sigma modulator.

It looks somewhat simpler, but depending on the DSP, it can be a lot more resource-intensive than PCM. This post describes this in more detail.

Thanks everybody for your help and especially Marian for your very detailed and argued answers, which unfortunately confirm what I thought.

So I think that the most qualitative solution consists in inserting a (passive) preamplifier in the musical chain.

Without going to a solution as simple as Douk Audio : Douk Audio Fully Balanced Passive Preamplifier Pre-Amp XLR/RCA Volume Controller I thought I’d rather go for this type of device : HATTOR AUDIO Préamplificateur Passif Symétrique Atténuateur Khozmo Motorisés avec Résistances Vishay SMD - Audiophonics or WWW.KHOZMO.COM - High Quality Passive Preamplifiers as I have to control 2 Tsakiridis Orpheus 211 mono amplifiers (triode 2 X 20 Watt) :

Of course, I am open to any suggestions from you.


You should ask @jussi_laako about how HQPlayer adjusts DSD volume. I believe that it is better than user an analog device to control volume…

HQPlayer modulators remodulate the stream using given modulator gain (and optional delay for multichannel speaker setup). Simplest path is when there is no rate change. But usually I would recommend to upsample lower rate DSD to higher rate output when applying gain, since it provides extra headroom in the output.

Usually this process is lighter than upsampling some PCM to DSD.