Saturday 18 June 2022

Notes on DAC DSD (1-bit PDM) measurements going forward...


In the early 2000's, we witnessed the battle over hi-res audio in the form of SACD vs. DVD-A. SACD, the brainchild of Sony, utilized a 1-bit Pulse Density Modulation (PDM) method they called DSD (an advertising term) whereas DVD-A had the ability to store up to 24-bit, 192kHz Pulse Code Modulated (PCM) digital audio data (multichannel up to 24/96).

From the beginning, there were concerns about this push towards 1-bit systems into the consumer space along with claims that 1-bit PDM should form some kind of archival foundation for music. There were critics include Lipshitz and Vanderkooy - see their paper "Why Professional 1-Bit Sigma-Delta Conversion is a Bad Idea" from the September 2000 AES. And the next year in May 2001, they followed up with "Why 1-Bit Sigma-Delta Conversion is Unsuitable for High-Quality Applications". Even Bob Stuart chimed in on the unsuitability of DSD for "high-resolution audio" back in 2004. This is no surprise since Meridian was firmly with DVD-A including developing the MLP compression system which subsequently has been licensed by Dolby and renamed TrueHD; it looks like Dolby and Meridian had an arrangement dating back even to 1998.

These concerns around fidelity and the unsuitability of 1-bit PDM as an editable format in audio production are why in the professional world, we see audio recorded and edited in 24/352.8 "DXD" and Sony's own "DSD-Wide" (8-bit/2.8MHz) instead of DSD64/1-bit "DSD-Narrow".

While this was playing out in the academic/professional arena, the advertising industry including the "mainstream audiophile media" championed DSD and published all kinds of flowery words suggesting how it sounded "more natural", or "analogue-like" compared to PCM. While I don't think we can put an exact date on when DVD-Audio officially died as a viable commercial product, I think by 2005 it was quite clear that hi-res physical formats were not going to be mainstream and DVD-A did not have the number of titles available compared to SACD. My sense is that the hybrid-SACD feature with both DSD and CD-compatible layers was a major differentiating factor that has resulted in still a trickle of SACDs released these days.

I'm bring this stuff up now as an extension to the discussions around SoX-DSD and the Philips Test SACD articles last year during my series on the Topping D90SE review because I've been thinking about how best to standardize the DSD test signals I use when testing. Different DACs tend to handle DSD playback differently and I wanted to make sure that my test signal parameters are at least somewhat in line with the music encoded on an SACD or maybe DSD128 download these days.

In that previous article on SoX-DXD, I mentioned that I ran into some issues around signal instability with higher-order noise shaping settings when testing the Topping DX3 Pro V2. For example, I was unable to obtain a glitch-free DSD256 1kHz THD+N and had to drop the modulator down to a 5th-order setting while higher order noise shaping still worked well enough for DSD64/128 testing.

While not spoken of among audiophiles or in the mainstream press, once you start playing around with DSD encoding, you realize that there are intricacies to the modulation system to be mindful of. We are no longer dealing with a digital system that treats each sample as a amplitude level like the 65,536 possibilities of a 16-bit PCM sample digitized tens of thousands of times per second, and tracing out these levels to show a facsimile of the audio waveform. Rather, we have to think about the sound encoding as signal "density" over time consisting of numerous single bits of '1' (up) and '0' (down) values digitized over millions of times per second - the "average" of which determines the "modulation index" and the eventual analogue output level from your DAC.

Typical illustration of PCM vs. DSD from Wiki. Note that in good PCM playback, unless specifically NOS, we do not see stair-stepped quantization levels like this in the analogue output; I understand what they're trying to convey here though as a discussion on the nature of the digital data.

While we've talked over the years about DSD noise and how that might limit audio fidelity, we have not addressed another issue specifically which is the peak level in a DSD stream. The formal specifications for SACD/DSD64 are the "Scarlet Book" specs which we can examine on Internet Archive. If we look at the file "SACDspecP2audio_200 contents.pdf", in Annex D we can see how Sony/Philips specified SACD/DSD64 peak levels:

D.1 is a reference to filtering for the noise which we've talked about before; particularly with DSD64 and a recommendation to apply low-pass filtering around 50kHz.

