• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required as is 20 years of participation in forums (not all true). Come here to have fun, be ready to be teased and not take online life too seriously. We now measure and review equipment for free! Click here for details.

Phase Distortion ABX testing

BenB

Active Member
Joined
Apr 18, 2020
Messages
163
Likes
235
I am posting files to facilitate ABX testing for the types of phase distortions caused by crossovers. I have acquired samples that are royalty free, and that I find to be of good quality. I am not claiming that these are the ideal files to reveal differences, nor am I claiming that I have successfully differentiated between them in ABX testing. I have performed preliminary ABX testing only to verify that the files should support such testing. I'm in my forties now, and I don't like my chances.

The files are matched in duration, and are matched in level to within a couple hundredths of a dB or better. The only meaningful difference between matched files should be the phase response. I had to put them in flac format to get under the forum file size limit.

I have included spectral plots of the files, comparing the magnitude of the original and phase distorted versions. I have also included phase and group delay plots for the filters being applied.

I applied the phase distortion associated with a 4th order 100 Hz crossover to a kick drum, and to a piano strike. The piano strike is rich in harmonics, while the kick drum is not.
Kick_Drum_Spectral_Comparison.pngPiano_Strike_Spectral_Comparison.png
4th_order_xo_Allpass_100Hz_Phase.png4th_order_xo_Allpass_100Hz_GroupDelay.png
I applied the phase distortion associated with a 4th order 2000 Hz crossover to a cymbal crash.
Cymbal_Crash_Spectral_Comparison.png4th_order_xo_Allpass_2000Hz_Phase.png4th_order_xo_Allpass_2000Hz_GroupDelay.png

I included both of the allpass filters so that interested parties can use them to generate additional files for ABX testing, if anyone is so inclined.

I have seen many people claim that when phase correction is applied to a system (typically a speaker system), then everything magically falls into place and the experience is enhanced dramatically. Personally, I don't find anything dramatic about the phase distortion associated with typical crossovers, whether in the sub-to-satellite frequency range, or in the woofer-to-tweeter range. What do you think?
 

Attachments

  • Phase_ABX_files_flac.zip
    981.7 KB · Views: 62

Tim Link

Active Member
Forum Donor
Joined
Apr 10, 2020
Messages
178
Likes
173
Location
Eugene, OR
Listening on headphones to all those samples I didn't notice any obvious degradation due to the filters.
 

pma

Major Contributor
Forum Donor
Joined
Feb 23, 2019
Messages
2,124
Likes
3,603
Location
Prague
kick drum sample result
Edit: just few words - File A is more "dry".

Code:
foo_abx 2.0.2 report
foobar2000 v1.4.8
2021-01-21 21:01:02

File A: kick_drum_sample.flac
SHA1: af04a89d180e537125b2205611b00a80104a7411
File B: kick_drum_sample_100Hz_4th_order.flac
SHA1: 1e89a00e4fa866cc9f812e5059e3d8018dffa93a

Used DSPs:
Resampler (PPHS)

Output:
ASIO : DUO-CAPTURE EX
Crossfading: NO

21:01:02 : Test started.
21:01:10 : 00/01
21:01:20 : 01/02
21:01:27 : 01/03
21:01:34 : 02/04
21:01:44 : 03/05
21:02:04 : 04/06
21:02:10 : 05/07
21:02:19 : 06/08
21:02:30 : 07/09
21:02:42 : 08/10
21:02:42 : Test finished.

----------
Total: 8/10
Probability that you were guessing: 5.5%

-- signature --
ab97802ae8ee4945eeebf142241fb5d3635b59aa
 
Last edited:

andreasmaaan

Master Contributor
Forum Donor
Joined
Jun 19, 2018
Messages
6,652
Likes
9,119
I applied the phase distortion associated with a 4th order 2000 Hz crossover to a cymbal crash.

Are you sure that's a conventional 4th-order 2000Hz crossover?

Modelling an LR4 XO at 2000Hz, I get these phase and group delay responses.

Our phase responses match, but group delay is off by a factor of approximately three six.

My model:

1611261963458.png


And yours:

1611262222706.png
 
Last edited:

dasdoing

Major Contributor
Joined
May 20, 2020
Messages
1,458
Likes
774
Location
Salvador-Bahia-Brasil
Are you sure that's a conventional 4th-order 2000Hz crossover?

Modelling an LR4 XO at 2000Hz, I get these phase and group delay responses.

Our phase responses match, but group delay is off by a factor of approximately three. Your GD is what I'd expect from an approximately 12th-order XO.

View attachment 107611

he used an allpass (to maintain FR)
 

andreasmaaan

Master Contributor
Forum Donor
Joined
Jun 19, 2018
Messages
6,652
Likes
9,119
he used an allpass (to maintain FR)

