1
$\begingroup$

While implementing/studying brickwall low pass filters for digital audio, I decided to run a unit impulse through FabFilter's Pro-Q 3 brickwall low pass filter to see what the resulting impulse response would look like.

When in "Linear Phase" mode (bottom half of image), the resulting IR sure enough looks exactly like what I expected—a sinc function. However, when in "Zero Latency" mode (upper half of image) the resulting IR looks kind of similar to the right half of a sinc function, except the decay is much smoother, the frequency is lower and it starts from a zero crossing instead of a peak (and the initial rise also looks more s-curve shaped).

"Zero latency" IR and "Linear phase" IR comparison. "Linear phase" looks like a sinc function, while "Zero Latency" looks similar but not quite

Convolving a signal with both these IRs gives basically exactly the same result (or frequency response, at least). Which piqued my interest, because the mysterious "Zero Latency" IR seems to give the same results with (presumably) half the number of points. I'd very much like to know exactly what it is, and how one can calculate (generate) it.

I have very little experience with digital signal processing, so any insights would be much appreciated! (also sorry if everything I just said makes no sense)

$\endgroup$
1
  • 1
    $\begingroup$ one looks like linear phase, the other looks like minimum phase. $\endgroup$ Oct 3, 2022 at 15:40

1 Answer 1

2
$\begingroup$

The first impulse response looks very much like a minimum-phase response. I don't think that you'll get away with half the number of filter taps for the minimum-phase filter. You might have a slightly shorter filter compared to the linear-phase filter, but the difference is usually small.

Note that there are infinitely many filters with exactly the same magnitude response. Linear-phase and minimum-phase filters are just two specific examples. Obviously, the difference between all these filters is the phase response. All filters except the linear phase filter introduce phase distortions. The minimum-phase filter introduces the smallest overall delay.

Practical linear-phase filters are always finite impulse response (FIR) filters. Minimum-phase filters can be either FIR or IIR (infinite impulse response).

$\endgroup$
4
  • $\begingroup$ "Infinitely many" is only true if you allow any order of all-pass filter to be added to the mix. If the filters are all to be the same order, then there are a finite number. Or are there other "inifinities" ? $\endgroup$
    – Peter K.
    Oct 3, 2022 at 20:37
  • 1
    $\begingroup$ @PeterK.: Not "any" order, a first-order allpass filter would be sufficient, simply because there are infinitely many different first-order allpass filters. But you're right that the order must be increased, but an increase of 1 is enough. $\endgroup$
    – Matt L.
    Oct 4, 2022 at 7:16
  • $\begingroup$ Thank you, everyone, for your replies! I had never heard the term "minimum phase", so it has been super insightful. I searched around for a while and there seems to not be a one-size-fits-all solution to take a linear phase impulse response and "convert" it to minimum phase. Is that right? Any advice regarding what I could do/try to learn in order to design my own minimum phase FIR filter? $\endgroup$
    – arghhh
    Oct 4, 2022 at 12:01
  • 1
    $\begingroup$ @arghhh: Take a look at this answer. That's the most general way to transform a linear phase filter into a minimum phase filter (of the same order). $\endgroup$
    – Matt L.
    Oct 4, 2022 at 12:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.