D.2 tells us that "SACD 0dB" (let's call it 0dBDSD) = 50% peak amplitude of theoretical maximum DSD signal level. If we think about this in the PCM world, this would correlate to -6dBFS.

D.3.1 then is important because it tells us specifically how they defined maximum "density" of bits allowed; the maximum modulation level. Notice that they're looking at 28-bit chunks of the DSD bitstream and officially within any of these chunks, there cannot be ≥ 24 or  ≤ 4 "1's" within these consecutive bits or a Peak Modulation Level of 20/28 (71.43%). From 0dBDSD at 50% modulation to the maximum 71.43% is +3.1dB. Peak signal levels therefore "cannot" officially go beyond +3.1dBDSD or the equivalent of -2.9dBFS in the PCM world. Beyond this peak limit, "there be dragons" in the form of potentially higher distortions in the form of modulator overload from DAC playback.

This information is important and well known within the SACD production world. Merging Tech's Pyramix SACD Production Guide for example is very clear about this; let's highlight a few important facts:

I think it's very clear then that when we're encoding DSD music, the "rule" is that the output level should be around 0dBDSD = PCM -6dBFS. But it is allowable that the signal be a little "hotter" into +3.1dBDSD = PCM -2.9dBFS for "short" periods of time at least.

This is why when DSD is converted to PCM, often we're given the option to apply +6dB gain to correct for the recommended offset (as explained by Roon for example). However, because the output can reach up to -2.9dBFS, it's probably good to go with something like +2.5dB just to make sure one doesn't clip the PCM output assuming the DSD audio was encoded as per these specs.

It has been said that SACD pressing plants will refuse to produce content that did not follow the guidelines, however, I have come across different SACDs over the years where clearly this was not followed! An example is Sony's own Michael Jackson's Thriller (1999 SACD release) where clearly there were portions overshooting up to almost +7dBDSD! This is pushing the data beyond 28/28 consecutive '1' or '0' which should be "illegal". You might have guessed it, "hottest" levels were found at the beginning of "Billie Jean". In a way, this is like the intersample peaks we see in PCM audio with portions going above 0dBFS; not a good thing that should happen for high quality recordings, but it does occur frequently nonetheless.

Given the 1-bit nature of this encoding system, let's illustrate what this might look like as a stream of bits feeding your DSD DAC:

... 0000 0000 0000 0000 0000 0000 0000 ...
All 0s means -100% modulation.
Modulation Level = |28 - 2*0| / 28 = 28/28 ← Illegal signal since <4 '1's across 28 bits.

... 0101 0101 0101 0101 0101 0101 0101 ...
50% mix of 1's & 0's. 0% modulation.
Modulation Level = |28 - 2*14| / 28 = 0/28
I've seen "01101001" used specifically as "zero code pattern" for SNR results.

... 1101 0110 1111 0111 1101 0110 1111 ...
+50% modulation, maximum recommended DSD level.
Modulation Level = |28 - 2*21| / 28 = 14/28 = 0dBDSD = -6dBFS

... 1111 0111 0111 1110 1111 1111 0111 ...
+71.4%maximum allowable modulation level.
Modulation Level = |28 - 2*24| / 28 = 20/28 = +3.1dBDSD = -2.9dBFS

... 1111 1111 1111 1111 1111 1111 1111 ...
All 1s means +100% modulation.
Modulation Level = |28 - 2*28| / 28 = 28/28 ← Illegal signal since >24 '1's across 28 bits.


Practically, what should we do when it comes to creating test signals? I think the answer is clear. In order to respect the "rules", and in order to evaluate the expected performance for music playback, all test DSD signals must be set to peak at +3.1dBDSD (-2.9dBFS PCM). This includes the RightMark tests I use and also for the 1kHz sine tone for THD+N measurements. Beyond +3.1dBDSD, DACs are not obliged to reproduce the signal accurately, and elevated distortions might be expected.

Furthermore, we also need to consider modulator settings. As discussed previously, using the open-source SoX-DSD, there is the choice of CLANS (Closed Loop Analysis of Noise Shapers) which goes through an optimization technique or general SDM (as per Delta-Sigma Toolbox functions). In my testing over a number of evenings with different DACs and modulator settings, although the "SDM-x" settings provide excellent measured performance, the "CLANS-x" optimization does overall show significantly less overloading with higher-order noise shaping. DSD64 in particular can benefit from the higher-order settings to allow for lower noise floor within the audible spectrum with each higher order bringing a potential reduction of 6dB/octave. For context, SACD content back in the day typically used a 5th-order noise shaper, achieving around 120dB dynamic range in the audible spectrum. 8th-order noise shaping would push this up to around 140dB, about the same as 24-bit hi-res. With higher speed DSD (like DSD128+), we can get by with lower-order modulators as the noise floor drops by 6dB (1-bit) with every sample rate doubling. As you can imagine with dynamic range numbers like these, limitation to playback fidelity is unlikely to be due to the DSD modulators (rather, as usual, it's your headphones, speakers, room, ambient noise, etc.).

In recognition of the aim of testing DACs to measure the margins of dynamic range at allowable output levels, for my "standard" test signals then, with some trial and error, I settled on the following.***

1kHz THD(+N) DSD Test Signal...

I will encode using the CLANS modulator setting of descending order as the DSD sample rate increases: CLANS-8 → DSD64, CLANS-7 → DSD128CLANS-6 → DSD256, and CLANS-5 → DSD512.

Peak output at +3.1dBDSD (-2.9dBFS PCM) maintained; this will identify DACs that are unable to provide that extra headroom noted in the specs. To further improve quality, the test signals will be encoded using the look-ahead Trellis-based parameters in the command line to reduce instability. For example, the DSD64 command looks like this:
sox.exe "+3.1dBDSD 1kHz Sine (32-192kHz).wav" "+3.1dBDSD 1kHz Sine (DSD64, clans-8).dsf" rate -v 2822400 sdm -f clans-8 -t 32 -n 32
Notice that the test signal file is a 192kHz, 32-bit .wav, so as to provide very high resolution for the DSD conversion. Beware that computational load is heavy with the Trellis "-t 32 -n 32" parameters and SoX-DSD has limited multithreading so this will take some time even with modern fast multi-core CPUs - hours for just 5 minutes of DSD512.

After all these years, I'm probably one of the only (if not the only!) reviewer who routinely measures the DSD performance of DACs. I have not seen many test tones freely available on the Internet. Therefore, for those of you who might want to test your own DAC, here are my 1kHz +3.1dBDSD tones to try out. I've included the PCM 24/96, and DSD64/128/256 versions in the ZIP file. Each file is 5 minutes long, plenty of time to run detailed FFTs. Notice how large the DSD files are without lossless compression which is why I didn't include DSD512 which itself would be almost 500MB compressed by ZIP:


One more detail about the test tone. If you have a look at the 24/96 PCM file, at the start of the audio, we see this:


There are 3 seconds of silence (-100dB noise) and then 2 seconds linear amplitude ramp into the +3.1dBDSD tone. The reason I'm doing this is to condition the DAC with zero DC-offset content to start. Generally there are no issued when one feeds music into the system, but when sending the DAC an artificial, persistently high amplitude signal like this, sometimes the DAC needs a "reset" at the start.

So what do the 1kHz THD+N results look like if we examine a few DSD-capable DACs with different types of chips? Let's have a peek with the E1DA Cosmos APU + RME ADI-2 Pro FS as ADC:

First, here's the TEAC UD-501 with the TI/Burr-Brown PCM1795 DAC chip:


This DAC can "only" go to DSD128. You can see the rise in noise with DSD64 starting at just above 20kHz. Overall, the PCM vs. DSD performance is not bad for a decade-old machine. Notice the predominance of the 2nd harmonic in PCM and DSD measurements.

Notice also in the yellow highlights that although in principle the PCM and DSD output levels should be about the same, the DSD64/128 levels are -6dB below the PCM. Clearly, no special compensation has been added to equilibrate the levels. During playback, there would be a substantial drop in output so be prepared to turn the volume up and likewise when switching to PCM, make sure that it's not turned up too loud especially playing those "loudness war" rock/pop albums! 

[As I look over the PCM1795 datasheet, I see that the DSD FIR filters will affect gain. So the FIR1 filter I used above has -6.6dB, but FIR2 = +0.3dB, FIR 3 = -1.5dB, FIR4 = -3.3dB. So looks like I should be able to notice less volume change with the other FIR settings (in fact, looking back, I made a note of this back in 2013 ;-). Will try that another time when/if I have the TEAC on my test bench...]

Next, let's look at the Topping D10 Balanced which is based on ESS Tech's ES9038Q2M chip:


The output levels are now the same between PCM and DSD - great, no need to fool around with +/-6dB volume controls. DSD64 and DSD128 are able to maintain very similar THD+N compared to the 24/96 PCM. Unfortunately, DSD256 isn't able to keep up and the noise level is higher resulting in about a 6dB higher THD+N. This suggests some DAC overload when playing the +3.1dBDSD signal running at this speed. I like how the harmonic distortion (THD) remains low with DSD playback overall compared to PCM.

Next, here's the Topping DX3 Pro V2 which is a single-ended RCA output DAC (a bit more 60Hz hum picked up) based on AKM's AK4493 DAC chip:


This time, I've also included a DSD512 measurement since the DAC is capable. Like the Topping D10 Balanced, the output levels between PCM and DSD are the same. Notice that all the way up to DSD256, the DAC's THD+N remains close to the PCM 24/96 with similar THD as well. However, by DSD512, we see a loss in THD+N performance mainly on account of the increased 3rd order harmonic. Since the noise level (N) is not elevated like the D10 Balanced, I suspect we're not looking at modulator overload as the mechanism of the distortion here. [Of interest, the AK4493 datasheet does not show measurements for DSD512 even though it's supported and specifically says: "Analog characteristics are not guaranteed with DSD512 datastream".]

As you can see, each DAC has a unique "fingerprint" when it comes to DSD performance. Most DAC chips these days internally process in a multilevel/multibit SDM fashion allowing for volume control for example. So unless the DAC is specifically capable of pure "DSD-direct" (see Addendum), there will be some extra manipulation. Given the paucity of reported listening tests using DSD material, I don't know if there are enough subjective impressions out there comparing DSD64 vs. DSD128 vs. DSD256 for any specific DAC. At least on the objective side, I can say for example that on the Topping D10 Balanced, DSD128 likely performs better than DSD256 with lower noise when fed higher signal level content with peaks up to +3.1dBDSD even though this might not be audible. As for the Topping DX3 Pro, feel free to go up to DSD256 without any concern about a potential penalty!

The results here remind us that bigger sample rates are not always better; folks who insist for example their HQPlayer upsampled playback to DSD512 (using a GPU perhaps) routinely sounds better than DSD256 might want to double check the DAC before making such claims!

RightMark DSD Test Signal...

Similar to the 1kHz signal, I've converted the RightMark test battery to DSD with signal attenuated to -2.9dBFS to correlate with +3.1dBDSD and CLANS modulator settings similar to above starting with CLANS-8 at DSD64. The only difference is that I kept both DSD256 and DSD512 as CLANS-5 due to stability issues with higher order settings (lots of clipped portions in the RightMark signal data).

For RightMark signals: CLANS-8DSD64, CLANS-7DSD128CLANS-5DSD256, and CLANS-5DSD512.


As an example, here are the results using the Topping D10 Balanced - 192kHz test (96kHz bandwidth) comparing PCM 24/192 with DSD64/128/256:



We can easily appreciate the ultrasonic noise of DSD with DSD64 and DSD128 measured up to 96kHz. And again, like the 1kHZ THD(+N) results, we see that DSD256 shows what looks like modulator overload with noise floor elevation and concomitant effects on the IMD+N sweep. We have seen this kind of overloading behaviour with high-speed DSD256 before such as in the Topping D90SE (ES9038 Pro) measurements last year although I was not as meticulous at controlling DSD output level and evaluating the modulator settings as I am now.

We'll see next week how this looks like with the SMSL DO100 DAC which is another implementation of the ES9038Q2M DAC chip!


In Summary...

I hope you found this foray into the intricacies of SACD/DSD/1-bit PDM interesting. After all these years, there's still something akin to reverence among audiophiles towards DSD as if there are "ideal", "right", even "more analogue" qualities about the sound. I don't think this is the case. (We can think about other technologies which some audiophiles will idealize, even fetishize, as well.)

As usual, there's no need to believe audio technology has any magical properties (the gift of the snake oil salesmen). While there are some extra details to be aware of such as peak output level and care with selecting noise-shaping modulator settings, this should be handled behind-the-scenes by manufacturers and audio production folks. The fact that I'm writing this post is simply part of the "evolution" of my evaluation system which forces me to think about how best to encode the tests I use.

Yes, 1-bit DSD can sound very good because the science works, in particular the noise shaping needed. As I've expressed over the years, for perfectionistic audiophiles, I recommend DSD128+ which allows noise to be pushed further out beyond the audible spectrum and will provide lower noise floor with less aggressive noise shaping compared to DSD64 where the rapid increase in noise is just beyond 20kHz and could have an impact with distortions into the audio band depending on your system.

While fine for consumer music consumption, for those of you who create, record, mix, and master music, 1-bit DSD is simply not good for audio production purposes and I think these days no serious archivist would use DSD64 in particular. Due to the lack of flexible editing ability for DSD data, almost all recordings have to go through some kind of multibit/PCM step. With PCM almost always used, it's no surprise that many SACDs are basically transcoded/upsampled PCM content. By the way, the vast majority of the new pop SACDs coming out of Asia in the 2020's that I have examined over the last few years are just upsampled 44.1/48kHz PCM as well.

[This kind of thing reminds me of vinyl these days with the majority of albums sourced as digital then played back into analogue for LP cutting - tell me, what DACs are used to play back the digital data? Are they using multi-multi-thousand-dollar audiophile DACs in the cutting room or even a very high resolution ES9038 Pro device? ;-]

Needless to say, I believe it's best when recording/producing music to go with hi-res PCM such as DXD (24/352.8) from the start (like the way 2L does it) and then convert the final master to DSD or downsample to hi-res PCM as desired. 

Sadly, much of my critique of DSD from back in 2013 remains the same including limited implementation of lossless compression. WavPack 5 is still the only freely available compression system I'm aware of - as discussed here.

One last thing ;-).

