Jump to content
IGNORED

DeltaWave null-testing audio comparator (beta)


Recommended Posts

5 minutes ago, vortecjr said:

Can you post a link to the source file used in this test?

It is provided by AP for use with their analyzers.  

https://www.audiosciencereview.com/forum/index.php?threads/sinad-measurements.4071/post-245803

 

There is a link to it in this post. 

 

The following link is a post describing the file.  It has frequencies that fall directly in the middle of an FFT bin when used at 192 khz and when using a 64K FFT.  This allows you to use rectangular windowing on the FFT for the cleanest look at the noise between tones.  The tones are also altered in phase to allow a higher average level without clipping. 

 

https://www.audiosciencereview.com/forum/index.php?threads/review-battle-of-schiit-audio-dacs.5487/post-121956

And always keep in mind: Cognitive biases, like seeing optical illusions are a sign of a normally functioning brain. We all have them, it’s nothing to be ashamed about, but it is something that affects our objective evaluation of reality. 

Link to comment
13 hours ago, esldude said:

 

 

A signal I was working on with similar thinking behind it is 997 hz at -6 db mixed with white noise at -6 db.  That actually worked a little better for me.  Here is that signal comparing original to loopback.  

 

 

How many seconds?
Tone at 997hz of the same length as white noise?
I also try
Is the rectangular FFT window on DW absent? I don't see any "rectangular" item

Link to comment
3 hours ago, TomCapraro said:

How many seconds?
Tone at 997hz of the same length as white noise?
I also try
Is the rectangular FFT window on DW absent? I don't see any "rectangular" item

I used 1 minute 10 seconds. Yes same length on both signals. I didn't see rectangular as a choice either. I think I used hamming for the one I posted. It might have been better to use minus 7 db for the white noise to prevent clipping.

And always keep in mind: Cognitive biases, like seeing optical illusions are a sign of a normally functioning brain. We all have them, it’s nothing to be ashamed about, but it is something that affects our objective evaluation of reality. 

Link to comment

Ok, I'll try.
We should ask Paul for two things:
1) because it did not put the rectangular function in the FFT (it could be useful to visualize with precision the spectral lines of the pseudo-random signals.

2) we all use different sample lengths, is there a reputable length with which to get the best possible results?

Link to comment

I imagined that the pseudo-random signal pair (with 64k pseudoperiod) + the rectangular FFT ... that Paul put as Dirichlet would have given very good results.
The representation on the spectrum is perfectly flat, as it should be.
Indeed, for me they are excellent because the jitter rms has dropped to only 19ps, the spectrum of delta shows a very low comb that corresponds to the amplitude of the non-linear alterations of the DAC.
Paul, you're close to perfection ... congratulations ... !!!

1.jpg

2.jpg

Link to comment
8 minutes ago, TomCapraro said:

I imagined that the pseudo-random signal pair (with 64k pseudoperiod) + the rectangular FFT ... that Paul put as Dirichlet would have given very good results.
The representation on the spectrum is perfectly flat, as it should be.
Indeed, for me they are excellent because the jitter rms has dropped to only 19ps, the spectrum of delta shows a very low comb that corresponds to the amplitude of the non-linear alterations of the DAC.
Paul, you're close to perfection ... congratulations ... !!!

1.jpg

2.jpg

What DAC and ADC are you using for this?

And always keep in mind: Cognitive biases, like seeing optical illusions are a sign of a normally functioning brain. We all have them, it’s nothing to be ashamed about, but it is something that affects our objective evaluation of reality. 

Link to comment
On 10/14/2019 at 9:45 PM, esldude said:

Here is an interesting result using the 32 multi-tone test signal Amir uses from the AP test company.   This is the original vs loopbacked result. 

 

image.thumb.png.779a7aede752b280d2095fcf8ba1ccc6.png

 

I assume you used the simple waveform setting in DW? There might be some clock drift differences causing the discrepancy, since the simple waveform setting doesn't correct for clock drift.

 

And yes, rectangular FFT window is the same as Dirichlet. I'll add an explicit Rectangular option to window settings to avoid confusion in the future :) Hamming window has very anemic peak sidelobe level. Kaiser, Cosine23 or even BlackmanHarris7 should give a better (looking) result.

 

Link to comment
4 minutes ago, TomCapraro said:

Is there a rule that establishes the length of the file? In your opinion, how long should the file be for the best compromise?
Perhaps with the pseudo-random signals the problem should be reduced because it synchronizes only one pseudoperiod?

 

That depends on the amount of memory available and on how long you are willing to wait for processing :)

 

I try to keep the files to about 2-3 minutes at 44.1kHz sampling rate, so about 5-8 million samples.

Link to comment
On 10/14/2019 at 11:49 PM, esldude said:

It is provided by AP for use with their analyzers.  

https://www.audiosciencereview.com/forum/index.php?threads/sinad-measurements.4071/post-245803

 

There is a link to it in this post. 

 

