• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Let's develop an ASR inter-sample test procedure for DACs!

If audibility is irrelevant then there is no reason to test for it.

Again, this is a mistake in production. A patch that damns the entire music catalog is not the solution.

An elegant one would be for the player to scan your files at import and flag the compensation in the form of metadata. This could also be forced by the user or use an online database. These are the correct, no cost solutions that apply the fix where it is needed and not to every piece of music out there.

As noted, this exists if you use foobar2000 to play files, as the replaygain option.
 
This is chicken and egg stuff.

Why is there a problem in the very first place? Because the original recorded levels were too high. No other reason.
Technically it could be the final mastering level.

The original recording level might have been just fine.
 
Your doc claims that the overs add unnatural 'sparkle' to the snare in Gaslighting Abby, but that seem to be a subjective claim, with no DBT data backing it up.
You've been polluted too much by ASR group-think, it seems. "Show me scientific DBT results or it never happened", meh.
I find it kind of embarrassing that anonymous no-names always question the experience and listening skills of very serious industry experts like Mr. John Siau. Mind you, this is not your average audiophile John Doe making a claim.

In general, I would suggest you do your own proper tests on the topic before you come up with arguments like
What;s left out is that each sample is 1/44K th of a second in duration. Individually these aren't likely to be audible at all.
so that you have at least proven to yourself if you can hear it or not.
 
White periodic noise, NOT digitally clipped, is a good and easy to prepare signal for DAC clipping testing. It may be easily sent from REW generator (REW generator checks for signal clipping, so one can choose a proper level). Below the DAC analog output, see clipping at 3.27Vp.

whiteperiodic_clipping.png


Attached below is a test signal.
 

Attachments

  • White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR.zip
    270.4 KB · Views: 44
Last edited:
Technically it could be the final mastering level.

The original recording level might have been just fine.

Original meaning the untouched source you are playing on your D/A converter. Clear enough?
 
It seems to me that it is like - "who cares? We care about 132dB 1kHz SINAD!!". Though it is inaudible on music or tones from 80dB.
 
It seems to me that it is like - "who cares? We care about 132dB 1kHz SINAD!!". Though it is inaudible on music or tones from 80dB.

No, we don't care about 132dB SINAD, and you know it.
 
The issue that @John_Siau has addressed is a serious issue, believe or not. Below is a result for one of the Topping DACs when tested with white periodic noise. DAC clipping occurs as early as when the peak digital input sample value is -2dBFS.

1) spectrum for peak sample of -6dBFS
DAC_whiteperiodic_-6.07dB.png


2) Spectrum for peak sample -3dBFS
DAC_whiteperiodic_-3.07dB.png


3) Spectrum for peak sample -2dBFS
DAC_whiteperiodic_-2.07dB.png


One can see elevated noise floor above 24kHz due to DAC output clipping. So, even -2dBFS maximum sample value of the input digital signal (periodic white noise) is not safe here.

This of course depends on signal used. It may be shown also with octave noise or pink noise.

Different DACs behave differently in this test. Though they all have very good to excellent SINAD numbers. SINAD tells nothing about DAC output clipping. It is about reconstruction filters and analog output headroom.
 
There's plain overloading, white noise crest factor considerations and oversampling interpolation "errors". 3 different issues.

Nothing new about a 0dB/-3dB white noise overloading a DAC and that has nothing to do with intersample overs.
 
There's plain overloading, white noise crest factor considerations and oversampling interpolation "errors". 3 different issues.

Nothing new about a 0dB/-3dB white noise overloading a DAC and that has nothing to do with intersample overs.
I think it is intersample overs as the PCM values are below 0 dBfs but the analog output signal is above it.
 
Nothing new about a 0dB/-3dB white noise overloading a DAC and that has nothing to do with intersample overs.
Full-range white noise is an "illegal" signal by your own definition previously in this thread.
And of course any overload seen in the DAC output is from clipped intersample overs.
 
For R2R DACs such full-range white noise is not "illegal".
 
Full range white noise signal is not illegal as it is properly band limited and sample values are well below clipping.

I am not sure if all the readers understand the test conditions.

White noise defined as White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR with peak samples all below digital clipping level is sent to the DAC under test and both time record and spectrum are observed. If clipping is observed, white noise level is reduced until the DAC output is free of clipping. This necessary attenuation differs DAC from DAC based on their circuit design.