Please dear audiophiles, don't just throw out comments like "Feedback in audio sounds bad!" without specific examples, and then in the next breath claim stuff like "DSD sounds like analogue - much better than PCM!"

Realize that the noise shaped modulators used in DSD/SACD are examples of high feedback! Without noise shaping, 1-bit DSD64 at 2.8MHz (64 = 2^6) has only 6 bits of dynamic range (~36dB). I'm not saying feedback is always good or always bad, but in a situation like DSD, it's simply necessary for hi-fi quality within audio frequencies! Almost everything in this world must be approached with nuance.

For more readings on the technical details around 1-bit PDM/DSD/SACD, have a look at Reefman & Janssen's review "One-bit Audio: An Overview" (2003) which includes discussions on the Trellis algorithm, and the article by Måns Rullgård "PCM and DSD" (2020) might also help clarify things further.

Alright dear audiophiles, that's all for now. Next week, let's finish the last part of the S.M.S.L. DO100 DAC review including a look at DSD performance based on the discussions above.

Hope you're all enjoying the music!

--------------------

*** Achieving stability with higher-order modulator settings on test signals could be a real pain in the derriere; a few times I've had to agonize over the balance between noise level and potential stability issues. While there are some general trends, the results can be wildly unpredictable which is why it took quite a bit of trial and error to create and decide on my standard set of test signals (not just 1kHz, but also the 1/10 Octave Multitone 32, and collection of converted RightMark signals).

