If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
Crossover for multiband processing
7 posts
• Page 1 of 1
Crossover for multiband processing
Dear all,
I would like to get experienced with multiband processing for audio VST.
Let's assume the processing is a simple M/S controller which I would like to break into 4 bands, for higher resolution.
What cross-over should I start expereinceing with, to your mind? 4th order IIR? 2nd order IIR?
Is there a 'classic' well accepted multi-band cross-over design shape which I can start playing with?
Any written material and example code would be great for me to start with, as well.
Thanks in advance,
Rocko
I would like to get experienced with multiband processing for audio VST.
Let's assume the processing is a simple M/S controller which I would like to break into 4 bands, for higher resolution.
What cross-over should I start expereinceing with, to your mind? 4th order IIR? 2nd order IIR?
Is there a 'classic' well accepted multi-band cross-over design shape which I can start playing with?
Any written material and example code would be great for me to start with, as well.
Thanks in advance,
Rocko
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
Re: Crossover for multiband processing
I was looking at this one yesterday.
I didn't try it, so i don't know if it works in Flowstone
I didn't try it, so i don't know if it works in Flowstone
- Flemming
- Posts: 31
- Joined: Thu Aug 07, 2014 9:48 am
Re: Crossover for multiband processing
Ah, Rocko, welcome to the frustrating world of making multiband audio processors.
Most commonly used is the Linkwitz–Riley filter. There may be some examples here on forum (or the SM forum). Advantage of this filter is the flat amplitude response (the two bands add to perfectly the same gain) however the mess up with the phase response, which may complicate things if you use them for parallel processing (like wet/dry knob on output of your plugin). Another way, it to use lowpass filter for lower band and original-lowpass for the high band - they add perfectly to orignal signal, but the individual (soloed) bands may have strange amplitude response.
Then there is the linear phase filter. These filters are most predictable both in amplitude and phase response, but introduce latency (there is no way to overcome that) and also may bring in unnatural artifacts (pre-ringing for example) simply because these filters are unnatural. They are mostly based on FIR filters, but there are also IIR versions (for example the BiDirectional IIR filter I've made some time ago and someone even made it into a crossover filter - just search for "Bidir IIR" on the forum through google).
The last approach is to not use crossover at all. If you plan to only change the gain on individual bands (even in MS mode) you may use a chain of shelving filters and add/subtract their gain values, so you can control them as if they were bands.
The filter order is completely a matter of preference (even on the user side).
Rocko wrote:What cross-over should I start expereinceing with, to your mind? 4th order IIR? 2nd order IIR?Is there a 'classic' well accepted multi-band cross-over design shape which I can start playing with?
Most commonly used is the Linkwitz–Riley filter. There may be some examples here on forum (or the SM forum). Advantage of this filter is the flat amplitude response (the two bands add to perfectly the same gain) however the mess up with the phase response, which may complicate things if you use them for parallel processing (like wet/dry knob on output of your plugin). Another way, it to use lowpass filter for lower band and original-lowpass for the high band - they add perfectly to orignal signal, but the individual (soloed) bands may have strange amplitude response.
Then there is the linear phase filter. These filters are most predictable both in amplitude and phase response, but introduce latency (there is no way to overcome that) and also may bring in unnatural artifacts (pre-ringing for example) simply because these filters are unnatural. They are mostly based on FIR filters, but there are also IIR versions (for example the BiDirectional IIR filter I've made some time ago and someone even made it into a crossover filter - just search for "Bidir IIR" on the forum through google).
The last approach is to not use crossover at all. If you plan to only change the gain on individual bands (even in MS mode) you may use a chain of shelving filters and add/subtract their gain values, so you can control them as if they were bands.
The filter order is completely a matter of preference (even on the user side).
- KG_is_back
- Posts: 1196
- Joined: Tue Oct 22, 2013 5:43 pm
- Location: Slovakia
Re: Crossover for multiband processing
Dear all,
Thanks for the answers, appreciated.
I'm actually looking into this for playing around and learning, so the 3 band example in SynthMakers WIKI, is not what I'm after, since it is coded in ASM.
I'm looking into building my own code which can change fast and experience the difference.
This is more of my interest.
I had used a 'original-lowpass' design in the past and always wondered about it. It seems a good approach, so I'll dig into this a bit deeper.
For Bi-directional, this is on my To-Do list, I find this exciting... I will get to that in future.
FIR is out of the question, as I want to change the cross-over points easily (via GUI) and this is tough in FSM/SM, right?
Thanks,
Rocko
Thanks for the answers, appreciated.
I was looking at this one yesterday.
I didn't try it, so i don't know if it works in Flowstone
I'm actually looking into this for playing around and learning, so the 3 band example in SynthMakers WIKI, is not what I'm after, since it is coded in ASM.
I'm looking into building my own code which can change fast and experience the difference.
Most commonly used is the Linkwitz–Riley filter. There may be some examples here on forum (or the SM forum). Advantage of this filter is the flat amplitude response (the two bands add to perfectly the same gain) however the mess up with the phase response, which may complicate things if you use them for parallel processing (like wet/dry knob on output of your plugin). Another way, it to use lowpass filter for lower band and original-lowpass for the high band - they add perfectly to orignal signal, but the individual (soloed) bands may have strange amplitude response.
This is more of my interest.
I had used a 'original-lowpass' design in the past and always wondered about it. It seems a good approach, so I'll dig into this a bit deeper.
For Bi-directional, this is on my To-Do list, I find this exciting... I will get to that in future.
FIR is out of the question, as I want to change the cross-over points easily (via GUI) and this is tough in FSM/SM, right?
Thanks,
Rocko
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
Re: Crossover for multiband processing
Hi,
Could you explain more about the strange amplitude response?
Thanks,
Rocko
they add perfectly to orignal signal, but the individual (soloed) bands may have strange amplitude response.
Could you explain more about the strange amplitude response?
Thanks,
Rocko
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
Re: Crossover for multiband processing
Rocko wrote:Could you explain more about the strange amplitude response?
when you have for example a 2order lowpass, then the high band is highpass+bandpass (since original signal is highpass+bandpass+lowpass). This means that if you have Q higher than 0.702 you get the resonance peak around the cutoff frequency. Now you'd expect the highband (made by original-lowpass) to have a 'hole' in the same place, but opposite is true - the highband also has the resonance peak and to make things even more strange at slightly different frequency.
Observe the attacked schematic....
It happens because filter also changes the phase response and that means subtraction and addition does not work the same intuitive way anymore.
- Attachments
-
- strange amplitude response.fsm
- (122.22 KiB) Downloaded 1369 times
- KG_is_back
- Posts: 1196
- Joined: Tue Oct 22, 2013 5:43 pm
- Location: Slovakia
Re: Crossover for multiband processing
KG_is_back wrote:It happens because filter also changes the phase response and that means subtraction and addition does not work the same intuitive way anymore.
Hey KG. First of all, thanks for this explanation. It's really helpful.
If I'm not mistaken, one could use a Linkwitz-Riley filter as the lowpass for an inversion filter, then process a "dry" signal with a similar L-R filter as an all-pass. That way you could mix dry & wet without phase cancellation, while also getting a flat amplitude response. You'd still get phase shifts around the crossover(s) in the output, but that's generally inaudible (might change peaking levels a bit) and as long as you're handling the dry/wet mix internally you should be fine.
Does this sound like a valid/good idea to you? I think that might be what I do with my current project.
EDIT:
I realized that the Linkwitz-Riley won't bottom-out as a lowpass filter, so while it may work fine for splitters for other reasons it won't work for me for this project.
So one more question... Is there a recommended type of lowpass filter for an inversion-style splitter?
There's a great pack of filter modules here by the way: http://synthmaker.co.uk/forum/viewtopic ... &sk=t&sd=a
- Perfect Human Interface
- Posts: 643
- Joined: Sun Mar 10, 2013 7:32 pm
7 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 28 guests