An experiment was done with the White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR signal and the same signal attenuated of 4dB. DAC RCA output is rated at 2Vrms and clipping occurs at about 3.2Vp. DAC output was recorded with the ADC with 4.5Vrms input range (thus not overloaded) at 96kHz sampling for both White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR and -4dB attenuated noise. Resulting records were compared and matched in Deltawave.

1) Record of the original White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR signal
clipped.png


2) Record of the -4dB attenuated noise signal, level matched in Deltawave
not_clipped.png


3) Comparison in time domain
white_clip_compare.png


Stereo track composed in Audacity
clipping_stereo.png


The effect is similar to DR compression.

Dynamic range comparison in foobar2000:
Name Path Track DR Album DR DR (FC) RMS (FC) Peak (FC)
full_rec_ref.wav 3 3 3.05 dB -9.43 dBFS -6.37 dBFS

Name Path Track DR Album DR DR (FC) RMS (FC) Peak (FC)
full_-4+4_rec_eq_comp.wav 6 6 5.66 dB -9.45 dBFS -3.79 dBFS

Files are attached
 

Attachments

  • DAC_clipping.zip
    928 KB · Views: 25
Last edited:
Some statistics on the signal White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR.wav:

$ sox White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR.wav -n stats
Overall Left Right
DC offset 0.000000 0.000000 0.000000
Min level -0.991431 -0.991431 -0.991431
Max level 0.996267 0.996267 0.996267
Pk lev dB -0.03 -0.03 -0.03
RMS lev dB -4.10 -4.10 -4.10
RMS Pk dB -4.01 -4.01 -4.01
RMS Tr dB -4.23 -4.23 -4.23
And resampled 8x (linear phase):
$ sox White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR.wav -n rate -v $((8*96000)) stats
sox WARN rate: rate clipped 146694 samples; decrease volume?
Overall Left Right
DC offset -0.000046 -0.000046 -0.000046
Min level -1.000000 -1.000000 -1.000000
Max level 1.000000 1.000000 1.000000
Pk lev dB 0.00 0.00 0.00
RMS lev dB -4.58 -4.58 -4.58
RMS Pk dB -4.50 -4.50 -4.50
RMS Tr dB -4.72 -4.72 -4.72
Once again with 4dB volume attenuation:
$ sox White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR.wav -n vol -4dB rate -v $((8*96000)) stats
sox WARN rate: rate clipped 458 samples; decrease volume?
Overall Left Right
DC offset -0.000003 -0.000003 -0.000003
Min level -1.000000 -1.000000 -1.000000
Max level 1.000000 1.000000 1.000000
Pk lev dB 0.00 0.00 0.00
RMS lev dB -8.32 -8.32 -8.32
RMS Pk dB -8.24 -8.24 -8.24
RMS Tr dB -8.48 -8.48 -8.48
And once again with 5dB volume attenuation that does not generate clipped samples with 8x VHQ SoX resample algorithm:
sox White_PN_64k_Full_-1.09_dBFS_48.0k_Float_LR.wav -n vol -5dB rate -v $((8*96000)) stats
Overall Left Right
DC offset -0.000002 -0.000002 -0.000002
Min level -0.984606 -0.984606 -0.984606
Max level 0.989624 0.989624 0.989624
Pk lev dB -0.09 -0.09 -0.09
RMS lev dB -9.32 -9.32 -9.32
RMS Pk dB -9.24 -9.24 -9.24
RMS Tr dB -9.47 -9.47 -9.47
 
By your observation, are perceptual codings such as DTS or Dolby Digital also affected?
I have only run tests on mp3 codecs. The mp3 decoder adds many intersample peaks above 0 dBFS.

Try this:

Rip some CDs using various lossy formats and then decode them back to 44.1/16 PCM. With the mp3 codec you will see a big increase in overs. I don't know what happens with other lossy codecs, but I suspect that you may get the same results if you run the tests.
 
If your system has a digital volume control and you listen to it at about -3 to 5dB or lower, which everyone with that setup does if it’s your main system volume control, then it would seem this issue is irrelevant.

It applies only if you’re running a full-volume digital signal through a DAC and controlling the system volume farther down the playback chain, or if you have a D/A/D conversion ahead of the digital volume control - yes?
 
Last edited:
Back
Top Bottom