Some general observations using the SoX-DSD CLANS/SDM modulator settings looking at Trellis convergence failure data suggested that:

1. CLANS-5 seems very good at controlling overload across the board from DSD64-512 even with excessively loud +5.9dBDSD output level. When in doubt, use this. It still provides 120+dB dynamic range through the audible spectrum and sounds great. CLANS-5 was particularly stable with DSD256/512 compared to SDM-5.

2. Above the 5th-order setting, sometimes SDM is better than CLANS; it depends on the audio data. For example, the RightMark test signal converted to DSD64 had less issues with SDM-7 than CLANS-7 which I could not have predicted (although I still decided on using CLANS-8 for this to remain consistent with the 1kHz tone).

3. DSD128 seems more finnicky to encode than DSD64 given the same amplitude level and even with lower order modulator settings. I was surprised by this as it stood out as unusual compared to DSD256 and DSD512 encodes. I don't know if this observation extends beyond the freely available SoX-DSD software though.

Seeing these disparities and nuances, I wonder how studios decide on the modulator settings they use when producing albums. Do they actually run a few encodes for example with various order settings and sit down to listen, then make a choice for the final product? Audible differences may be noticeable especially with DSD64 using higher-order modulators so this could be rather tedious work to listen for such subtleties! Unless truly obsessive about the sound quality, I have doubts as to whether artists and audio engineers would bother for every project.


