distort1
Modified hyperbolic tangent distortion.
distort1 can be used to generate wave shaping distortion based on a modification of the tanh function.
exp(asig * (shape1 + pregain)) - exp(asig * (shape2 - pregain))
aout = ---------------------------------------------------------------
exp(asig * pregain) + exp(-asig * pregain)
Syntax
Initialization
imode (Csound version 5.00 and later only; optional, defaults to 0) -- scales kpregain, kpostgain, kshape1, and kshape2 for use with audio signals in the range -32768 to 32768 (imode=0), -0dbfs to 0dbfs (imode=1), or disables scaling of kpregain and kpostgain and scales kshape1 by kpregain and kshape2 by -kpregain (imode=2).
Performance
asig -- is the input signal.
kpregain -- determines the amount of gain applied to the signal before waveshaping. A value of 1 gives slight distortion.
kpostgain -- determines the amount of gain applied to the signal after waveshaping.
kshape1 -- determines the shape of the positive part of the curve. A value of 0 gives a flat clip, small positive values give sloped shaping.
kshape2 -- determines the shape of the negative part of the curve.
Examples
Here is an example of the distort1 opcode. It uses the file distort1.csd.
See also
Credits
Author: Hans Mikelson
December 1998
New in Csound version 3.50