Sure, I understand that. Group delay is still approx. 3 times worse than it should be for a 4th-order XO.

EDIT: oops, stupid arithmetic error on my part: six times worse.
 

andreasmaaan

Master Contributor
Forum Donor
Joined
Jun 19, 2018
Messages
6,652
Likes
9,119
OP
B

BenB

Active Member
Joined
Apr 18, 2020
Messages
163
Likes
235
Are you sure that's a conventional 4th-order 2000Hz crossover?

Modelling an LR4 XO at 2000Hz, I get these phase and group delay responses.

Our phase responses match, but group delay is off by a factor of approximately three six.

My model:

View attachment 107611

And yours:
For an ideal LR4 XO the additional group delay will be somewhat under 0.5ms (approx. 0.3ms), but yes, 0.5ms is a worst-case scenario.

In the OP, @BenB's graph shows approximately 1.7ms of group delay. Something's not right there.

Simple scaling factor mistakes are easy to make. I don't have a history of how I created those group delay plots, but I suspect there was a factor of 2*pi that was misapplied. I (mis)calculated the group delay from the phase response. The filters have the advertised frequency and phase characteristics. The group delay was miscalculated. My apologies. Please feel free to check the filters (you wouldn't be the first).
 

andreasmaaan

Master Contributor
Forum Donor
Joined
Jun 19, 2018
Messages
6,652
Likes
9,119
Simple scaling factor mistakes are easy to make. I don't have a history of how I created those group delay plots, but I suspect there was a factor of 2*pi that was misapplied. I (mis)calculated the group delay from the phase response. The filters have the advertised frequency and phase characteristics. The group delay was miscalculated. My apologies. Please feel free to check the filters (you wouldn't be the first).

That makes sense, thanks.

I didn't check the 100Hz filter, but it also appears to be off by a factor of approximately 6 (or perhaps 2pi, as you say).

How did you create the filters, btw?
 

ctrl

Major Contributor
Joined
Jan 24, 2020
Messages
1,057
Likes
3,412
Location
.de, DE, DEU
Thanks for the samples.

There was an audible difference in the kick drum and piano stroke, but it was very unobtrusive and only manifested itself as a slight difference in the low end for me.
I was not allowed to concentrate on the signal, but casually noticed a slight difference in "low bass pressure".

For me there was no "magical difference" that appeared, rather it was hard work to hear any difference at all.

kick-drum1611262009834.png piano1611262660035.png


But the value for the group delay for a fourth order x-over at 100Hz is much too high at 35ms. Is there a mistake? For such an extreme GD around 100Hz, you have to construct an artificial case.
1611264557959.png

If there really was a 30-35ms group delay around 100Hz in the samples, one can assume that the group delay of "normal" loudspeakers (at least in the low frequencies) is inaudible. No reasonably designed loudspeaker has 35ms group delay around 100Hz.

Here as an example [email protected]:
1611265283348.png


UPDATE: Sorry @BenB missed your reply. Then the seven times too high value, will probably also be miscalculated
.
 
OP
B

BenB

Active Member
Joined
Apr 18, 2020
Messages
163
Likes
235
That makes sense, thanks.

I didn't check the 100Hz filter, but it also appears to be off by a factor of approximately 6 (or perhaps 2pi, as you say).

How did you create the filters, btw?

Thanks for catching the mistake. I created the filters in octave (which works pretty much like matlab). I applied a few tricks to reduce the magnitude errors. If you're into DSP and want to have a more in-depth discussion, message me. (That goes for anyone.)
 

andreasmaaan

Master Contributor
Forum Donor
Joined
Jun 19, 2018
Messages
6,652
Likes
9,119
Thanks for catching the mistake. I created the filters in octave (which works pretty much like matlab). I applied a few tricks to reduce the magnitude errors. If you're into DSP and want to have a more in-depth discussion, message me. (That goes for anyone.)

Thanks :) I'll pm you over the weekend when I have a bit more time. My idea is to reproduce the same files using different software so that we can compare our results. In the past, I've tried similar experiments to this with similar levels of group delay, and nobody has yet been reliably able to discern a difference... Not suggesting you're doing anything wrong here, but just that it would be worth having another data point.
 

ctrl

Major Contributor
Joined
Jan 24, 2020
Messages
1,057
Likes
3,412
Location
.de, DE, DEU
My idea is to reproduce the same files using different software so that we can compare our results. In the past, I've tried similar experiments to this with similar levels of group delay, and nobody has yet been reliably able to discern a difference...

Did a rough analysis of the kick drum sample files. As far as I can tell, nothing conspicuous can be detected.

A small difference in the sound level is noticeable around 100Hz (allpass frequency). In the diagram the samples with and without allpass are compared with different FFT sizes:
1611303587975.png

The difference in sound pressure is less than 1dB.

