[sdiy] Analysis filter bank help
Richie Burnett
rburnett at richieburnett.co.uk
Fri May 10 18:44:30 CEST 2013
Hi, and thanks for the neat suggestion. I hadn't thought of trying that.
However, unfortunately I don't think this trick is going to work for me. In
the digital implementation the bandpass filters all run at different sample
rates to achieve gains in computational efficiency, therefore it would be
hard for me to sum all the bandpass filter outputs back together, and then
subtract this from the original input to get a residual.
The output from all the bandpass responses combined would also only be flat
in amplitude, but the phase changes very abruptly at the cutoff frequency of
each bandpass filter. (You can think of all the band-pass filters adding up
to one big "allpass filter" over the total frequency span, where the
resulting amplitude is more-or-less flat, but the phase wiggles all over the
place!) This would result in a comb-filter type response when combined with
the original input signal due to the varying phase shift.
-Richie,
----- Original Message -----
From: "cheater00 ." <cheater00 at gmail.com>
To: "Richie Burnett" <rburnett at richieburnett.co.uk>
Cc: "synth-diy" <synth-diy at dropmix.xs4all.nl>
Sent: Friday, May 10, 2013 6:38 AM
Subject: Re: [sdiy] Analysis filter bank help
> Hi Richie,
> if this is digital, just sum up your band pass outputs, deduct them
> from the input, and what's left is the upper and lower bands mixed
> together. Then use a simple cross-over which centers somewhere in the
> middle of the dead zone, one such that the pass-band has no phase
> shift.
>
> Cheers,
> D.
>
> On Fri, May 10, 2013 at 12:41 AM, Richie Burnett
> <rburnett at richieburnett.co.uk> wrote:
>> Hi all,
>>
>> I'd like to pick the collective brains of this list's members, if I may.
>> It's a question about analogue filter design...
>>
>> I currently have an analysis filter bank designed for a Vocoder (will be
>> a
>> DSP implementation eventually.) Currently this consists of 20 bands.
>> Each
>> of these is an 8th-order bandpass filter with 1/3rd octave bandwidth.
>> These
>> filters are Linkwitz-Riley filters (sometimes called "Butterworth
>> squared".)
>> This ensures that adjacent filter band responses are both 6dB down and
>> in-phase where bands meet, with the intention of getting the outputs of
>> the
>> entire filter bank to add up to a flat frequency response. So far this
>> works very nicely. The resulting 20 analogue band-pass responses sum to
>> a
>> flat line with about +/-0.5dB ripple.
>>
>> Now here's the catch. I want to change the bottom filter band to be a
>> low-pass response, and the top filter band to be a high-pass response.
>> Then
>> these two filters will catch everything below, and everything above the
>> main
>> bank of 18 remaining bandpass filters. My intuition was to design these
>> to
>> be Linkwitz-Riley low-pass and high-pass responses respectively, but when
>> their outputs are summed with the other 18 bandpass filters the result
>> doesn't add up anywhere near to a nice flat response! In fact the very
>> gradual roll-off of these L-R filters wrecks the summed response anywhere
>> near each end of the filter bank.
>>
>> I took a look at the excellent web page of Jurgen Haible about his
>> Vocoder,
>> and notice that his lowest and highest band's filters are lowpass and
>> highpass like I want to implement. However, their frequency responses
>> seem
>> to be Chebyshev type-1 responses. I'm not sure how he arrived at this
>> revalation to use Chebyshev filters for the lowest and highest bands, and
>> unfortunately can't ask him. So, can anyone explain to me the maths
>> behind
>> how this works?
>>
>> Also, whilst Jurgen's Cheby low-pass and high-pass filters incorporate
>> into
>> the bank to give a relatively flat response compared to my attempts, I'm
>> still a little concerned about the quite leasurely rate of roll-off in
>> the
>> stopbands for these filters at each end of the bank:
>>
>> http://www.jhaible.com/vocoder/living_vocoder.html
>>
>> I'd really like to understand what's going on here if someone can
>> explain,
>> or can point me towards some useful references. Everything is
>> simulations
>> of Laplace functions for me at the moment, so I'm happy to talk maths
>> instead of circuits if that's what's required!
>>
>> Many thanks for reading,
>>
>> -Richie Burnett,
>> _______________________________________________
>> Synth-diy mailing list
>> Synth-diy at dropmix.xs4all.nl
>> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
More information about the Synth-diy
mailing list