kirk@sdd.hp.com (Kirk Norton) (02/14/91)
A few weeks ago I posted a question regarding discrete-time audio filter design. Since then, I have received several responses and some requests to post the results. So....here goes... All of the responses I received agreed that the bilinear transform with frequency prewarping was the best method to use, since it is the most efficient and accurately reproduces the original frequency response for frequencies "sufficiently lower" than the folding frequency (for 44.1 KHz sampling rate, as I wanted to use, this means that my frequency response would only be accurate for frequencies << 22.05 KHz -- not really good enough). To deal with higher frequencies (between 10 KHz and 20 KHz), there are basically two options: 1. Sample faster (I know, pretty obvious, but we must be thorough, musn't we?). By oversampling at 2X, 4X, 8X, or even 16X the nyquist rate, acceptable response may be achieved at the frequencies of interest (up to 20 KHz). 2. If sampling at 44.1 KHz is ABSOLUTELY NECESSARY, acceptable response up to 20 KHz may be achieved, but it's not easy: a. It requires an anti-aliasing filter with a pass band at 20 KHz and a stop band at 22.05 KHz -- not trivial... b. and a reconstruction filter with similar frequency response and sinx/x equalization for the non-impulse D/A output -- yuck, ack, ptooey! For those "phase linearity conscious" designers out there, the above method may not be good enough, since it produces an IIR (infinite impulse response) filter. An FIR (finite impulse response) filter produces a linear phase response, which, they tell me, may be advantageous in processing particular audio signals. The only method of producing this type of filter that was suggested is the 'Park-McCellan' iteration, and it has the advantage of being one of the more efficient FIR design techniques. I decided to go with the higher sampling rate (I know, whatta wimp) and to use the ol' BLTWFPW myself (oh yea, and 16-bit resolution, too). Many thanks to all those who responded. If I typed any of this stuff incorrectly, please let me (or the net) know. -Kirk -- As far as I know, Bill and Dave don't share these opinions. -- -- (That's why they make the big bucks.) -- Kirk Norton Hewlett-Packard, San Diego Division 16399 West Bernardo Drive San Diego, CA 92127-1899
max@prls.UUCP (Max_Hauser) (02/20/91)
This application comes up a lot for the programmable DSP chips, like TI's and Motorola's (mentioned as examples only; not an exhaustive list). Interested parties might take a look at their applications literature. Also, comp.dsp is full of this kind of stuff and some very knowledgeable people post there. As for my own opinion: When in doubt, oversample! :-) M. Hauser ...mips!prls!max no graphics / no fancy signature / no awfully clever quotation no painfully complicated conditional-permission-to-reproduce