[sdiy] Digital filtering (Oversampling and downsampling)
Ingo Debus
igg.debus at t-online.de
Mon Aug 3 21:23:27 CEST 2009
Am 03.08.2009 um 18:38 schrieb Ben Lincoln:
> On Mon, August 3, 2009 8:59 am, Tom Wiltshire wrote:
>
>> The final part of an oversampling system is to reduce the internal
>> sample rate for output. This is done by applying a digital filter to
>> remove any unwanted high frequency content (remember that a signal
>> with a sample rate of 384KHz could have frequencies up to 192KHz) and
>> then chucking away most of the samples (7 out of 8 to get from 384 to
>> 48KHz).
>
> Wouldn't you want to take the average (or median, which would be
> faster to
> compute) for best results?
No. Averaging can be viewed as a FIR lowpass filter, with all filter
coefficients being same. That's not a good lowpass filter. You can
achieve much better FIR lowpass filters with smarter chosen
coefficients.
What we really need here is just a good lowpass filter.
> As opposed to just taking every 8th sample
> as-is, I mean. Maybe that's what you meant and I misread it.
No, no, we're not not taking every 8th sample as-is, this would make
the whole oversampling thing pointless (why generate all the samples
if they are chucked away anyway?). We're taking every 8th sample of
the filter's output. The filter's input is still fed with all the
samples. In reality, we're only calculating every 8th filter output
sample, but all filter input samples are used.
Ingo
More information about the Synth-diy
mailing list