For years, I've had a theory that each DAC has a sampling rate that works best. Some of the origin of this notion came from
the 2010 post from Benchmark media in which they described how they arrived at 110 kHz as the internal upsampling frequency for their DAC1. However, arriving at the best sampling rate for a given DAC by ear can be a tedious process with modern DACs, like the Khadas Tone Board, due to the large number of options. So, I thought I'd try using REW to measure sweeps at various sampling rates to see if I could spot anything in the SPL, Impulse, or Distortion plots that might point to an obvious objective choice.
What I found with the Khadas Tone Board was rather surprising, especially given how much I enjoy what I hear subjectively. Since acquiring the Tone Board last week, I've been feeding it a 352.8/384 kHz upsampled signal from Roon, described in Roon's DSP settings as "Max PCM Rate (Power of 2)". I spent a few minutes listening without upsampling, and without giving it much thought, this setting seemed like the way to go.
My test rig is infinitely more humble than what Amir and others here are using. My ADC is the popular Focusrite Scarlett 2i2 (gen2). I've configured REW to sample the incoming signal at 96 kHz with sweeps from 0 Hz to 48 kHz with 2M samples. I used REW's "Generator" function to create a WAV file with the sweep, including a timing reference. Settings for this test file look like this:
I then imported this file into Roon, where it was convenient to use Roon's "Headroom Management" and "Sample Rate Conversion" features to do level matching and feed the DAC the sweep at different sampling frequencies. Some might cringe at resampling a test signal, but doing things this way made it easy to match sweep duration and timing between Roon and REW. This, and a bit of futzing with gain structure, and I was off to the races.
So, let's see what the Khadas Tone Board looks like when fed a 48 kHz PCM signal. Reasonable DACs have ruler-flat response at REW's default scale, so I chose to zoom in such that the Y-axis covers a range of only 1 dB. Frequency range I'm viewing is one octave below 20 Hz and one octave above 24 kHz (10 Hz to 33.941 kHz):
Oh dear. What's that? I don't recall seeing these "ripples" in response in Amir's measurements. The Step response looks "textbook", and no unexpected issues with the distortion plot. So, I thought I'd measure a couple of other DAC I had on-hand for comparison. Here's the S.M.S.L Sanskrit 10th MK II and venerable iFi Audio iDAC2 compared to the Tone board:
So, there are a few
tiny ripples with the SMSL, but nothing like the craziness goin on with the Tone Board. The iFi Audio iDAC2 measurement seems to confirm that my test rig is working okay (besides possibly a little rolloff at each end of the audio band). Now, these ripples are quite low in level (recall the 1 dB scale), but they can't possibly be a good thing.
With my rig validated, let's have a look at the various sampling rates that I can feed the Khadas Tone Board to see which looks best. We'll start with the available PCM sampling rates. I tried rates based on both 44.1 and 48 kHz and saw little difference between them, so I'm only showing plots based on multiples of 48 kHz here:
As sampling rates go up, "squiggles" settle down, which would seem to be a good thing. I don't see how I could possibly hear a difference given the small magnitudes shown here, but, again, without overthinking it, I chose "Max power of 2" upsampling on first listen. Could be luck, or perhaps my old ears are not entirely gone yet.
Now, let's try supported DSD sampling rates:
Hello! Now, that's more like it. The "horseshoe" shape is probably a fairly accurate plot of the native response of the ADC in my Focusrite Scarlette 2i2 audio interface. If I align the three plots, it looks like DSD64 has a tiny bit more high-frequency extension (a bit unusual; DSD128 and DSD256 are slightly better with my other DSD-capable DACs).
Differences among these three DSD plots are way too small for me to hear, but DSD64 requires less processing power from Roon, and the infinitesimally greater extension is not objectionable. From here out, I'll be pinning the Khadas Tone Board with Roon upsampling to DSD64, based on these plots. Success!
Roon Does have a few DSD upsampling parameters with which I may further experiment. Smooth vs Precise, Linear vs Minimum Phase, 5th order vs 7th order, "CLANS" or not. So, sixteen combinations in all (after settling on DSD64).
See what I mean about this being a challenge to do entirely subjectively (by ear)??! Well, I hope this was helpful. Enjoy.