Direct SDM makes DSD sources pass through unprocessed. It is not related as such to “PCM settings” or “SDM settings” below. PCM settings apply for PCM output mode and SDM settings apply to SDM output mode. Direct SDM only excepts DSD sources, and also locks volume setting of PCM sources to fixed -3 dBFS.
Minimum phase filter has all energy concentrated at the beginning of the impulse and thus have no “pre-ringing” instead all is “post-ringing”. Minimum phase filters pass all frequencies as quickly as possible. Analog filters are typically minimum phase. With a minimum phase filter, there’s no output for an event that happens in future. Minimum phase filter only “looks” back in time.
Linear phase filter has all energy concentrated in the middle of the impulse and thus as equal amount of “pre- and post-ringing”. Linear phase filters pass all frequencies in equivalent time. Linear phase filter introduces some amount of delay, but the output can contain information from an event that will happen later in future. Linear phase filter “looks” both back in time and also into future.
Outputs of both can have information from an event that happened short time ago in past, for a minimum phase filter this can be twice as long.
Linear phase filters always introduce latency, longer the filter, more latency they have. Yes, MScaler by definition also has almost one second of latency.
No, you would cut the potentially long (more than half a second at 705.6/768k) pre-ringing.
I would say that would be bad idea because the filter would change during the song.
Hmmh, there shouldn’t be any effect on that, just played silence is difference.
Input doesn’t matter, but if your output is 705.6k then 1 million taps is 1.417 seconds with peak energy in the middle. And this is of course without any additional FIFO buffers or similar.
Just tested, I have 11 second from pressing play until music with sinc-M (10 seconds without using convolution file). My chain is Roon/HQPlayer 4.3.3 -> microRendu (updated 2.8 with NAA 4.1.1) -> USB converter -> toslink -> DAC.
If the latency was only a couple of seconds I would not mind, but 11 seconds is an eternity
I do not have a problem with that starting latency. As soon as I see the time bar begin to move I know in few seconds the music will start. I use that time to have the first sip of my beverage.
There’s some time taken to initialize and kick up the DSP engine / player engine. It is not all filter delay.
I think your major problem is the Toslink and thus very low output sampling rate. Lower the output sampling rate, longer the delay with million taps. For example 1000000 / 192000 = 5.2 seconds total.
How frequently are you stopping and starting then? 11 seconds sounds short time compared to time taken to change a CD or LP disc…
On my old workstation, from pressing play in HQPlayer Client to hearing music with sinc-M and ASDM7 to DSD256 output takes 3 seconds to hear music. Of which one second is the initial silence playback.
Ok, problem is that I don’t like sinc-M when using USB (to edgy) Seems filters change a lot depending on sample rate, for example I liked short-mp with USB but with toslink in 176/192 its rather dull.
But the biggest problem with latency is stopping music. For example, phone call and you want to silence the music before answering. Don’t Roon send “stop” so you can stop without latency?
You can run DSD files through separate processing to SDM/DSD output as well. In which case you need to disable Direct SDM and then the left side pane of “DSD sources” applies in addition to other settings from “SDM settings” except oversampling filter, when output mode is “SDM”. If output mode is “PCM”, the right side pane of “DSD sources” applies in addition to the settings under “PCM settings”.
When I control HQPlayer playback from it’s own library with HQPlayer Client, with same settings, start takes 11 seconds and stop takes 1 second.
If Roon cuts the stream before calling stop, then it’s the end-of-track case and you don’t have quick stop. This is because Roon calls stop also between tracks when format changes and you would have several seconds from end of the previous track cut out.
So there is a much shorter list of filters under SDM-PCM Conversion. If I have selected (lets say) poly-ext2 under SDM-PCM Conversion and poly-cinc-long-lp under PCM…what is actually being used?
Sorry for the questions but im finding all this very interesting
When you play a PCM file (flac, AIFF, WAV, …) the PCM filter will be used - in your example poly-sinc-long-lp.
If you play a DSD file (DSF, DFF) then the SDM-PCM conversion will take place and the corresponding filter will be used - in your example poly-sinc-ext2
Thanks for that Dirk. On DSD playback, it still shows as the PCM settings in the signal path under “HQPlayer”, not the DSD settings, hence my confusion/question…wonder why that is?
Also would you know why there are reduced filter option under SDM conversion?
When DSD is converted to PCM those DSD-to-PCM conversion settings are used to convert DSD source to 1/16th rate PCM. And then from there on it is processed just like PCM would, so for example further conversion to some other rate with the regular PCM settings that apply also for PCM sources.
Converting DSD to SDM/DSD is completely different matter than converting DSD to PCM. Hence completely different settings too.
No, Roon Endpoints (RoonBridge/RoonReady) are Roon-specific, just like NAA is HQPlayer-specific. These are two different implementations of similar thing.