Virtual Analog Filter Design 101
Collection of zero-delay, TPT filter implementations
Version 1.2 and 1.3 update:
* minor optimisations
* added "303" style 4p diode ladder LP filter
Version 1.1 update:
* updated cell notes on value ranges I typically use for stable resonance control
I noticed there hasn't been a more recent take on Zavalishin's VA-Filter Design (Version 2) in here. I started teaching myself what I would call Zavalishin's "modern" approaches to VA-filter design a while back and struggled my way through following all the math. After quite some sweat, blood and tears I finally felt like I had grasped the ideas he describes in his book.
Long story short, I thought I'd share my takes on some VA-filters here in the library as this might be of interest to some of you out there. I based my designs not only on Zavalishin's work, but also on some of Will Pirkle's books and some of the great tutorials by salamanderanagram on ADSR reaktortutorials.
This ensemble is just a collection of core cells, if you want to do more than look at the design, please copy the core cells to another ensemble and hook them up there. I tried to document the macros, in- and outputs properly.
Here's a list of what is currently in the collection:
* 3 types of bilinear integrators (worst to best)
* 1-pole, analog multimode filter (linear)
* 2-pole, analog State-Variable multimode filter (linear)
* 4-pole, analog transistor-ladder low-pass filter (linear)
* 2-pole, Korg35 transistor-based low-pass filter (linear)
* new: 4-pole, analog diode-ladder low-pass filter (linear)
I will add more filters in the future as I go :).
Note: All filters should be stable for all parameters, but some filters can self-oscillate. Please watch out for high-gain output signals at large values of resonance, especially when modulating the resonance amount. The resonance parameter input is not always labelled Q, but might be called k or K for example. The information on the cell should clarify.
Hope you enjoy!