[comp.dsp] trivial low pass filter question

bradr@quorum.com (Brad Rubenstein) (05/06/91)

I'm sure someone out there can answer this off the top of his/her
head.  I'm trying to avoid going out and buying a reference book
for a one-time problem.

I have a signal sampled at rate f1, and I want to resample it at f2
(<f1) as efficiently as possible.  It appears, to prevent objectionable
aliasing, I have to band-limit the original signal to frequencies below
f2/2.

I was considering the quickest way to do the low pass filtering is to
let out[t] = (1-q)*in[t] + q*out[t-1].

What is the equation that relates the frequency response of this
function to the parameter q?  If I want to trade a few more multiplies
for a sharper cut off, what transfer function can I use?

Please respond via email to bradr@quorum.com.  Thanks mucho.

Brad Rubenstein

-- 
Brad Rubenstein	-- Quorum Software Systems, Inc. -- bradr@quorum.com

myhui@bnr.ca (Michael Hui) (05/06/91)

In article <1991May5.211712.16328@quorum.com> bradr@quorum.com (Brad Rubenstein) writes:
>I have a signal sampled at rate f1, and I want to resample it at f2
>(<f1) as efficiently as possible.  It appears, to prevent objectionable
>aliasing, I have to band-limit the original signal to frequencies below

Discrete-Time Signal Processing
by
Alan V. Oppenheim, Ronald W. Schafer    TK5102.5.02452 1989  ISBN 0-13-216292-X

page 101 to 112 is a clear discription of sampling rate conversion.

After reading this section, you'll see that the "correct" way to do it, when
compared to your suggestion of averaging neighbouring samples, only amount to
multiplying those samples by a factor before adding them up and dividing.
Of course, there is a bit more involved than that, but those additional details
involve shuffling data around, rather than doing arithmatic.

      Michael MY Hui      Ottawa Canada      myhui@bnr.ca