The following link is a post describing the file.  It has frequencies that fall directly in the middle of an FFT bin when used at 192 khz and when using a 64K FFT.  This allows you to use rectangular windowing on the FFT for the cleanest look at the noise between tones.  The tones are also altered in phase to allow a higher average level without clipping. 

 

https://www.audiosciencereview.com/forum/index.php?threads/review-battle-of-schiit-audio-dacs.5487/post-121956

 

In case you want to do some really extreme testing with a 64-bit version of the multitone file, I generated one to see what that would look like. The phases are not exactly as produced by AP but the frequencies are. I didn't try to guess the algorithm they used for phase. Instead, I just used a common one (Shapiro-Rudin).

 

Here's a comparison between the AP 32-bit and my 64-bit files. I dithered the 64-bit file at 70 bits ;) something you can do with floating point numbers. Of course, the AP file is in blue:

image.thumb.png.1b10e60523a8202aa050e81fd9218a8a.png

Link to comment

Here is the 997 hz tone mixed with white noise that worked pretty well for me in loopback using simple waveform.  

 

You can try it out and see if it is of any use. 

 

997 white noise minus 1 db.zip

And always keep in mind: Cognitive biases, like seeing optical illusions are a sign of a normally functioning brain. We all have them, it’s nothing to be ashamed about, but it is something that affects our objective evaluation of reality. 

Link to comment
On 10/14/2019 at 5:16 AM, Arpiben said:

3. THD:

It seems that the Harmonic reported values (H1 ,H3, H5,...) are scaled with different parameters that the ones currently set: windowing, FFT size,...

I was expecting to retrieve more or less the levels shown in spectra but this is not the case.

 

Hi Arpiben,

 

Can you please give me an example where these are different? I've tried to reproduce this, but get fairly consistent results between the spectrum plot and the harmonics listed in the results tab. Here's an example, these are within 1dB of what appears on the plot (the plot labels have everything rounded up to a whole dB):

 

Comparison DR = 114.48dB

Comparison THD+N = -108.51dB

Comparison THD   = -117.2dB
    H1 (1000Hz) = -9.04dB
    H2 (2000Hz) = -130.47dB
    H3 (3000Hz) = -123.97dB
    H4 (4000Hz) = -141.98dB

 

And the plot (Kaiser 1M FFT):

image.thumb.png.bb2d5d5670330dc0267bc2fc0183dd7b.png

 

Link to comment
3 hours ago, pkane2001 said:

 

Hi Arpiben,

 

Can you please give me an example where these are different? I've tried to reproduce this, but get fairly consistent results between the spectrum plot and the harmonics listed in the results tab. Here's an example, these are within 1dB of what appears on the plot (the plot labels have everything rounded up to a whole dB):

 

Comparison DR = 114.48dB

Comparison THD+N = -108.51dB

Comparison THD   = -117.2dB
    H1 (1000Hz) = -9.04dB
    H2 (2000Hz) = -130.47dB
    H3 (3000Hz) = -123.97dB
    H4 (4000Hz) = -141.98dB

 

And the plot (Kaiser 1M FFT):

image.thumb.png.bb2d5d5670330dc0267bc2fc0183dd7b.png

 

 

With further trials I realised that THD reported values are correct until you distort the phase. Shifting by one sample or adding periodic jitter is enough to trick the estimation.

Ref=A: square 1 kHz

Comp=B: A shifted by one sample time

 

THD for comparison B is wrong:

    H1 (1000Hz) = 1,08dB
    H3 (3000Hz) = -16,69dB
    H5 (5000Hz) = -37,37dB
    H7 (7000Hz) = -52,92dB
    H9 (9000Hz) = -55,65dB

 

Swap Ref&Comp -> THD reading A -> values are correct

    H1 (1000Hz) =  2,1dB
    H3 (3000Hz) = -7,45dB
    H5 (5000Hz) = -11,9dB
    H7 (7000Hz) = -14,84dB
    H9 (9000Hz) = -17,05dB

 

image.thumb.png.2eacc2ccc1a1a888497ce882777270b2.png

 

image.thumb.png.8d53c5593dc7ea43f5cadf1d2af6d999.png

A.wav

B.wav

 

Rgds.

Link to comment
1 hour ago, Arpiben said:

 

With further trials I realised that THD reported values are correct until you distort the phase. Shifting by one sample or adding periodic jitter is enough to trick the estimation.

Ref=A: square 1 kHz

Comp=B: A shifted by one sample time

 

THD for comparison B is wrong:

    H1 (1000Hz) = 1,08dB
    H3 (3000Hz) = -16,69dB
    H5 (5000Hz) = -37,37dB
    H7 (7000Hz) = -52,92dB
    H9 (9000Hz) = -55,65dB

 

Swap Ref&Comp -> THD reading A -> values are correct

    H1 (1000Hz) =  2,1dB
    H3 (3000Hz) = -7,45dB
    H5 (5000Hz) = -11,9dB
    H7 (7000Hz) = -14,84dB
    H9 (9000Hz) = -17,05dB

 

