Jump to content
IGNORED

A toast to PGGB, a heady brew of math and magic


Recommended Posts

I was able to test upsampling and native DSD on both Linux (EuphonyOS) and Windows (Windows 11 Pro) with the T+A 200. Both fed native DSD files to the T+A without issue. However, HQPlayer upscaling performance was noticeably better on Linux. Both were able to upscale to DSD 1024, but Linux was able to do so using heavier filters and settings without skipping/bottlenecks.
 

This could be due to Euphony leveraging a real-time kernel, or because the ASLA drivers are just better - I'm not really sure. Regardless, the important thing to remember is that upscaling at this level typically requires a CPU with higher clocks, say 5.1 - 5.4GHz, to run optimally. I used an Intel 14900K, but higher-end Ryzen CPUs are likely to work as well. 

 

I discovered that DACs w/true native DSD are very few and far between. In addition to the other DACs mentioned, I believe the Wandala also has native DSD capability, but only up to DSD 256 IIRC. My personal recommendation would be the T+A 200 or the Holo May KTE. I've owned both and prefer the T+A for the extra utility and slightly more engaging sound, but I believe the May is a bit cheaper. YMMV. 

 

As for comparing DSD 64, 128, 256, 512 and 1024 with each other and PCM, that is a highly subjective and very personal choice. I would only caution against using HQPlayer upscaling to evaluate DSD and use native/converted files instead. The differences between in-line upscaled and native DSD can be significant. 
 

Lastly, @Zaphod Beeblebrox, what key features (if any) will PGGB-DSD provide that something like dBpoweramp doesn't (besides being limited to DSD 512)? I am very interested as your PCM version is/was outstanding. 

Link to comment
On 3/19/2024 at 1:21 PM, Zaphod Beeblebrox said:

That is a great question. PGGB DSD is built on the same principles as PGGB PCM which you have indicated you like:

  1. (Algorithm) Maximizing reconstruction accuracy using all of the information in the source track and upsampling to the required output rate: In the case of PCM the maximum output rate was up to 64fS. In the case of DSD, the maximum output rate can be 128fS, 256fS, 512fS or 1024fS. So, the upsampling algorithms remains the same as before, just that the output rate for DSD is a lot higher.
  2. (Precision) Maximizing reconstruction accuracy using high precision: PGGB PCM supports 64/128/256 bit precision as higher precision helps improve reconstruction accuracy in the audible range. The reconstruction accuracy in the audible range is only limited by bit depth and sample rate. For PCM, for most bit depths higher than 16 bits and sample rates higher than 8fS, 256bit precision helps to deliver the highest reconstruction accuracy in the audible range. With DSD, things are not as clear cut. Since DSD has a bit depth of 1, the amount of information that can be retained in the audible range depends on the DSD rate and also the modulator. Higher order modulators help retain more information in the audible range by reducing the quantization noise, higher DSD rates also provide a larger bandwidth to push the quantization noise out. So, the choice of precision becomes a function of the output sample rate and also the modulator order. There is no point in using higher precision for reconstruction if that information cannot be retained. Which is why for DSD, PGGB DSD uses adaptive precision. From what I have analyzed, 128bit precision works best for DSD rates. 256bit precision is an overkill other than for DSD1024 using 9th order modulator.
  3. (Modulators) Minimizing the quantization noise in audible range: In the case of PGGB PCM, I use noise shapers to keep the quantization noise in the audible range as low as possible.  The noise floor is limited by the precision used for computing and also the quality of the noise shaper. For 64bit precision, the limit is about -320dB. If a noise shaper is capable of achieving a quantization noise floor that is lower than -320dB for the given bit depth and sample rate, then it makes to go for higher precision which is 128bit. The limit for noise floor for 128bit (quad precision) is about -690dB. If this noise floor can be breached, only then does 256bit computing makes sense. For PCM, the noise shapers I use can achieve a quantization noise floor as low as -750dB in the audible range, which is why I provide the option of 256bit precision. For PGGB DSD, for DSD 256 and higher, the -320dB limit for 64bit computing is easily breached and for DSD rates 512 and 1024, the quantization noise in the audible range is -400dB or lower with 9th order modulators, which justifies the use of 128bit precision.

There is a cheesy cake analogy I like to give, (forgive me in advance):

  1. Algorithm: How good the reconstruction algorithms are, i.e. how well you can predict the intermediate samples. This determines the quality of the cake we baked.
  2. Precision: How fine/precise you can get in reconstructing. If you start with a bad reconstruction algorithm, it does not really matter how precise the flawed intermediate samples are! This is like the icing on the cake. If the cake is bad, a good icing does no good!
  3. Noise shaping/Modulators: This is the container where you store the cake, it decides how much of that icing you get to keep. If the container is too small, you end up mushing the cake or losing the icing. Too big a container may make the cake wobbly (i.e., there is a limit to how aggressive the noise shaper can be) 


Edit: Since not all DACs/Players support 48k DSD rates, I have also added an inter-rate conversion option, i.e. it will be possible to convert a 48kHz/96kHz/293kHz source track to DSD rates taht are multiples of 44.1kHz. I have tried to do this in a transparent fashion, the Jury is still out on if it is truly transparent compared to 48kHz DSD rates of the same tracks. PCM conversions will also benifit form this for some DACs that are capped at a maximum 44.1kHz rate.


Thanks so much for the detailed and comprehensive answer (as well as the outstanding cake analogy)! The main thing I noticed when converting PCM to DSD with the other software is how much of the noise, harmonics and tone seem to shift depending on DSD 64, 128, etc., It is fascinating to me how this can result in a "better" listening experience without necessarily adding or subtracting any musical information (pedantically, I suppose you could technically be adding and subtracting info in some circumstances, but you get my point).
 

So glad there are folks like you who understand these things at such a deep level and make turnkey solutions for people like me. Speaking of which, PM Inc...

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...