Audibility of speaker nonlinear distortion - test

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Though I agree that linear issues are most audible for speakers, I am not sure that we may say that nonlinear distortion of speakers is not audible or is negligible. I also doubt the opinion that speaker nonlinear distortion has only low order components, as suggested e.g. by Geddes in [1]. The distortion profile of a speaker IME depends on speaker design, signal amplitude and signal frequency. A loudspeaker is a non-linear transducer.

I do not think it makes much sense to argue without proof, so I decided to prepare some test signals to check audibility of speaker nonlinear distortion. With my setup, I am able to remove quite effectively the ambient noise of the room and also microphone path noise, so I am able to get high dynamic range even from the recorded signal. You will see it in attached plots. Distortion of the amplifier that feeds the speaker under test is very very low, as you can see from the attachment as well.

It is very difficult or rather impossible to prepare a valid test with music samples, this way, it means by recording at acoustical side. So I have prepared 3 sets of test files with sine frequencies. Every set contains a source digital file and a recorded file with ambient noise and microphone noise removed.

1kHz sine at 4Vrms
http://pmacura.cz/speaker1k.zip

10kHz+12kHz twin tone IMD at 5.66Vpeak
http://pmacura.cz/speaker10+12k.zip
This is a test on intermodulation, be careful not to use very high gain, because the test signals are in the top octave of human audibility range.

2kHz sine
http://pmacura.cz/speaker2k.zip
This was recorded 2 years ago and I believe that at 2.8Vrms, but I am not absolutely sure. However, the speaker under test has the highest level of distortion at about 2kHz, though distortion profile is different. That is the reason why this test was posted as well.

100Hz sine (added Nov 16)
http://pmacura.cz/speaker100.zip

In case you are interested to participate in the test, please download the files and make Foobar ABX test. In case of a positive test result, please post a valid ABX protocol here. I suggest to make 12 or more trials during one test. That means 12/12 should be a great result.

I was able to get a positive and repeatable result for the 1kHz and 10+12kHz tests. I have troubles with the 2kHz test. And how about you?

Attached are the spectra of the recorded files and amplifier THD vs. frequency plot.

--------------------------------------------------------------------------
Literature:
[1] Geddes, E.R.: The Perception of Distortion. Audio Intelligence, Bangkok, Thailand, p. 26

=============================================================
Music sample with flute concert added on Nov 14
http://pmacura.cz/flute.zip

more in this post:
Audibility of speaker nonlinear distortion - test

=================================================================

Intermodulation test 60+300Hz added on Nov 18

http://pmacura.cz/60+300_speaker.zip

original file + recording through 7" woofer at 4Vrms
 

Attachments

  • 1000Hz_rec.PNG
    1000Hz_rec.PNG
    117.4 KB · Views: 642
  • 10+12khz_rec.PNG
    10+12khz_rec.PNG
    108.9 KB · Views: 633
  • speaker_dist_2k_extracted.PNG
    speaker_dist_2k_extracted.PNG
    116.7 KB · Views: 632
  • measuring_amp.PNG
    measuring_amp.PNG
    45.1 KB · Views: 620
Last edited:
Administrator
Joined 2007
Paid Member
Interesting. OK, let me start the ball rolling, I had just one attempt at each file:

(Edit... if you look at the second image you will see there are 22 samples with 15 and 16 appearing twice. That is Foobar, not me ;))
 

Attachments

  • 11 plus 12 kHz.JPG
    11 plus 12 kHz.JPG
    106.9 KB · Views: 115
  • 2 kHz.JPG
    2 kHz.JPG
    105.1 KB · Views: 134
  • 1 kHz.JPG
    1 kHz.JPG
    102 KB · Views: 617
Great result Karl, I think no need for you to torture your ears with further trials :D.

Code:
foo_abx 2.0.2 report
foobar2000 v1.3.7
2017-11-13 15:25:10

File A: 1000Hz_gen.wav
SHA1: b303226639a6f0633023c06bccc5dcc3711f2742
File B: 1000Hz_rec.wav
SHA1: 774114f7416ddbdc290faece1c8b02d9ec2f676c

Output:
WASAPI (event) : Speaker (USB Sound Blaster HD), 24-bit
Crossfading: NO

15:25:10 : Test started.
15:26:17 : 01/01
15:26:23 : 02/02
15:26:28 : 03/03
15:26:33 : 04/04
15:26:40 : 05/05
15:26:46 : 06/06
15:26:51 : 07/07
15:26:56 : 08/08
15:27:04 : 09/09
15:27:09 : 10/10
15:27:14 : 11/11
15:27:20 : 12/12
15:27:20 : Test finished.

 ---------- 
Total: 12/12
Probability that you were guessing: 0.0%

 -- signature -- 
66457f88b6d14c3ab2a65c0d976cef97242e4603

Code:
foo_abx 2.0.2 report
foobar2000 v1.3.7
2017-11-13 15:22:38

File A: 10+12khz_gen.wav
SHA1: 821894330fe457aa2c82286c7f323c34d0dab4ac
File B: 10+12khz_rec.wav
SHA1: 271b9efc65be91ca113cfc1248032534c9f88463

Output:
WASAPI (event) : Speaker (USB Sound Blaster HD), 24-bit
Crossfading: NO

