Jump to content
IGNORED

Subtle differences in EQ & phase


Recommended Posts

Over the last few months, I have had an eye opening experience about the importance of phase and accurate EQ.  Most of you know about my project about accurately recovering the sound of old recordings.   Many of the previous digital CDs were mastered in a way that can obscure the detail and deep beauty of older (mostly pop & jazz) recordings.   Part of the decoding mechansim requires careful EQ and even *some* phase matching so that subsequent processing will not make mistakes.

 

I am providing two cuts of exactly the same material, in one case there is an EQ error where a filter with a very small/thin gain change.  The specific filter was a bass boost of 0.375dB at 1kHz.  One version has the correct Q of 0.50 (2 pole degenerate Bessel), and the other has a Q of 0.707106 (2 pole Butterworth).  This is a very subtle electronic difference.  There IS an audible difference -- but is probably tricky for most people to discern...   There are two 'flac' files, I am not using mp3 because we want to keep everything 100% straight and accurate.

 

To those who can distinguish the difference, you can see one reason why I try to avoid 'mastering' in test examples that I produce, and why the corrective EQ can be so tricky.

Remember, these are both relatively minor 0.375dB filters, and the difference betwee Q=0.707 and Q=0.50, both deemed relatively mild filters, can be very signficant.

 

The exact commands used to produce the two files are below -- and I'll divulge the relation between 'A' and 'B' in a few hours. Note that the usage of the names is relative.  One might deem the 'smooth' one a little rough also.

 

Creates 'rough.flac':

> sox Arrival/04* --bits=16 ../flatness/rough.flac trim 35 20 bass +1.5 45 1.0q bass +0.75 750 0.50q bass +0.375 1k 0.707106q treble -0.75 9k 0.50q treble -0.75 12k 0.50q rate -v 44.1k

 

Creates 'smooth.flac':

> sox Arrival/04* --bits=16 ../flatness/smooth.flac trim 35 20 bass +1.5 45 1.0q bass +0.75 750 0.50q bass +0.375 1k 0.50q treble -0.75 9k 0.50q treble -0.75 12k 0.50q rate -v 44.1k

 

 

I have the files symlinked to the more descriptive name, so there will be no error in my memory.  PS: these files are REALLY different :-).

 

John

 

 

 

B.flac A.flac

Link to comment
3 hours ago, John Dyson said:

Over the last few months, I have had an eye opening experience about the importance of phase and accurate EQ.  Most of you know about my project about accurately recovering the sound of old recordings.   Many of the previous digital CDs were mastered in a way that can obscure the detail and deep beauty of older (mostly pop & jazz) recordings.   Part of the decoding mechansim requires careful EQ and even *some* phase matching so that subsequent processing will not make mistakes.

 

I am providing two cuts of exactly the same material, in one case there is an EQ error where a filter with a very small/thin gain change.  The specific filter was a bass boost of 0.375dB at 1kHz.  One version has the correct Q of 0.50 (2 pole degenerate Bessel), and the other has a Q of 0.707106 (2 pole Butterworth).  This is a very subtle electronic difference.  There IS an audible difference -- but is probably tricky for most people to discern...   There are two 'flac' files, I am not using mp3 because we want to keep everything 100% straight and accurate.

 

To those who can distinguish the difference, you can see one reason why I try to avoid 'mastering' in test examples that I produce, and why the corrective EQ can be so tricky.

Remember, these are both relatively minor 0.375dB filters, and the difference betwee Q=0.707 and Q=0.50, both deemed relatively mild filters, can be very signficant.

 

The exact commands used to produce the two files are below -- and I'll divulge the relation between 'A' and 'B' in a few hours. Note that the usage of the names is relative.  One might deem the 'smooth' one a little rough also.

 

Creates 'rough.flac':

> sox Arrival/04* --bits=16 ../flatness/rough.flac trim 35 20 bass +1.5 45 1.0q bass +0.75 750 0.50q bass +0.375 1k 0.707106q treble -0.75 9k 0.50q treble -0.75 12k 0.50q rate -v 44.1k

 

Creates 'smooth.flac':

> sox Arrival/04* --bits=16 ../flatness/smooth.flac trim 35 20 bass +1.5 45 1.0q bass +0.75 750 0.50q bass +0.375 1k 0.50q treble -0.75 9k 0.50q treble -0.75 12k 0.50q rate -v 44.1k

 

 

I have the files symlinked to the more descriptive name, so there will be no error in my memory.  PS: these files are REALLY different :-).

 

John

 

 

 

B.flac 1.74 MB · 2 downloads A.flac 1.74 MB · 2 downloads

 

Another comment -- these audible differences are not because of absolute phase, but either the amplitude differences of the filters (super minor) or phase cancellation.   This does show that it can be very tricky to modify audio without great care.  (Hint: using & mixing Bessel (analog) or linear phase filters with the same delays (digital) can make life much easier than just mixing random filters....  Gotta be very careful.)

Also, very slight differences in level or phase differences can change a recording from 'okay' to 'really nice'.

 

Here are the file relationships directly from the ls (directory) command, FYI:

 

