Bruno Putzeys wrote on Sun, 15 June 2008 07:34 |
It's best not to use "FIR" as shorthand for "linear phase". FIR's are not necessarily linear phase unless their response happens to be symmetrical.
|
Here's an old USENET discussion with Bob Orban and the late Steven St. Croix wrt symmetric FIR, IIR which may be of interest:
--
Robert Orban
View profile
More options Jul 16 2000, 12:00 am
Newsgroups: rec.audio.pro
From:
ror...@earthlinkxyxy.net (Robert Orban)
Date: 2000/07/16
Subject: Re: Who writes FIR EQ software?
>When I got this month's issue of Mix magazine,I eagerly read >Stephen St.Criox's followup article "EQU2". I have always been >avidly opposed to using EQ on anthing I do because it always >ends up ruining the take.
>Because I am not particularly well-to-do and can't afford a real >EQ, if something doesn't sound right, I try other methods like >changing source, the mic position or the mic itself. Needless to >say, that can be very time consuming. When I read the article my >hopes were suddenly lifted. Is it really possible to EQ without >the "EQ effect"? If an article in Mix says so, it must be so. >(No disrespect intended.)Stephen discusses IIR (traditional) >EQing and the new FIR (Frequecy-domain) EQing without mentioning >any manufacturers of the new FIR EQ's.
>Does anyone out there know who writes PC FIR EQ software?
Stephen may like the sound of FIR eq, but he is grossly misinformed about the science.
He stated in the article that you cannot undo IIR EQ; that "EQ applied and written twice leaves twice the nasty phase shift artifacts behind."
Wrongo, Stephen! Provided that the original IIR EQ is "minimum phase" (it means that all of the z-plane zeros are within the unit circle, and is nearly always true with conventional IIR eq), then a second pass where the z-plane poles and zeros are swapped will completely undo both the amplitude and phase changes caused by the first pass. This will occur with arbitrary accuracy, limited only by the bit depth of the arithmetic used to implement the filters.
The math is very simple:
A*(N/D)*(D/N) = A, where
A is the original signal
(N/D) is the z transform of the first-pass IIR filter, and
(D/N) is the z transform of the second-pass IIR filter, which is the inverse of the first-pass filter.
In fact, it is substantially harder to undo FIR equalization of the linear phase persuasion, because this is non-minimum-phase(there are zeros outside the unit circle in the z-plane), so a stable inverse filter does _not_ exist.
Further, FIR filters "mess up the transient response" too. They just do so in a different way. The tap weights of the FIR _define_ the impulse response of the filter. If you design the filter to be linear phase (as required by SSC), then the impulse response is symmetrical around its center, and the part of the impulse response containing significant energy is generally _longer_ than the impulse response of a minimum-phase
IIR filter with the same amplitude response as the FIR.
Further, the FIR impulse response will have pre-echo because of its symmetry. The ear has much less ability to do temporal masking of signals occurring _before_ the main energy lobe of a transient than after. So the FIR's pre-echo is much more likely to be audible on transient material than the impulse response of a minimum-phase IIR filter, where the impulse response occurs _after_ the main energy lobe, and is shorter (not counting the effects of the truncation of the FIR impulse reponse at its
ends).
In fact, the pre-echo of linear-phase FIR filter banks causes notorious problems in the design of perceptual encoders. Advanced coders have to adaptively switch filters depending on the transient content of the program material in order to suppress the audible effects of the pre-echos. Castinets are a standard means for testing the audibility of this problem.
So SSC may prefer the sound of FIR eq for whatever reason. But the reasons cannot be the reasons stated in his article, which represent completely bogus science. While I expect this sort of thing in USENET posts, I would have thought that MIX's technical editor, Sarah Jones Chris Michie, would have caught these errors and never let them see the light of day.
Damn, I really miss Hugh Ford...
********** Response from SSC-
Bob! Bad day?
I extract from your post: "He stated in the article that you cannot undo IIR EQ; that "EQ applied and written twice leaves twice the nasty phase shift artifacts behind." Wrongo, Stephen!"
Wow! It is certainly true that one can design an IIR filter that does not exhibit typical analog style group delay errors. One way to do this for real time applications is to follow the IIR with a "reverse" IIR all-pass specifically intended to re-do all the phase shift damage in reverse. But as this doubles the processing load for each EQ that it is applied to- and this is the whole point here- who actually does this?
I wrote this column to turn readers on to a very different, very exciting type of EQ that does not have IIR type super- audible phase error. I compare this type of FIR EQ to real-world IIRs as used in certain currently available DAWs, the main place that most people come across digital EQ.
And so my statement stands. "EQ applied and written twice leaves twice the nasty phase shift artifacts behind." Using most currently available DAWs, multiple EQ changes written in series DO in fact accumulate more and more group delay error, or phase shift.
And as for the paragraphs of tech that follow ? Come on, Bob. I am talking about phase shift, group delay errors, that are at the same level as the audio- right up there where everybody can hear them. This is not an introduced artifact at a reduced level. In fact it is these errors that most people "hear" as EQ- they are that profound. And you follow with stuff that certainly CAN exist in SOME types of implementation, down in the lower bits. And yes, if very, very poor design decisions are made, an FIR can be forced to time slur badly between bins, but why would anybody do that?
Damn, I really miss the old Bob Orban... "
--
dc