r/audiophile • u/euge_lee • Jan 15 '21
Upsampling music files to DSD... DSD256 to be exact. Theoretical question. Discussion
The logic of PCM upsampling by the “power of 2” makes sense.
But when upsampling to DSD, the upsampling is always set to go to 352.8kHz which isn’t by the “power of 2” for 48kHz or 96kHz files.
This is a theoretical question for me because I’m just playing around with Roon DSP settings and honestly can’t really discern a difference. It’s more “nerding out” than anything for me.
Is this “theoretically” insignificant that the upsampling isn’t by the power of 2? Would it be better to only upsample 44.1kHz files to DSD and just do standard PCM upsampling by “power of 2” for 48kHz and 96kHz files?
Curious and thanks in advance.
1
u/chapia Jan 15 '21
I think you may be down a rabbit hole at the end of a goose chase. :-) BUT, good on you for reading/researching and trying to understand the science/math behind it! That always makes me happy to see, especially in audio crowds.
Short answer: Power of two isn't as relevant when discussing a conversion from PCM (Pulse Code Modulation) to DSD (Direct Stream Digital) as it is in the resampling from one PCM sampling rate (not the same as bitrate!) to another (or one DSD rate to another, really).
(This could turn into a lecture series on sampling theory but I have to get ready for work so I'll spare us all; good news is there is a ton of information out there on sampling theory and resampling.)
PCM is storing the amplitude value for each of the points it records at 44,100 times per second or 48,0000 times per second. That amplitude value is stored as a 16-bit integer so you have a lot of "options" to choose from for any given amplitude. So, for example, a 1 second clip of 44.1 kHz, 16-bit audio would have something on the order of 44100*16 = 705600 bits of information.
DSD, on the other hand, only needs to store one bit of data for each of it's recorded samples. That one bit (0 or 1) simply indicates if the current sample is higher or lower amplitude than the previous sample. To note, there is no "absolute" amplitude information available in a DSD file because each sample is relative to the previous sample. For this to work, though, you need to sample VERY (by audio standards, at least) fast (Megahertz, not kilohertz.). Therefore, 352.8 kHz you mentioned doesn't seem like actual DSD to me...a quick search shows that may be something called DXD. (I don't know about that and can't look into it more right now.)
There is no* reason to convert your PCM to DSD.
(* there may be a reason in some weird corner case where you're trying to run a DAC in a sweet spot or optimize around some esoteric aspect of a particular setup but, for the average person in the 99.9% use case, there is no reason.)
References:
https://www.whathifi.com/us/advice/what-dsd-audio-how-it-works-where-to-download-files-and-more (Full disclosure: I only skimmed it to fact-check myself before posting.)
https://www.highdeftapetransfers.com/pages/formats-explained