Hi everyone,
I'm hoping I can ask you to help me with something I've really struggled with. I've built a number of passive speakers and I think I understand the concepts of acoustics offsets and the phase relationships of LP and HP drivers and the need to account for acoustic offsets. I recently built a 3 way speaker with LR4 filters and while I was able to finish it successfully it also pointed out a huge gap in my understanding. The relationship between the physical acoustic offsets of a driver and group delay. Let me see if I can express this in a very practical way.
Consider this design with idealized drivers and zero acoustic offsets:
Simple LR4 HP/LP, sums to 1 and the phase wraps around at 1 kHz like it should. So, new to me is the all pass behavior. Below 1 kHz the LP filter now has a group delay ~ 4 mSeconds.
Ok, this part I can accept. It's the very next part where I prove how little I understand. In a "real" 2-way the woofer could be 1" or more behind (lag) the tweeter. Using DSP, this is a simple problem of tweeter delay. So my question is, how much does the GD of this LR4 filter affect my choices? In reality I ended up getting to an ideal delay by examining the null with an inverted driver, but I'm asking in theory here. What's the net effect to my delay, and why? It seems based on empirical practice that I needed much less delay than expected, and i don't now why.
Thanks for theorizing with me and helping me overcome this big mental wall I"m hitting.
I'm hoping I can ask you to help me with something I've really struggled with. I've built a number of passive speakers and I think I understand the concepts of acoustics offsets and the phase relationships of LP and HP drivers and the need to account for acoustic offsets. I recently built a 3 way speaker with LR4 filters and while I was able to finish it successfully it also pointed out a huge gap in my understanding. The relationship between the physical acoustic offsets of a driver and group delay. Let me see if I can express this in a very practical way.
Consider this design with idealized drivers and zero acoustic offsets:
Simple LR4 HP/LP, sums to 1 and the phase wraps around at 1 kHz like it should. So, new to me is the all pass behavior. Below 1 kHz the LP filter now has a group delay ~ 4 mSeconds.
Ok, this part I can accept. It's the very next part where I prove how little I understand. In a "real" 2-way the woofer could be 1" or more behind (lag) the tweeter. Using DSP, this is a simple problem of tweeter delay. So my question is, how much does the GD of this LR4 filter affect my choices? In reality I ended up getting to an ideal delay by examining the null with an inverted driver, but I'm asking in theory here. What's the net effect to my delay, and why? It seems based on empirical practice that I needed much less delay than expected, and i don't now why.
Thanks for theorizing with me and helping me overcome this big mental wall I"m hitting.
The outputs of a two-way Linkwitz-Riley filter are electrically in phase when the order is 4n with integer n and 180 degrees out of phase when the order is 4n + 2 (in which case you would normally invert the tweeter polarity to correct for that), so to get the outputs acoustically in phase, you have to correct for driver phase response and the horizontal distance between the driver's acoustic centres. The fact that the Linkwitz-Riley filter outputs sum up to an all-pass response doesn't change that.
When you don't correct for driver phase response and the horizontal distance between the driver's acoustic centres, the aberrations you get may well be smaller with Linkwitz-Riley than you would get with a crossover of which the outputs are, for example, electrically 90 degrees out of phase. With 90 degrees of crossover phase difference, you only need to add another 90 degrees to get an unintended deep notch.
When you don't correct for driver phase response and the horizontal distance between the driver's acoustic centres, the aberrations you get may well be smaller with Linkwitz-Riley than you would get with a crossover of which the outputs are, for example, electrically 90 degrees out of phase. With 90 degrees of crossover phase difference, you only need to add another 90 degrees to get an unintended deep notch.
D
Deleted member 375592
Take it easy. Group delay is a mathematical abstraction, the derivative of phase response. Group delay does not have any more physical meaning than that. When you look at the high-pass filter, you see a negative group delay. It does not mean the total break up of the law of causality.
When you sum 2 Butterworth filters, low and high, the sum is flat, with zero phase and 0 group delay... and that's it. You'll need to test by measuring overall IR, see if it worked, and correct the tweeter delay if it does not. It is easy with DSP, but much more difficult with passive filters.
When you sum 2 Butterworth filters, low and high, the sum is flat, with zero phase and 0 group delay... and that's it. You'll need to test by measuring overall IR, see if it worked, and correct the tweeter delay if it does not. It is easy with DSP, but much more difficult with passive filters.
When you sum 2 Butterworth filters, low and high, the sum is flat, with zero phase and 0 group delay... and that's it.
Only when they are first-order filters.
First order, normalized:
Low-pass: HLP = 1/(s + 1)
High-pass: HHP = s/(s + 1)
Sum: (1 + s)/(s + 1) = 1. So far, so good.
Third order, normalized:
Low-pass: HLP = 1/(s3 + 2s2 + 2s + 1)
High-pass: HHP = s3/(s3 + 2s2 + 2s + 1)
Sum: (1 + s3)//(s3 + 2s2 + 2s + 1). Terms in s2 and s missing from the numerator, so not equal to 1 for all s.
The magnitude response does get flat for the third-order case. It becomes an all-pass.
Low-pass: HLP = 1/(s + 1)
High-pass: HHP = s/(s + 1)
Sum: (1 + s)/(s + 1) = 1. So far, so good.
Third order, normalized:
Low-pass: HLP = 1/(s3 + 2s2 + 2s + 1)
High-pass: HHP = s3/(s3 + 2s2 + 2s + 1)
Sum: (1 + s3)//(s3 + 2s2 + 2s + 1). Terms in s2 and s missing from the numerator, so not equal to 1 for all s.
The magnitude response does get flat for the third-order case. It becomes an all-pass.
Last edited:
Below is a VituixCAD simulation of complementary 3rd-order Butterworth low-pass and high-pass filters. The results clearly show a non-zero phase response when summed. Only the 1st-order Butterworth filters sum flat with zero phase and zero group delay.
And if we invert the phase on the high-pass section, we obtain the following phase response. This option produces a bit less group delay in the summed response. The magnitude response sums to a flat response just as before.
And if we invert the phase on the high-pass section, we obtain the following phase response. This option produces a bit less group delay in the summed response. The magnitude response sums to a flat response just as before.
If we add some extra filtering to approximate the magnitude and phase responses of a coincident woofer and tweeter, the following circuit is created.It seems based on empirical practice that I needed much less delay than expected, and i don't now why.
This then produces the following magnitude response, where a small dip in the crossover region is evident. That's because of the mismatch caused by the magnitude and phase responses of the drivers.
Moving the woofer back by 17.9mm produces the following much flatter summed response.
Last edited:
D
Deleted member 375592
fs=48000;fn=fs/2;
fc=1000;
N=5;
[bl,al]=butter(N,fc/fn);
[bh,ah]=butter(N,fc/fn,'high');
a=conv(al,ah);
b=conv(bh,al)+conv(bl,ah);
[hz,fz]=freqz(b,a,fn,fs);
hh=freqz(bh,ah,fn,fs);
hl=freqz(bl,al,fn,fs);
figure(1);
semilogx(fz,db(hl),fz,db(hh),fz,db(hz));grid on;xlim([20 fn]);ylim([-10 2]);
xlabel('freq,Hz');
ylabel('dB');
str=sprintf('f=%dHz order=%d',fc,N); title(str);
Yes, there is angle non-zero-ness, as @witwald showed, which I agree I disregarded.
fc=1000;
N=5;
[bl,al]=butter(N,fc/fn);
[bh,ah]=butter(N,fc/fn,'high');
a=conv(al,ah);
b=conv(bh,al)+conv(bl,ah);
[hz,fz]=freqz(b,a,fn,fs);
hh=freqz(bh,ah,fn,fs);
hl=freqz(bl,al,fn,fs);
figure(1);
semilogx(fz,db(hl),fz,db(hh),fz,db(hz));grid on;xlim([20 fn]);ylim([-10 2]);
xlabel('freq,Hz');
ylabel('dB');
str=sprintf('f=%dHz order=%d',fc,N); title(str);
Yes, there is angle non-zero-ness, as @witwald showed, which I agree I disregarded.
Last edited by a moderator:
-Z in this case moves the woofer toward the mic (forward). Positive is away from (and negative Y is down the baffle I believe).Moving the woofer back by 17.9mm produces the following much flatter summed response.
View attachment 1343930
Thanks for spotting my mistake. I have this (intuitive) habit of thinking that the microphone is located at Z = +2500mm in VituixCAD, whereas in reality it is located at Z = −2500mm.
Group delay's the black line, so more like 0.5mS.Below 1 kHz the LP filter now has a group delay ~ 4 mSeconds.
In your sim with both drivers at the exact same position, add an active delay module to D2. How much HF delay do you need for the deepest null? None. What if you move the LF to Z = 75mm? 218uS, which matches that distance almost exactly.It seems based on empirical practice that I needed much less delay than expected, and i don't now why.
Changing 1uS is like moving the driver 0.344mm, less than 1/64". This is definitely sim-only land.
D
Deleted member 375592
Finally, I read your question with more attention. Please let me rephrase what @HammerSandwich, @MarcelvdG, and @witwald said. In LR4 cases, the phases of the sum, the low, and the high driver are all different by 2*pi, ie identical. As all phases are the same, they all have exactly the same GD. Thus, you do not need to add any delay at all, neither to D1 nor to D2. 🙂It seems based on empirical practice that I needed much less delay than expected, and i don't now why.
This is not the case with odd-order Butterworth ie, my initial assumption was wrong. Mea maxima culpa...
Below is a VituixCAD simulation of complementary 3rd-order Butterworth low-pass and high-pass filters. The results clearly show a non-zero phase response when summed.
And if we invert the phase on the high-pass section, we obtain the following phase response. This option produces a bit less group delay in the summed response. The magnitude response sums to a flat response just as before.
View attachment 1343911
Good point, you change the combined output signals of the third-order Butterworth crossover from second-order Q = 1 all-pass to first-order all-pass when you invert the tweeter.
Outputs summed:
numerator s3 + 1, so zeros where s3 + 1 = 0, that is, at -1 and at +1/2 +/- j√3/2. The real zero is covered by one of the Butterworth poles, the two complex zeros are not.
Outputs subtracted:
numerator -s3 + 1, so zeros where -s3 + 1 = 0, that is, at +1 and at -1/2 +/- j√3/2. The two complex zeros are covered by Butterworth poles, the real zero is not.
Hi everyone,
I'm hoping I can ask you to help me with something I've really struggled with.
Ok, this part I can accept. It's the very next part where I prove how little I understand. In a "real" 2-way the woofer could be 1" or more behind (lag) the tweeter. Using DSP, this is a simple problem of tweeter delay. So my question is, how much does the GD of this LR4 filter affect my choices? In reality I ended up getting to an ideal delay by examining the null with an inverted driver, but I'm asking in theory here. What's the net effect to my delay, and why? It seems based on empirical practice that I needed much less delay than expected, and i don't now why.
Thanks for theorizing with me and helping me overcome this big mental wall I"m hitting.
Here is the big picture for you:
1. It is more important for the relative phase angle of the drivers to be as close to zero (in this case for your even-order crossover filter) than to have the group delay equal to zero. This is because you primarily hear the frequency response, so you do not want holes/dips/peaks in it.
2. Much hang wringing has been done over "linear phase response" and it a driver of the use IMO of FIR filtering. Linear phase = flat group delay. "Ooooh look my system can reproduce a square wave at XXX Hz, it must be better than your system" they say. Sadly this ignores how human hearing works. It turns out that, up to some reasonable limits, one's hearing is not sensitive to group delay variations. The limit where GD starts to be audible is around 1.5 msec at 1kHz. Above 1kHz the limit stays more or less the same, but below 1kHz the limit increases as frequency decreases by a 1/f relationship. Here is a link to nice review paper on that topic:
https://acris.aalto.fi/ws/portalfiles/portal/66449704/Audibility_of_Group_Delay_Equalization.pdf
Since you cannot hear the group delay, those terrible looking square waves "sound" exactly like the pretty, perfectly square versions. If you don't believe me, watch this videao and it will blow your mind:
Anyway, the message here is: KNOW what the audible limit is for group delay and design your system to stay below it. Problem solved.
3. In general, the higher the order of the filter and the sharper the "knee" at the crossover frequency the higher the peak in the group delay will be. This is the basis for why very high order crossover filters have the reputation for sounding bad. The peaking in the GD response of the system causes a sort of "ringing" at the frequency. SL published some info on this on his website in this section: https://linkwitzlab.com/frontiers.htm#F
BTW, using a reverse phase null to "check" the crossover alignment is a very limited tool and tells you absolutely nothing at all about group delay. It is only checking that the relative phase, for an even order crossover, is near zero with the "normal" connection. Also, if you happen to be using an odd order crossover like a 3rd order Butterworth, then there is no null at all in reverse phase! So this technique has only limited usefulness.
Last edited:
Well - knowing the audible limits for group-delay is already quite a challenge ! 😉Anyway, the message here is: KNOW what the audible limit is for group delay and design your system to stay below it. Problem solved.
Regards
Charles
Several good answers already, I see.So my question is, how much does the GD of this LR4 filter affect my choices? In reality I ended up getting to an ideal delay by examining the null with an inverted driver, but I'm asking in theory here. What's the net effect to my delay, and why? It seems based on empirical practice that I needed much less delay than expected, and i don't now why.
Thanks for theorizing with me and helping me overcome this big mental wall I"m hitting.
My take on it:
As mentioned the group delay is 0.5 ms so sound travels about 17 cm in 0.5 ms.
It is 2 reasons why it does not matter.
The group delay is under the thresold of hearing. So even if it was a all pass filter and full frequency 1 way speaker, it could not be heard. (As long as the GD og the filter is not pushing the total GD of the system at any frequency over the limit)
A LR filter has the same phase difference between the LF and HF at all frequencies. Eg 360 degrees for 24dB/oct. So difference in GD is constant for both filters. Then there is no added GD for for the system.
So when does the GD matter?
When two speaker elements is out of phase one have to look at the GD and the thresold for hearing it.
So then we have to see off axis. Then we will get a path lengt difference between the two drivers and the ear and also in the reflected waves (wall ceiling, floor, roof). No way around it.
So as long as the filter order is low the summing of LF and HF will be gradual as the frequency sweeps through the octaves near the fc
Even with a quarter of a wavelength path difference the phase transition from LF phase to HF phase is slow and the derivative (GD) is low.
But when when the filter order is high there may be some nasty GD differencies at an individual driver near fc as mentioned by others, but also another GD problem arises off axis.
The frequency span where the transition between LF and HF occur is short. So the phase is shifted fast because of the path length difference and sharp filters.That gives a system off axis GD around Fc that may be well outside "limit"
The last point can be seen with 96 dB/oct instead of 24 db/oct in original post + a path lengt difference according to of lets say 45 degrees phase difference between the drivers. That is about - 4 to -5 cm for Z
For Z = 0 GD will sum up perfectly. Not so much as Z increases.
For Z = 0 GD will sum up perfectly. Not so much as Z increases.
So true.Well - knowing the audible limits for group-delay is already quite a challenge ! 😉
ERBs (https://en.wikipedia.org/wiki/Equivalent_rectangular_bandwidth) seem to be at the heart of understand best known to date psychoacoustic science re phase/group audacity.
The amount of phase rotation from one end of an ERB to the other end, seems to be the determinant. (recommend searching J.J Johnton's posts on ASR)
Since the ear's ERB's bandwidth widens with a decrease in frequency, it makes the likelihood of phase audibility aka group delay, greater with lower frequency.
The fact that a xover's group delay increase with a decrease in freq, double downs on the odds of the likeliness of low frequency audibility.
I've read a number of pro-audio techs who have experimented with reducing phase rotation as low in freq as possible, report positive audible improvements.
Certainly more low-end research is needed ,imho.
I think the high end, like at 1000Hz or above is fairly well researched (much easier to research than the the low end).
The ear's ERB's at higher frequency seem to be sufficiently narrow to preclude phase ability...like CharlieLaub was showing..
I agree with that.Here is the big picture for you:
1. It is more important for the relative phase angle of the drivers to be as close to zero (in this case for your even-order crossover filter) than to have the group delay equal to zero. This is because you primarily hear the frequency response, so you do not want holes/dips/peaks in it.
If that's what folks are thinkin/saying, I too think they are making a mistake.2. Much hang wringing has been done over "linear phase response" and it a driver of the use IMO of FIR filtering. Linear phase = flat group delay. "Ooooh look my system can reproduce a square wave at XXX Hz, it must be better than your system" they say.
For me, the reason to use FIR filtering to achieve Linear phase -flat group delay, is not to gloat over measurements, and assume such means a better system.
Main reason to use FIR that way, is that it is both the easiest and most accurate way to achieve frequency response without holes/dips/peaks in it,
that I've found.
I could repeat that 3x....
An ancillary benefit is that it allows steep xover orders that IIR precludes (as well described in your #3.)
Without the IIR knee problem, it let's drivers be optimized for only using the meat of their passbands (where their mag and phase are naturally flat)
Another possible benefit, is hey what if group delay actually is audible down low?
Folks sure seem to go on and on about subwoofer group delay.
If it matters, it's icing that automatically comes on an already excellent cake, seems to me.
- Home
- Loudspeakers
- Multi-Way
- Understanding acoustic offsets vs. group delay with LR4