Addendum: June 20, 2022

Just wanted to add another set of measurements that I thought was interesting. Here's the RME ADI-2 Pro FS R Black Edition - DSD-Direct mode activated (no volume control, no DSP) with 50kHz DSD Filter.

As you can see, I've increased the ADC sampling to 384kHz to show bandwidth out to 192kHz. We can appreciate the relative magnitude of the ultrasonic noise with DSD playback compared to PCM and of course as we go from DSD64 up to DSD256; noise pushed further out as the DSD sample rate increases.

A nice example of improved objective performance as we get from DSD64 to DSD256. And only 1dB difference between PCM and DSD playback output level (-0.93dB is the expected change in the volume bypass "direct" mode based on datasheet).

Addendum: June 21, 2022

Yet another update ;-).

Up to this point, notice that I've published results from the test signals of real-life measured DACs only. Let's in a way take a step back and look at what we expect from a "Perfect DAC" when it comes to reproducing the test signals. We can do this by running a software decode of the DSD data through foobar2000's SACD plugins (much of this discussed awhile back). Let's use the highest quality decode with 64-bit floating point and create 32/352.8 output to analyze. +6dB offset added to the decode. No DSD filtering applied (for example, the RME ADI-2 results above are with a 50kHz filter).


Notice on the Y-axis, we're looking down into -200dB! Very impressive how low the DSD512 noise level can get using the 5th order modulator. With the +6dB level compensation applied, DSD and PCM outputs are the same.

While I "standardized" on the CLANS family of modulator settings for consistency, one criticism I can make of this choice is that for DSD64, CLANS has a relatively higher noise floor, hence even the "ideal" THD+N is "only" at -116dB for the DSD64 CLANS-8 encode which can be bested by top tier DACs these days. In fact, we can use the SDM-family of modulator settings and achieve a lower noise level, for example, let's compare CLANS-8/7 and SDM-8/7 settings:


Notice the difference the modulator makes. An example of the kinds of choices which a studio decides upon when producing/encoding their DSD music which we as audiophiles will have no idea about.

In the days ahead, if/when I run into a very high resolution DAC that plays DSD64 with potentially even better than -116dB THD+N, then I can switch over to the SDM modulator settings for a look. In reality, this likely won't be necessary because we'll see the lower noise floor performance at DSD128 and DSD256 levels for any given DAC anyways unless for some odd reason the DAC is limited to DSD64 (even the esoteric Meitner MA3 accepts DSD128 these days). As I've said in the past, while objectively we can investigate deeper and deeper into DAC resolution, in reality I do not believe these little differences for distortion and noise at the level of SINAD 116+ would be audible anyways.

