# Group Delay 101

OP

#### DonH56

##### Master Contributor
Technical Expert
Forum Donor
Thanks Don. I will add to this thread, perhaps in the weekend, to show phase delay vs group delay for a similar case, just to clear up any confusion.
That'd be great, thanks Rene. I should have kept the group delay response for the stepped case but lost (overwrote) the plot someplace in all my fiddling around. It simply stepped from 0 to a constant in my simple example. I did not plot phase delay because I was afraid it would further complicate an already complicated thread to most folk.

For those who want the math to follow along, where Phi(f) is phase as a function of frequency and f is frequency:
• group delay = -dPhi(f) / df = (minus) change in phase divided by change in frequency, the slope of the phase change with frequency
• phase delay = -Phi(f) / f = (minus) phase divided by frequency
The only reason I used frequencies comprising a square wave is that it makes it a little easier for me to see how the edges change when group delay is not constant. Probably because when I originally dealt with all this, decades ago, it was a pulse radar application and so I am used to seeing the problem with pulses.

This is going much deeper than I'd originally intended but hopefully feeds the yearn to learn...

#### Alexium

##### Active Member
In general phase is a function of frequency p(f); that is, phase changes with frequency. That's the math behind it
Why, in what context? Phase of what relative to what? In which system? I find following the rest difficult without understanding what we're talking about.
Any ideal transducer should have no phase shift at any frequency, right (p(f) = 0) ?

If a system introduces a fixed, constant time delay of the output signal relative to input signal, then indeed phase shift in degrees (or radians) would be a variable function p(f), but I assume this is not the meaning here.

Last edited:

#### René - Acculution.com

##### Active Member
Technical Expert
Why, in what context? Phase of what relative to what? In which system? I find following the rest difficult without understanding what we're talking about.
Any ideal transducer should have no phase shift at any frequency, right (p(f) = 0) ?

If a system introduces a fixed, constant time delay of the output signal relative to input signal, then indeed phase shift in degrees (or radians) would be a variable function p(f), but I assume this is not the meaning here.
I go through all of this in my video. To have a proper discussion about these topics one must understand complex numbers, the difference between signals and systems, the difference between steady state and transient behaviour, phase delay vs group delay and why they are generally not the same and how that relates to the overall latency, and on and on. I know four hours is a long to invest in watching a video but it may be a good investment for those who really want to understand the relevant signal processing instead of going back and forth in writing here.

OP

#### DonH56

##### Master Contributor
Technical Expert
Forum Donor
Why, in what context? Phase of what relative to what? In which system? I find following the rest difficult without understanding what we're talking about.
Any ideal transducer should have no phase shift at any frequency, right (p(f) = 0) ?

If a system introduces a fixed, constant time delay of the output signal relative to input signal, then indeed phase shift in degrees (or radians) would be a variable function p(f), but I assume this is not the meaning here.
Phase shift relative to the original signal. There is frequency-dependent phase shift through any circuit with non-infinite bandwidth and non-zero delay, be it a preamp, amplifier, crossover, any other EQ/filter, etc. The purpose of this thread was to define group delay in a general sense without relation to any specific circuit, similar to other "fundamental" articles I have composed. Rene's video (posted earlier in this thread) goes into detail far beyond what is reasonable in a thread like this.

#### Alexium

##### Active Member
Phase shift relative to the original signal. There is frequency-dependent phase shift through any circuit with non-infinite bandwidth and non-zero delay, be it a preamp, amplifier, crossover, any other EQ/filter, etc. The purpose of this thread was to define group delay in a general sense without relation to any specific circuit, similar to other "fundamental" articles I have composed. Rene's video (posted earlier in this thread) goes into detail far beyond what is reasonable in a thread like this.

Thank you.
Let's say we have a phase shift of 90 degrees at 1000 Hz. 90 degrees is 1/4th of a cycle. Is it correct to say that group delay at 1 kHz is then 1/4 * 1/1000 s = 0.25 ms? Or is that a different metric, not GD?

#### René - Acculution.com

##### Active Member
Technical Expert
Thank you.
Let's say we have a phase shift of 90 degrees at 1000 Hz. 90 degrees is 1/4th of a cycle. Is it correct to say that group delay at 1 kHz is then 1/4 * 1/1000 s = 0.25 ms? Or is that a different metric, not GD?
That approach gives you phase delay, which is generally only equal to group delay at all frequencies, when you have a pure delay (transport delay/dead time). Both phase delay and group delay should be (and was in older literature) be called 'apparent phase delay' and 'apparent group delay', as the phase from which they are calculated comes from a steady-state frequency response, and so something like a polarity flip, which corresponds to phase of 180 degrees at all frequencies, gives a phase delay that varies with frequency, but has zero group delay, and zero dead time, since as soon as you put a signal on the input, you will have the inverted signal on the output.

Phase only makes sense for steady state signals. Be careful with just moving non-casual signals along the time-axis, as two different situations can look completely similar and trick you (see my post on Polarity and Phase where there is a pdf showing this).

If anyone is interested in some kind of Youtube live or similar to ask question, we can set it up.

Last edited:

#### Alexium

##### Active Member
Thanks for the explanation. This is complicated stuff indeed, guess I'll have to watch that 4 hour video after all

#### René - Acculution.com

##### Active Member
Technical Expert
Thanks for the explanation. This is complicated stuff indeed, guess I'll have to watch that 4 hour video after all
I hope you do

OP

#### DonH56

