X-Git-Url: https://scm.cri.ensmp.fr/git/Faustine.git/blobdiff_plain/1059e1cc0c2ecfa237406949aa26155b6a5b9154..66f23d4fabf89ad09adbd4dfc15ac6b5b2b7da83:/interpreter/preprocessor/faust-0.9.47mr3/tools/faust2pd/examples/synth/fuzz.dsp diff --git a/interpreter/preprocessor/faust-0.9.47mr3/tools/faust2pd/examples/synth/fuzz.dsp b/interpreter/preprocessor/faust-0.9.47mr3/tools/faust2pd/examples/synth/fuzz.dsp new file mode 100644 index 0000000..025a5d2 --- /dev/null +++ b/interpreter/preprocessor/faust-0.9.47mr3/tools/faust2pd/examples/synth/fuzz.dsp @@ -0,0 +1,20 @@ + +/* A simple waveshaping effect. */ + +declare name "fuzz -- a simple distortion effect"; +declare author "Bram de Jong (from musicdsp.org)"; +declare version "1.0"; + +import("music.lib"); + +dist = hslider("distortion", 12, 0, 100, 0.1); // distortion parameter +gain = hslider("gain", 3, -96, 96, 0.1); // output gain (dB) + +// the waveshaping function +f(a,x) = x*(abs(x) + a)/(x*x + (a-1)*abs(x) + 1); + +// gain correction factor to compensate for distortion +g(a) = 1/sqrt(a+1); + +process = vgroup("dist", (out, out)) +with { out(x) = db2linear(gain)*g(dist)*f(db2linear(dist),x); };