As expressed above in the main article, remember that 1-bit DSD is a system of compromises particularly at DSD64. A lower noise floor in the audio band implies the use of higher-order noise shaping (like 7th or 8th order), more feedback, a sharper ultrasonic noise ramp, but there is a limit as to how far one can go due to the potential for modulator overload especially at higher output levels. Modulator overload may not be severe in most cases (although I know listeners have complained about the SACD Thriller, possibly related to these encoding issues), just like sometimes a "loudness war" PCM recording can distort briefly and not too objectionably.

As an audiophile, given what I've seen and heard, there's clearly no need to idealize DSD. Despite these intricacies, at least DSD is much less of a compromise compared to vinyl fidelity-wise. ;-)

Quick capture of DSD to PCM conversion using Dtmer Hk's filter in the comments:



22 comments:

  1. Hi-
    Interesting results. I sometimes upsample to various DSD rates just to "flavor" the sound. Purely subjectively, DSD playback sounds a little "softer" and "denser" to me. Less space between the instruments, and a bit more of a feeling that the instruments are connected - less of a sensation that each one is in it's own space. The edges seem a bit more rounded, too.
    I know this sounds like BS, but that's what I hear.

    I'm not saying DSD playback it's better. Just a bit different sounding. I don't use it the majority of the time. In fact, even though I've ripped about 100 SACDs to DSD, I mostly listen to them converted to PCM before playback. But I do enjoy it sometimes.

    Anyway, I think I get why some people say DSD sounds "more like analogue".
    I've also found (again anecdotally) that for albums originally recorded to tape and digitized, the DSD version/master often sounds best. Or at least more similar to the original.

    I also sometimes buy albums at NativeDSD.com. Interestingly, although they do have some albums recorded and mastered in DSD, most albums there seem to be recorded/mastered in DXD or recorded in DSD 256, mastered in DXD, and then converted back to DSD for DSD distribution.
    However, unlike other download sites, they usually allow you to buy the albums in the original recording/mastering format. In some cases, they even sell the 32/352 master, as well as a 24/352 conversion of that master. Or a DSD master if that was the recording format.

    ReplyDelete
    Replies
    1. Hi Unknown,
      I agree with you on the sound of DSD(64) and don't think this is BS at all!

      In fact, back in 2013 with beta JRiver 19, I noted hearing the difference listening to PCM and DSD conversions; less "etched", smoother.

      http://archimago.blogspot.com/2013/09/measurements-pcm-to-dsd-upsampling.html

      My suspicion is that DSD64 with its high near-audio band noise probably has a significant part to play in the subjective experience. Indeed, that can be subjectively preferable as well...

      Delete
  2. Arch - what is going on with Topping D10B on 24/96. I can't understand why the distortion is so high compared with dsd. This does not seem apparent with Rightmark or other dacs. Is it possibly a reconstruction filter artefact?

    ReplyDelete
    Replies
    1. Thanks for the note Shoddy,
      I see what you mean on the 1kHz FFT. Let me have a look again! Could have been some issue with settings issues on the digital streamer...

      Delete
    2. Just had a quick look. The Topping D10B 1kHz -2.9dBFS FFT looks correct with -112dB THD+N, -116dB THD.

      Not the most brilliant performance specifically at -2.9dBFS! Harmonic distortion amounts do bounce around a bit and will get significantly better up at 0dBFS.

      Delete
    3. Interesting - The implication is that this is a purely digital side error (since it does not appear with dsd) whereas I had imagined that the harmonic distortion was mainly from the output stage. Also I think Amir's measurement came out at -118db THD+N at full scale so it does seem to bounce up at -2.9dB.

      Delete
    4. @shoddy,
      It's not a digital error in the true sense of the word. From what I have found out, the larger distortion pattern in PCM mode comes from side effects (glitches) of the Delta-Sigma modulation scheme of the 6-bit final current-mode DAC that is at work in PCM mode. It scales with clock frequency of the final output stage (in the D10B it runs from a 100MHz clock)

      All ESS product show this to some extent (even the ADC, which has a DAC inside), a constant level noise-loor modulation once the signal gets larger than a one segment span of the output DAC (current switches).The higher the level, the more higher harmonics are introduced. It behaves almost like a static nonlinearity, the transfer function is a straight slope with a constant overlaid "ripple sine" with 64 periods. When the noise is low enough, this causes the well-known ESS hump in THD+N or IMD+N plots.

      Of course, the output stage (actually, the I/V-stage) plays a big role here as well as it must cope with the glitches, as does any implemented H2/H3 distortion compensation.

      In DSD mode, the glitches are there as well but average out into broadband noise.

      Delete
    5. Interesting- sorry for my rather limited understanding but does that mean that this is a limitation in the dynamic element mapping which would be improved if the element selection were more random. How is this changed in different implementations of the same chip?

      Delete
    6. Hi Archimago,

      Amir often uses 0dBFS and 44.1k on dashboard and SINAD rating, except when the analog output significantly deviate from 2Vrms (unbalanced) or 4Vrms (balanced). I recall you mentioned ESS's THD compensation caused some differences when the DAC is operating at different sample rates. For example, what THD and THD+N you get when setting the the D10B to 44.1k and -2.9dBFS?

      I like the way you measure something that others don't. For example Amir often show frequency response of phono preamps and ADCs within +/- 5dB with more than 500 pixels of vertical resolution, but just show some very coarse white noise response when measuring DACs, which for example, cannot reveal the excessive ripples of the ESS Brickwall and Apodizing filters, like this:
      https://www.audiosciencereview.com/forum/index.php?threads/the-limits-of-44-1k-filters-and-latency.31104/post-1099057

      Also good to see the glitchy and high noise floor of DSD256 in RMAA's dynamic range plots. The significance of this measurement is that for typical DACs without additional THD compensation and such, THD often greatly decrease when for example using output below -6dBFS, with more tones (or real music) the harmonics will fade into the noise floor anyway. When distortion persists even at -60dB there must be something wrong.

      Delete
    7. Nice discussion boys. Appreciate the discussion KSTR on the intricacies of the ESS 6-bit SDM and anomalies. Will need to look further into the discussions of the ESS "hump" myself.

      I think simply the fact that I'm not using AP gear and "rolling my own" test signals and test battery makes the measurements a bit different than ASR ;-). The home-tester hardware is evolving with gear like the availability of the excellent RME ADI-2 Pro (and the willingness of Matthias C to help when I have questions about running measurements), and recently E1DA Cosmos; likewise nice to see the evolution of software like REW and Paul K's Multitone Analyzer. I would love to see RMAA continue to evolve too given that the foundation is quite good and there's much more that I think can be improved including stability and analysis of the high samplerate tests.

      Yeah, I remember discussing with a hardware designer about the ability for ESS DACs to be supplied with different loadouts for H3/H4 compensation. Could definitely help with more consistent THD between 44.1 and 192kHz.

      Now that we're talking about this, I'd be curious what an even higher resolution THD/IMD vs. Output Level graph would look like with the D10B. Will see about doing that with the post this week...
      Yeah, the use of a white noise tone for frequency response is not great to show those little ripples.

      Delete
  3. Oh, what an incredibly detailed DSD analysis! I must admit that it was a bit of "TLDR" for me even though I am an engineer... It was particularly interesting to see the differences between various DACs.

    Anyway, you mentioned the record company 2L. In the liner notes to one of their recordings (actually a 2-disc sampler, with the same music on one blu-ray and one SACD), Morten Lindberg writes: "I personally prefer extremely high resolution PCM over the DSD and I would claim that DSD is not transparent" and "in some mysterious way DSD is softer and more beautiful but slightly less detailed."

    He also writes about standard PCM that "the obvious degeneration is from 96kHz down to 48kHz" which I think matches what you have established before in this blog.

    Having "golden ears" is obviously contentious among us objective/rational audiophiles, but I guess he is one of the people who could claim that without embarrassment.

    ReplyDelete
    Replies
    1. Interesting Freddie!

      Didn't know Lindberg said this but I think that's very appropriate of him and accurate in stating that DSD(64) is not transparent.

      I like that quote: "in some mysterious way DSD is softer and more beautiful but slightly less detailed". That too resonates with my experience of DSD (as above in my response to Unknown).

      As much as I remind folks about vinyl being not quite "high fidelity" as defined by "transparency", I certainly respect that audiophiles can subjectively prefer the effect that DSD64 and vinyl/analogue can have on the sound. I too can appreciate a preference sometimes for "softer" and potentially "more beautiful" sound at the expense of being "less detailed" as well.

      When it comes to down-sampling 96kHz to 48kHz, I have no problems if it looks like the music isn't even true 96kHz or has all kinds of ultrasonic artifacts:
      http://archimago.blogspot.com/2020/07/summer-musings-post-hi-res-audio-why-hi.html

      I am certainly happy to keep pristine 24/96 recordings untouched though! Not so sure about all those 192kHz recording. ;-)
      http://archimago.blogspot.com/2016/06/musings-analysis-is-there-any-value-to.html

      Yeah, an article like this is pretty esoteric stuff by design. Since I'm talking about test signals, rationale, and specifically parameters applied to SoX-DSD, the stuff here is more for future reference and testing methodology.

      Delete
  4. Hello Archimago,

    It seems that the foo_input_sacd screenshots were done using multistage. I made an installable filter and uploaded below:

    https://1drv.ms/t/s!AvzB71jO7t0-gYwpLikhRhaA6D06nQ?e=E5N7CQ

    Decimation should be set to 8 regardless of output sample rate as "Auto" seems buggy, at least for version 1.4.13 I recently downloaded. My filter should produce lower noise and distortion than multistage below 20kHz, with better ultrasonic noise attenuation than the bundled 40-60kHz filters, and flatter frequency response than the bundled 30kHz filter when using DSD64. Filter length is same as other bundled filters (641) so conversion speed should be the same, and I considered increasing the filter length cheating :P

    For example, try the SoX command below to generate a test file and see the differences between my filter and multistage:

    sox -V -r2822400 -n sdm8.dsf synth 60 sin 5512.5 sdm -f sdm-8

    Different modulators and DACs may have different frequency and amplitude dependent behaviours, hopefully the upcoming DO100 tests can have improvements over other ESS DACs you previously tested, including Oppo UDP-205 and others.

    Regarding "fake hi-res", while frequency domain analysis is a popular method, I also made a tool which can do time domain analyses:

    https://hydrogenaud.io/index.php/topic,114816.msg1010860.html#msg1010860

    Of course, with all kinds of AI and plugins these days, it is not all that hard to make undetectable fakes.

    ReplyDelete
    Replies
    1. Thanks Bennet,
      Excellent ongoing work! I've posted an image of the DSD64/CLANS-8 conversion using your filter. Indeed cleaned up some <20kHz irregularities but definitely a good amount of ultrasonic noise filtering.

      Will give the fake hi-res analysis a tool a try as well! Great to have tools like this to automate the process.

      Delete
  5. Hi Archimago,

    Thanks a lot for a detailed post and deep analysis! Now DSD appears to be interesting to me, at least to try it out. However, since a lot of people, including you, use DSP for speaker/room correction (DRC), which operates in the PCM domain, I guess you anyway need either to convert DSD into PCM before running through DRC, or go via analog domain in between DSD and DRC. What is your preferred path of playing DSD over speakers?

    ReplyDelete
    Replies
    1. Hi Mikhail,
      Yup, this is true. I almost always use DSP these days so the final step is always PCM.

      Truth be told, I rarely listen to DSD and mainly that's for listening tests when writing reviews. ;-) In those instances I'll turn off DSP.

      All my SACD material have been converted to 24/88.2 or 44.1/48kHz if it doesn't look like "real" hi-res.

      Delete
  6. Archimago, you speak highly on the sound quality of the tracks on the Philips 2002 DSD Test Disc. Probably rare as hen's teeth after all these years but is it worth trying to find this disc?

    ReplyDelete
    Replies
    1. Hey BigGuy,
      Yeah the Philips SACD Surround Sound Reference Disc which Black Elk worked on here:
      http://archimago.blogspot.com/2021/10/miscellany-flexasio-for-384khz-philips.html

      Discogs:
      https://www.discogs.com/release/11904929-Various-Super-Audio-CD-Surround-Sound-Reference-Disc

      sounds very good. It is multichannel though and ultimately still a demo disc compilation of various music, and special effects / live recording. Indeed it's rare. It's a neat "historical" recording but I would not say it's an essential recording unless you're a super fan of SACD. :-)

      Delete
  7. Love this breakdown, the topic of DSD reference levels vs PCM reference levels is always weirdly intricate, and it's pretty clear a lot of SACDs simply don't follow Scarlet Book.

    I'm a little curious what "pure DSD" DACs actually DO if you exceed the reference levels on playback, since (technically speaking) you wouldn't have to resort to hard clipping when that happens like you do with PCM, right?

    ReplyDelete
  8. Speaking to a major DAC designer about DSD upsampling, in our conversation he revealed how DSD1024 actually measured a bit worse that DSD512 because of the limits in the actual fpga/dac logic. as all logic has switching time limits and gate to gate switching time skew.

    this could be why you started to see poorer measurements at higher DSD rates.

    It CAN be engineered around if one wants to use the resources necessary.

    I am thinking of the T+A discrete DSD converter. Would love to see that tested. I know it is highly thought of by Jussi and many others. I have briefly spoken to an engineer for T+A and its sounds like a very well designed discrete FIR converter.

    ReplyDelete
  9. I realize this is late to the party but I wanted to add another proviso about DSD vs PCM, specifically, the recording and playback of the LFE channel in multichannel releases. The standard practice since the days of Dolby- and DTS-only home releases , and continuing through DVD-Audio and lossless Dolby and DTS and BluRay multichannel, is for the LFE to be 'printed' 10dB low, and receive a 10dB boost at output. For SACD (Scarlet Book spec) the LFE is to be printed 'as is', no lowering, so no need to boost on playback. Even if ones's playback setup does that correctly, if there's a DSD-->PCM conversion in the playback chain, things can get tricky. Also tricky if the SACD producer did not adhere to Scarlet Book spec.

    ReplyDelete
  10. (This is why foobar's foo_input_sacd plugin has options for adjusting both level and LFE level for its DSD-->PCM conversions)

    ReplyDelete