##### Master Contributor
Technical Expert
Forum Donor
Thank you.
Let's say we have a phase shift of 90 degrees at 1000 Hz. 90 degrees is 1/4th of a cycle. Is it correct to say that group delay at 1 kHz is then 1/4 * 1/1000 s = 0.25 ms? Or is that a different metric, not GD?
• phase delay = -phi(f) / f = -phase / frequency -- this is what you proposed, changing the phase at a single frequency, which corresponds to the time you calculated
• group delay = -dphi(f) / df = change in phase / change in frequency -- this is different, yes, and is basically the slope of the phase as frequency changes
@René - Acculution.com also makes a good point that he mentioned earlier and I glossed over: group (and phase) delay are defined for steady-state signals (which need not be pure sine waves but can be pulse streams and such). It is normally applied to linear time-invariant (LTI) systems. There are also some related terms, like group velocity (the inverse of group delay), useful in some applications.

Last edited:
OP

#### DonH56

##### Master Contributor
Technical Expert
Forum Donor
Example with listening files. This time with a 500 Hz fundamental plus nine terms (3,5,7,9,11,13,15,17,19 harmonic) of a square wave.

Group delay = 0 (constant):

Varying group delay:

The waveforms look very different; listen and see if they sound any different to you. I could not upload .wav files directly so download the zip file and extract the two 3-second samples to play them.

Enjoy - Don

#### Attachments

• Group Delay.zip
894.9 KB · Views: 6

#### René - Acculution.com

##### Active Member
Technical Expert
Sorry for being so pendatic. But what has distorted these non-causal discrete signals are their associated phase delays, not their group delays. The group delay only makes sense when the phase in the vicinity of each of those frequencies is known, and so the phase for the entire frequency range must be known to be able to even define the group delay at at different frequencies. So it is much better to start with a system with a phase, and see how it affects an input signal including transient behavior, instead of showing signals being manipulated at discrete frequencies only, as that does not gives us the full picture. Again, watch my video ;-)

pma

#### dualazmak

##### Major Contributor
Forum Donor
I am just intensively considering/speculating how I can (or I cannot?) correlate my rather primitive "time alignment" measurements and tuning in my project using rectangular tone burst signals (as well as single wave signals) consist of various frequencies to OP's educational discussion here.
- Precision measurement and adjustment of time alignment for speaker (SP) units: Part-1_ Precision pulse wave matching method: #493
- Precision measurement and adjustment of time alignment for speaker (SP) units: Part-2_ Energy peak matching method: #494
- Precision measurement and adjustment of time alignment for speaker (SP) units: Part-3_ Precision single sine wave matching method in 0.1 msec accuracy: #504, #507
and
- Perfect (0.1 msec precision) time alignment of all the SP drivers greatly contributes to amazing disappearance of SPs, tightness and cleanliness of the sound, and superior 3D sound stage: #520
- Not only the precision (0.1 msec level) time alignment over all the SP drivers but also SP facing directions and sound-deadening space behind the SPs plus behind our listening position would be critically important for effective (perfect?) disappearance of speakers: #687

OP

#### DonH56

##### Master Contributor
Technical Expert
Forum Donor
Sorry for being so pendatic. But what has distorted these non-causal discrete signals are their associated phase delays, not their group delays. The group delay only makes sense when the phase in the vicinity of each of those frequencies is known, and so the phase for the entire frequency range must be known to be able to even define the group delay at at different frequencies. So it is much better to start with a system with a phase, and see how it affects an input signal including transient behavior, instead of showing signals being manipulated at discrete frequencies only, as that does not gives us the full picture. Again, watch my video ;-)
I define the signals, including their phase and group delay, to create the examples so the phase over frequency is a given (defined by the signals created).. In fact, for the last couple I defined a group delay function and defined the phase from that; for the first examples, I started with phase. These are simplified examples, just a taste of a very big subject, covered much better in your video.

Here is the group delay plot for the example above:

Last edited:

#### René - Acculution.com

##### Active Member
Technical Expert
I define the signals, including their phase and group delay, to create the examples so the phase over frequency is a given (defined by the signals created).. In fact, for the last couple I defined a group delay function and defined the phase from that; for the first examples, I started with phase. These are simplified examples, just a taste of a very big subject, covered much better in your video.
Hi Don,

What I mean is that if the phase is only defined for those singular frequencies, then you cannot have a well-defined group delay for any of them. You don't know the slope of the phase, unless there is phase for all frequencies. So I don't understand how you create the signals, is probably the way to say it

Edit: If you start with the group delay, then there will be ambiguity in the phase as infinitely many phases can give you that group delay, but if you have one phase delay to set phase at one frequency, then I guess you can do it that way.

Last edited:

#### MarcosCh

##### Major Contributor
Right now at 1h 55m of your video and starting to grasp it
(but I feel I will need a second viewing)

#### killdozzer

##### Major Contributor
Forum Donor
Would it be possible to program a feature in a DSP that would correct group delay?

#### René - Acculution.com

##### Active Member
Technical Expert
Right now at 1h 55m of your video and starting to grasp it
(but I feel I will need a second viewing)
You have probably made it further than most

#### René - Acculution.com

##### Active Member
Technical Expert
Would it be possible to program a feature in a DSP that would correct group delay?
You would probably aim at correction phase. The delays would fall out of that.

#### killdozzer

##### Major Contributor
Forum Donor
You would probably aim at correction phase. The delays would fall out of that.
Meaning that correcting phase would deal with the resulting group delay?

#### René - Acculution.com

##### Active Member
Technical Expert
Meaning that correcting phase would deal with the resulting group delay?
Well in broad terms yes but perhaps you are looking at multiple sources and such. From a signal processing point of view you would perhaps aim at a linear phase to have the same delay at all frequencies. But it would depend on what you are looking to do.

Last edited:

Replies
4
Views
212
Replies
18
Views
2K
Replies
75
Views
3K
Replies
0
Views
150
Replies
1
Views
746