15:22:38 : Test started.
15:22:52 : 01/01
15:22:59 : 02/02
15:23:03 : 03/03
15:23:07 : 04/04
15:23:11 : 05/05
15:23:15 : 06/06
15:23:20 : 07/07
15:23:24 : 08/08
15:23:28 : 09/09
15:23:32 : 10/10
15:23:37 : 11/11
15:23:43 : 12/12
15:23:43 : Test finished.

 ---------- 
Total: 12/12
Probability that you were guessing: 0.0%

 -- signature -- 
0e837b325355134d998e16492b65fe0fa979c212

I am not good in the 2kHz profile.
 
Administrator
Joined 2007
Paid Member
Thanks Pavel. I'm surprised you have trouble with the 2k one.

I don't know if this means much but the last time I tried listening (with headphones) to a function generator with switchable sine and square output, I found that at moderate volume and switching between sine and square I could differentiate the two up to around 4.8kHz. Above that frequency and both sounded the same.
 

TNT

Member
Joined 2003
Paid Member
Isn't sine a really bad signal for listening tests? I mean, it is transients that make up for the possibility to differentiate between instruments. Music is about transients. In tests with sine, these is only two and thats the beginning and end of the signal. In the simplests piece of music there are a lot.

My guess is that you will not find insufficiencies in the DUT by using sine in listening tests.

//
 
For the 1kHz test, try to play with volume. The generator file volume to be lowered until the limit of ear intrinsic distortion, must sound clean. Go to the limit until the ear starts to distort and remain just below. Then, the 1kHz recorded through speaker will have audible harmonics and 1kHz from generator will remain clean.

Sines are the only possibility for the test. The key is to remove "room sound", that means reverberations and room noise. It is possible with sine, but not possible with music or transients. If I did not remove the room noise from the files, one would immediately hear it as echoes and reverberations.
 

TNT

Member
Joined 2003
Paid Member
For the 1kHz test, try to play with volume. The generator file volume to be lowered until the limit of ear intrinsic distortion, must sound clean. Go to the limit until the ear starts to distort and remain just below. Then, the 1kHz recorded through speaker will have audible harmonics and 1kHz from generator will remain clean.

Sines are the only possibility for the test. The key is to remove "room sound", that means reverberations and room noise. It is possible with sine, but not possible with music or transients. If I did not remove the room noise from the files, one would immediately hear it as echoes and reverberations.

I fully agree on the aspects you mention. Unfortunately, it still does not make sine a good test signal as I see it.

Also, maybe better to compare 2 transducers, one with low distorsion and one with higher?

Manipulating one of the signals i.e. removing noise etc. I believe is an uncontrolled activity which might have effect on the object itself and thus the result of comparison might not be what we think. It's hard. But needs to be made as correct as possible or will fail to give an interpretable result.

There was different Fs used (48 and 44). For Mac users we need to change system setting in order to not get resampling by the OS (for most apps). Better beware.

But I'm all for it. Have never done any ABX until now really. I'm using a pair of Philips Fidelio L2 connected to a Macbook Pro Mid 2012.

//
 
until i can sort out foobar and file problems i can't do the test.
i've always reasoned that most speakers and amps have a sonic signature that is the culmination of both linear and non linear distortion, if this was not so then there would be no way we could distinguish any differences what so ever, but since the early days of audio this has always been a bone of contention.
 
Also, maybe better to compare 2 transducers, one with low distorsion and one with higher?

Manipulating one of the signals i.e. removing noise etc. I believe is an uncontrolled activity which might have effect on the object itself and thus the result of comparison might not be what we think. It's hard. But needs to be made as correct as possible or will fail to give an interpretable result.

There was different Fs used (48 and 44). For Mac users we need to change system setting in order to not get resampling by the OS (for most apps). Better beware.
//

There has to be one reference and this reference is always the pure clean signal.

Removal of the ambient noise is the only chance, as you will never get 2 runs with same ambient noise. As Scott Wurcer likes to say, there are never 2 same runs from the one vinyl record. This test, with speaker in the room, is even worse for repeatability of the ambient noise. The noise removal does not change harmonic content, as you can see from plots with and without ambient noise - attached.

The 2kHz recording is 2 years old and is in 44.1, you are right. But it should not matter, because 2kHz reference is also 44.1. The necessary condition is that the reference and recording must be at same Fs and bit depth.
 

Attachments

  • speaker_dist_2k.PNG
    speaker_dist_2k.PNG
    113.8 KB · Views: 238
  • speaker_dist_2k_extracted.PNG
    speaker_dist_2k_extracted.PNG
    116.7 KB · Views: 236
Last edited:
Administrator
Joined 2007
Paid Member
For the 1kHz test, try to play with volume. The generator file volume to be lowered until the limit of ear intrinsic distortion, must sound clean. Go to the limit until the ear starts to distort and remain just below. Then, the 1kHz recorded through speaker will have audible harmonics and 1kHz from generator will remain clean.

I found both the 1 and 2 kHz files are 100% distinguishable using just a volume level of '2' while the 11 + 12 kHz file needs a level of '4' to be 100% reliably differentiated. By way of comparison your Bach file was played at levels in the 60's and Marcel's files in the 40's.
 

Attachments

  • Vol 1.JPG
    Vol 1.JPG
    95.9 KB · Views: 225
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.