Next, let's look at the phase frequency response of the kick drum samples. Around 100Hz, the difference between the unmodified sample and the one with the 4th order allpass should be 180°.

Unmodified sample (with unwrap phase - see green dots):
1611303844329.png


Sample with allpass 4th order (with unwrap phase - see blue dots):
1611303943523.png


The phase shift is almost exactly 180°. So also here everything is as described by @BenB

Except for the slight sound pressure deviation, I can't detect any error in the kick drum samples.
The question now is whether you can hear the small sound pressure deviation in the ABX test, or whether the phase shift is audible?
.
 

pma

Major Contributor
Forum Donor
Joined
Feb 23, 2019
Messages
2,124
Likes
3,603
Location
Prague
In 2018, I posted a test on allpass phase distortion on diyaudio

https://www.diyaudio.com/forums/everything-else/328339-audibility-allpass-phase-distortion-test.html

My opinion is that under certain conditions the allpass distortion may be audible and can be reliably proven in the ABX test. We may discuss why, because of the headphones used, because of the speakers used. I also have a positive result with speakers. Please also let me note that ABX testing needs training, trained ear.

Scientific literature on this topic exists, like
https://vbn.aau.dk/ws/portalfiles/portal/227876517/2007_M_ller_et_al_AES_Journal.pdf
 
Last edited:
OP
B

BenB

Active Member
Joined
Apr 18, 2020
Messages
163
Likes
235
Did a rough analysis of the kick drum sample files. As far as I can tell, nothing conspicuous can be detected.

A small difference in the sound level is noticeable around 100Hz (allpass frequency). In the diagram the samples with and without allpass are compared with different FFT sizes:
View attachment 107733
The difference in sound pressure is less than 1dB.

...

Except for the slight sound pressure deviation, I can't detect any error in the kick drum samples.
The question now is whether you can hear the small sound pressure deviation in the ABX test, or whether the phase shift is audible?
.

Thanks for looking at this ctrl. If you can, please take a look at the filters themselves. You should see that they are almost perfectly flat in frequency magnitude response. I suspect your analysis of the audio is showing small level differences because the content is (very) dynamic, and the all-pass has created a frequency-dependent time shift. This means that when you take an fft with the same start and stop sample between the files, you are capturing slightly different musical content, which will show a slightly different magnitude response. I suspect your longest fft shows the smallest amount of difference because your window is getting big compared to the time-shift.
 
OP
B

BenB

Active Member
Joined
Apr 18, 2020
Messages
163
Likes
235
My
In 2018, I posted a test on allpass phase distortion on diyaudio

https://www.diyaudio.com/forums/everything-else/328339-audibility-allpass-phase-distortion-test.html

My opinion is that under certain conditions the allpass distortion may be audible and can be reliably proven in the ABX test. We may discuss why, because of the headphones used, because of the speakers used. I also have a positive result with speakers. Please also let me note that ABX testing needs training, trained ear.

Scientific literature on this topic exists, like
https://vbn.aau.dk/ws/portalfiles/portal/227876517/2007_M_ller_et_al_AES_Journal.pdf

Unfortunately, literature can be confusing. Someone can read that phase distortion is audible (at least under certain conditions), and see that as supporting the claims of certain manufacturers (and forum posters) that phase is very important. Some of these posters may have even been involved in A/B testing that drastically exaggerated the importance of phase because the tests weren't properly designed and controlled. That's why I think it's important for people to hear properly controlled phase distortion tests with musical content that has relevance to what they might actually listen to. Even if they find that they have very good hearing and concentration skills, and are able to discern a difference between distorted and undistorted versions, it's unlikely they can convince themselves that the difference is anything but extremely minor.

About 20 years ago I attended a DIY audio event where participants were asked to score the sound of a speaker in 2 configurations. One was a transient-perfect configuration, and the other wasn't. I ended up having the best score of anyone there (something like 9/12), and some people wanted to point to my apparent success as indicating that the transient-perfect design was better. I wrote a rather lengthy post describing how I felt that I was able to ever-so-slightly identify a characteristic sound for each version, but that I actually preferred different versions on different music samples. I guess the point I'm making is that everyone but the scammers will be better off if we are all just honest with ourselves and each other about the importance of what we hear.
 

dasdoing

Major Contributor
Joined
May 20, 2020
Messages
1,458
Likes
774
Location
Salvador-Bahia-Brasil
even those who claim not to hear the delays will find this intresting:

two meassurements, one minimum phase corrected, the other linear phase corrected. they are basicly similar in the 500ms window:

adr.jpg


now look what happens if we put those two into a 5 cycle freq. dependent window

fred.jpg


the green is the phase correted. it is not perfect because else pre-delay occures

if anybody thinks this is faked, I post the mdat
 
Top Bottom