drwxrwxr-x  2 jdyson jdyson    4096 Jan  9 07:24 .
lrwxrwxrwx  1 jdyson jdyson      10 Jan  9 07:24 A.flac -> rough.flac
lrwxrwxrwx  1 jdyson jdyson      11 Jan  9 07:24 B.flac -> smooth.flac
-rw-rw-r--  1 jdyson jdyson 1828520 Jan  9 07:22 rough.flac
-rw-rw-r--  1 jdyson jdyson 1828636 Jan  9 07:21 smooth.flac
drwxr-xr-x 90 jdyson disk     16384 Jan  9 07:20 ..

 

Link to comment
3 hours ago, John Dyson said:

Over the last few months, I have had an eye opening experience about the importance of phase and accurate EQ.  Most of you know about my project about accurately recovering the sound of old recordings.   Many of the previous digital CDs were mastered in a way that can obscure the detail and deep beauty of older (mostly pop & jazz) recordings.   Part of the decoding mechansim requires careful EQ and even *some* phase matching so that subsequent processing will not make mistakes.

 

I am providing two cuts of exactly the same material, in one case there is an EQ error where a filter with a very small/thin gain change.  The specific filter was a bass boost of 0.375dB at 1kHz.  One version has the correct Q of 0.50 (2 pole degenerate Bessel), and the other has a Q of 0.707106 (2 pole Butterworth).  This is a very subtle electronic difference.  There IS an audible difference -- but is probably tricky for most people to discern...   There are two 'flac' files, I am not using mp3 because we want to keep everything 100% straight and accurate.

 

To those who can distinguish the difference, you can see one reason why I try to avoid 'mastering' in test examples that I produce, and why the corrective EQ can be so tricky.

Remember, these are both relatively minor 0.375dB filters, and the difference betwee Q=0.707 and Q=0.50, both deemed relatively mild filters, can be very signficant.

 

The exact commands used to produce the two files are below -- and I'll divulge the relation between 'A' and 'B' in a few hours. Note that the usage of the names is relative.  One might deem the 'smooth' one a little rough also.

 

Creates 'rough.flac':

> sox Arrival/04* --bits=16 ../flatness/rough.flac trim 35 20 bass +1.5 45 1.0q bass +0.75 750 0.50q bass +0.375 1k 0.707106q treble -0.75 9k 0.50q treble -0.75 12k 0.50q rate -v 44.1k

 

Creates 'smooth.flac':

> sox Arrival/04* --bits=16 ../flatness/smooth.flac trim 35 20 bass +1.5 45 1.0q bass +0.75 750 0.50q bass +0.375 1k 0.50q treble -0.75 9k 0.50q treble -0.75 12k 0.50q rate -v 44.1k

 

 

I have the files symlinked to the more descriptive name, so there will be no error in my memory.  PS: these files are REALLY different :-).

 

John

 

 

 

B.flac 1.74 MB · 2 downloads A.flac 1.74 MB · 2 downloads

 

Here's the phase difference (blue). A minor dip around 1kHz:

 

image.thumb.png.422dd8097c00f6393fab7721bb319f6f.png

Link to comment
16 minutes ago, pkane2001 said:

 

Here's the phase difference (blue). A minor dip around 1kHz:

 

image.thumb.png.422dd8097c00f6393fab7721bb319f6f.png

Your results are very close to what I expected.  It is amazing to me the slight difference in response.  I acutally have some understanding about what is going on -- the underlying signal needs to support the associated harmonics.  When they don't match, then the sound becomes confusing.

 

That is, if you have a relatively pristine signal -- the original is close to good quality, believe it or not, the Q=0.50 or the raw material are relatively smooth, the fundamentals and harmonics match -- so don't sound confusing.  When you have a higher Q, then the signal (or worse, harmonics) become uncorrelated -- therefore more confusing. (not using correlated as a technical term, but the timing skews and differences from expected amplitudes become strong enough to be noticeable.)

 

It is difficult to hear these effects on material that has *already* been ham-handedly molested -- it is hyper tricky to make sure that the signal is maintained or re-constructed to be pristine, especially when filtering is NECESSARY!!!  This kind of demo isn't very possible on some of the scrambled material that is so common today.

 

John

 

Link to comment
1 hour ago, fas42 said:

Okay, even with cold laptop playback the difference is clear - to me, B.flac is fuller, richer; A.flac has a feeling of being in a minor key, and conveys a stronger sense of being distorted.

You are seeing the level of quality that is needed to do proper decoding.  A lot of time, the miscreant fake-mastering scrambles the signal so bad that it is almost impossible to recover it to pristine state.  It is only the last few days that I figured out the ABBA formula -- I was very close all along, but got a few things backwards.  To decode ABBA from their feral-DolbyA albums, this is necessary to get the signal to pristine state, where the smooth snippet was cut from:

 

feralA ->corrective EQ -> widen L+R by 1.414 -> decode DA -> narrow L+R by 0.8409 -> pristine

