diodeladder
Zero-delay feedback implementation of a 4 pole (24 dB/oct) diode low-pass filter.
Deprecated alias
diode_ladderis a deprecated alias ofdiodeladderin Csound 7. Usediodeladderin new code. The old name still works for compatibility.
This filter design was originally used in the EMS VCS3 and was the resonant filter in the Roland TB-303.
Syntax
Initialization
istor --initial disposition of internal data space. Since filtering incorporates a feedback loop of previous output, the initial status of the storage space used is significant. A zero value will clear the space; a non-zero value will allow previous information to remain. The default value is 0.
Performance
asig -- low-pass output signal.
ain -- input signal.
xcf -- filter cutoff frequency (i-, k-, or a-rate).
xk -- filter feedback value k (i-, k-, or a-rate) that controls resonance. Range 0.0-17.0 . Self-oscillation occurs at 17.0.
knlp (optional, default=0) -- Non-linear processing method. 0 = no processing, 1 = higher-quality NLP, 2 = lower-quality NLP (faster). Method 1 uses (1.0 / tanh(ksaturation)) * tanh(ksaturation * input). Method 2 uses tanh(ksaturation * input). Enabling NLP may increase the overall output of filter above unity and should be compensated for outside of the filter.
ksaturation (optional, default=1) -- saturation amount to use for non-linear processing. Values > 1 increase the steepness of the NLP curve.
Examples
Here is an example of the diodeladder opcode. It uses the file diodeladder.csd.
Here is an example of the diode_ladder opcode. It uses the file diode_ladder.csd.
References
This filter is based on the work of Will Pirkle that employs Vadim Zavalishin's work with bilinear tranforms to create topology-preserving transform (TPT) implementations of analog filters.
- Pirkle, Will. Designing Software Synthesizer Plug-ins in C++: For RackAFX, VST3, and Audio Units. CRC Press, 2014.
- Pirkle, Will. AN-6: Virtual Analog (VA) DiodeLadder Filter. 2013.
- Zavalishin, Vadim. "The Art of VA filter design." Native Instruments, 2012.
See also
Standard filters: Zero-delay Feedback Filters (Virtual Analog)
Credits
Author: Steven Yi
April 2017
New in Csound 6.09.0