image.thumb.png.2eacc2ccc1a1a888497ce882777270b2.png

 

image.thumb.png.8d53c5593dc7ea43f5cadf1d2af6d999.png

A.wav 4 MB · 1 download

B.wav 4 MB · 1 download

 

Rgds.

 

Thanks, Arpiben. It appears the issue is not with phase, but with the length of the FFT relative to the length of your sample file (which is exactly 512k). Try using a shorter FFT of 256k instead of 512k. I get the following, much closer results:

 

Measuring A:

    H1 (1000Hz) = -1.42dB
    H3 (3000Hz) = -10.98dB
    H5 (5000Hz) = -15.43dB
    H7 (7000Hz) = -18.37dB
    H9 (9000Hz) = -20.58dB

 

Measuring B:

    H1 (1000Hz) = -1.42dB
    H3 (3000Hz) = -10.97dB
    H5 (5000Hz) = -15.42dB
    H7 (7000Hz) = -18.36dB
    H9 (9000Hz) = -20.57dB

 

I'll take a look as to why the simple case of the file matching the FFT size doesn't work in this case. That would seem to be the the easiest case to make work ;)

 

Link to comment
7 hours ago, pkane2001 said:

 

Thanks, Arpiben. It appears the issue is not with phase, but with the length of the FFT relative to the length of your sample file (which is exactly 512k). Try using a shorter FFT of 256k instead of 512k. I get the following, much closer results:

 

Measuring A:

    H1 (1000Hz) = -1.42dB
    H3 (3000Hz) = -10.98dB
    H5 (5000Hz) = -15.43dB
    H7 (7000Hz) = -18.37dB
    H9 (9000Hz) = -20.58dB

 

Measuring B:

    H1 (1000Hz) = -1.42dB
    H3 (3000Hz) = -10.97dB
    H5 (5000Hz) = -15.42dB
    H7 (7000Hz) = -18.36dB
    H9 (9000Hz) = -20.57dB

 

I'll take a look as to why the simple case of the file matching the FFT size doesn't work in this case. That would seem to be the the easiest case to make work ;)

 

 

Thanks Paul. What is interesting is that file A is also matching the FFT and the THD results are correct! ( compare A with A or swap ref & comp).

Rgds.

Link to comment
7 hours ago, Arpiben said:

 

Thanks Paul. What is interesting is that file A is also matching the FFT and the THD results are correct! ( compare A with A or swap ref & comp).

Rgds.

 

Try changing the FFT window to one of the simpler ones (BlackmanHarris or Hann, for example) and they work fine with both files at 512k.

 

I’ll need to spend some time on this, since it’s apparently related to FFT size, window type, combined with the number of samples being the same as FFT size... 

Link to comment
On 10/18/2019 at 6:31 AM, esldude said:

Here is the 997 hz tone mixed with white noise that worked pretty well for me in loopback using simple waveform.  

 

You can try it out and see if it is of any use. 

 

997 white noise minus 1 db.zip 19.24 MB · 3 downloads

I compared the result obtained with your signal. I think that every ADC should be coupled with a certain signal and then always use that.
I say this because I get worse results than the 64k white noise.

Link to comment
2 hours ago, TomCapraro said:

I compared the result obtained with your signal. I think that every ADC should be coupled with a certain signal and then always use that.
I say this because I get worse results than the 64k white noise.

That is odd.  I get better results with the signal I posted than yours.  And yours is just the reverse.  With the modulated white noise I get 15 db poorer difference results and 12 db poorer correlated null results.  This is with measure simple waveforms checked. 

 

With Measure simple waveforms unchecked.  My results on the modulated white noise deteriorate another 7 db, while with the signal I posted it improves an additional 10 db.   Makes me think neither signal is a good signal for general checking of how an ADC/DAC loop is performing. 

 

 

 

And always keep in mind: Cognitive biases, like seeing optical illusions are a sign of a normally functioning brain. We all have them, it’s nothing to be ashamed about, but it is something that affects our objective evaluation of reality. 

Link to comment
3 hours ago, TomCapraro said:

I compared the result obtained with your signal. I think that every ADC should be coupled with a certain signal and then always use that.
I say this because I get worse results than the 64k white noise.

 

I would expect white noise not to be a good candidate to measure with the 'simple waveform' setting, primarily because it's aperiodic.

Link to comment
1 hour ago, esldude said:

That is odd.  I get better results with the signal I posted than yours.  And yours is just the reverse.  With the modulated white noise I get 15 db poorer difference results and 12 db poorer correlated null results.  This is with measure simple waveforms checked. 

 

With Measure simple waveforms unchecked.  My results on the modulated white noise deteriorate another 7 db, while with the signal I posted it improves an additional 10 db.   Makes me think neither signal is a good signal for general checking of how an ADC/DAC loop is performing. 

 

 

 

Can you please post the wav delta file that I overlay with mine?
Probably there will be some signal even more suitable, but 19ps of RMS jitter and the difference spectrum so low from me produces results in line with the non-linear alterations of the dac

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...