The calibration is usually in the -12.40dB to -12.68dB range, and sometimes the R channel (the S of M+S) is either 3dB or 6dB less.  This is done because the 'side' channel is often much lower level in true stereo recordings, so they set the calibration threshold at an associated lower level.  The 3dB difference is seen in ABBA, 6dB on Phil...  Sometimes there is no calibration difference.

 

Where the corrective EQ for ABBA albums is thus (filters in sequence):

 

1) bass -6 2500 0.50q bass +6 1000 0.50q treble +6 2500 0.50q

2) bass -3 2250 0.50q bass +3 750 0.50q treble +3 2250 0.50q

3A) treble -1.5 4.25k 0.50q treble -3.0 4.5k 0.50q

3B) treble -1.5 5.75k 0.50q treble -3.0 6k 0.50q

4A) treble -1.0 8750 0.500q treble -2.0 9k 0.500q

4B) treble -1.0 11.75k 0.500q treble -2.0 12k 0.500q

 

Different recordings need different frequencies on the first two lines, but are almost always 250Hz apart in the 2k to 3k range, and 250Hz increments. (Frequencies like 3000/2750, 2750/2500 or 2500/2250 seem most common.)

The frequencies for the next four lines are always the same, but the gains are always the same for each group of two (Both lines 3 are the same gain, and both lines 4 are the same gain.)   Usually lines 4 are same or less than lines 3, but not always.

 

The total of the gain losses for lines 3 are never more than -12dB

The total of the gain losses for lines 4 are never more than -12dB

Seldom is the total gain losses for lines 3 and lines 4 together more than -18dB.

 

Sometimes the widening and narrowing are not needed (e.g. Supertramp), but a lot of material needs it.  This is probably intended to make the stereo image sound most similar when in such a compressed DolbyA state.  ABBA, Carpenters, Phil Collins seem to need the narrowing and widening -- and that fact (the narrowing and widening) is the most recent 'trick' that I have figured out.

 

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

I think that I can create a relatively simple interface inside the DHNRDS that does all of these calculations, and after a few quick relatime test runs, the required gains can be found (probably no more than 4-5 iterations.)

 

John

 

Link to comment
1 hour ago, John Dyson said:

You are seeing the level of quality that is needed to do proper decoding.  A lot of time, the miscreant fake-mastering scrambles the signal so bad that it is almost impossible to recover it to pristine state.  It is only the last few days that I figured out the ABBA formula -- I was very close all along, but got a few things backwards.  To decode ABBA from their feral-DolbyA albums, this is necessary to get the signal to pristine state, where the smooth snippet was cut from:

 

feralA ->corrective EQ -> widen L+R by 1.414 -> decode DA -> narrow L+R by 0.8409 -> pristine

The calibration is usually in the -12.40dB to -12.68dB range, and sometimes the R channel (the S of M+S) is either 3dB or 6dB less.  This is done because the 'side' channel is often much lower level in true stereo recordings, so they set the calibration threshold at an associated lower level.  The 3dB difference is seen in ABBA, 6dB on Phil...  Sometimes there is no calibration difference.

 

Where the corrective EQ for ABBA albums is thus (filters in sequence):

 

1) bass -6 2500 0.50q bass +6 1000 0.50q treble +6 2500 0.50q

2) bass -3 2250 0.50q bass +3 750 0.50q treble +3 2250 0.50q

3A) treble -1.5 4.25k 0.50q treble -3.0 4.5k 0.50q

3B) treble -1.5 5.75k 0.50q treble -3.0 6k 0.50q

4A) treble -1.0 8750 0.500q treble -2.0 9k 0.500q

4B) treble -1.0 11.75k 0.500q treble -2.0 12k 0.500q

 

Different recordings need different frequencies on the first two lines, but are almost always 250Hz apart in the 2k to 3k range, and 250Hz increments. (Frequencies like 3000/2750, 2750/2500 or 2500/2250 seem most common.)

The frequencies for the next four lines are always the same, but the gains are always the same for each group of two (Both lines 3 are the same gain, and both lines 4 are the same gain.)   Usually lines 4 are same or less than lines 3, but not always.

 

The total of the gain losses for lines 3 are never more than -12dB

The total of the gain losses for lines 4 are never more than -12dB

Seldom is the total gain losses for lines 3 and lines 4 together more than -18dB.

 

Sometimes the widening and narrowing are not needed (e.g. Supertramp), but a lot of material needs it.  This is probably intended to make the stereo image sound most similar when in such a compressed DolbyA state.  ABBA, Carpenters, Phil Collins seem to need the narrowing and widening -- and that fact (the narrowing and widening) is the most recent 'trick' that I have figured out.

 

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

I think that I can create a relatively simple interface inside the DHNRDS that does all of these calculations, and after a few quick relatime test runs, the required gains can be found (probably no more than 4-5 iterations.)

 

John

 

I forgot a step -- when doing the 'decode DA' step, most often the feral DolbyA is best decoded in M+S mode, so currently the DHNRDS has a switch that matrixes the signal to M+S and back to L+R again.  That switch was just added, but more of the EQ will be added some day soon to make the decoding simpler on systems where pipelines are more inconvenient like on Windows.

 

John

 

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