sounds nice when using alone and without modulation... i tried to include your ladder filter design into my duofilter in replacing it with the filter node... and it worked and sounded cool but as soon as i started to modulate it with an lfo it created a NaN in your filter modul which doesnt happen with the filter node :D
looks like certain Hz - Q combinations create this NaN.. i will recreate it and show you a screenshot that you can see where it happen in your modul... i forgot to do that
I see it's on Mac or PC. What is the sampling frequency? Is there any lfo rate/depth that is problematic or it crashes as soon as you modulate? At first glance, I can't reproduce the problem on iOS (44.1 k Hz).
its on win7 ... it crashes at certain hz knobs - Q postions but if i dont modulate it throu an lfo it works just fine... maybe it is not your modul... as i happen to create NaNs alot hahaha
i attached my duofilterx modul which includes your ladder filter.. when modulated (with LFO) cv a and cv b or only 1 of them and you play around with the freq knobs of the filters while Q (Res) knob is in mid to max position it happens... with the included audulus filter node wont happen..
@Phal_anx The sum of the modulated values going into the knob of the filter module was exceeding 1 and creating the NaN. If you clamp the signal the same way as the Q knob input is clamped your filter sounds hella wet!
@sansnom I love the sound of the filter! Please explain what the different parts do, like why are there four low pass filters inside?
@RobertSyrett - just checked.... i had a clamp function in it in the original duofilter... but deleted it by accident when including the ladder... :D its really too funny that i always end up making such silly mistakes :D
@RobertSyrett - It's a ladder filter, 4 cascaded 1-pole filters that produce a 4-pole filter (24 dB/oct). This one is the one featured in the minimoog I think.
The zero delay feedback term means that no additionnal z-1 delay is required in the feedback paths. That keeps the transfer function of the filter intact and the sound is just closer to the original.
No the resonance is created by the feedback and the cascaded filters. The tanh functions are here to add some soft saturation and mimic the behavior of the analog components. On the left, the trigonometry is here because some of the variables are expressed in radians I think. The knob has an exponential travel, similar to the real gear.
@SansNom Thank you for taking the time to explain. How would you add resonance to the 1 pole filter I have attached (which is just copy pasta from your moog filter). :)
@ RobertSyrett - no resonance on a 1-pole filter. It's not just feedback and gain, but phase. The filter changes the phase of the harmonics and with 1 filter the cutoff frequency is 45° out of phase. With 4 cascaded filters it's 180°, meaning it's back in phase and can produce resonance. Well this is my understanding.
@afta8 If you send a transient into the filter it will ring for a very long time but it doesn't self-oscillate from silence and the ringing gets quieter over time.
@afta8 - True, it doesn't self oscillate strictly speaking, with absolutely no incoming signal. However if you feed the filter with a very small amount of noise, as can be expected on an analog device (like a level of 10-4) it will resonate. Unplug the noise source and it still rings.
@SansNom - good to know, the more the better haha... of course i will comment if something doesnt work or not as intended.. ;) i included the latest version already in my duofilter... works perfect. now i m able to create e.g. kickdrum with the filter and envelopes :D
Having fun with the Moog LPF 4 poles but feeling that's not enough? What about 5 more filters for the price of one ;)? Here is the Moog ladder multimode filter, featuring lowpass 2 and 4 poles, bandpass 2 and 4 poles and highpass 2 and 4 poles. The different modes are taken from the Oberheim Xpander version of the filter.
Update v1.2: I messed around with the soft clipping parameters and design a lot, and this version seems the better. Sligtht changes compared to the previous versions. Small changes in the resonance section. Added clamps and a clipping led.
It is recommended to set the sampling rate to 96 kHz or above for best results at extreme settings. Unfortunately on iOS the SR seems caped to 44.1 kHz. The authors of the design recommend a 4x oversampling in this case, but I don't think this is user option in Audulus.
Well, this one is really a tough one. Consider this as version 1.0, it will be updated for sure.
So today we have the Korg35 lowpass filter, the one used in the MS-20 Mk1 and the recent monotron/monotribe, etc. It's a 2-pole lowpass filter with some very specific features: no incoming signal gain drop when increasing resonance (in opposition to the Moog ladder) and strong diode clipping at high resonance / input gain (nonlinear behavior). Distorsion can be really extreme, here is a sound example (recorded in Audulus, iOS, first without resonance, then resonance pushed to maximum):
The gain of the incoming signal being kept constant when the resonance is increased, the filter will react very differently with varying input levels. To obtain this kind of distorsion, give some headroom to the resonance and keep the input level low.
The linear model is again a ZDF filter (credits to W. Pirkle). I modeled the nonlinerarities, featuring diode like clipping and assymetrical resonance response just like the original (see the image, the resonance is stronger for the negative part of the signal than for the positive one).
All these non-linearities do introduce a lot of aliasing however at extreme settings (not so extreme for the cutoff...). I minimized this effect by lowering the non-linearities at high cutoff frequencies. But oversampling is needed for better results and I'm a bit stuck here. See these links:
@SansNom - oversampling is something that we'll probably implement in the future. Ideally, you could set the sample rate of every single connection individually and super-optimize your patches. For example - buttons don't need to be sampled at 44.1k - at most maybe 100Hz to feel snappy. Taylor was going to do this before, but nixed it for some complication. But it definitely needs to happen for some more higher-level analog modelling stuff to go down, so it's on his radar.