From 194676e190b827c6b12318213261d4e47ec7e6aa Mon Sep 17 00:00:00 2001 From: Vee9ahd1 <> Date: Tue, 11 May 2021 15:29:40 -0400 Subject: initial commit --- loquelic_ss_cv.dsp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 loquelic_ss_cv.dsp (limited to 'loquelic_ss_cv.dsp') diff --git a/loquelic_ss_cv.dsp b/loquelic_ss_cv.dsp new file mode 100644 index 0000000..772b321 --- /dev/null +++ b/loquelic_ss_cv.dsp @@ -0,0 +1,29 @@ +import("stdfaust.lib"); +import("src/util.dsp"); + +UIGroupOscA(x) = vgroup("Oscillator A", x); +UIFreqA = UIGroupOscA(hslider("Frequency", 440.0, 20.0, 10000.0, 1)); +UIMorphA = UIGroupOscA(hslider("Morph", 0.5, 0.0, 1.0, 0.001)); + +UIGroupOscB(x) = vgroup("Oscillator B", x); +UIFreqB = UIGroupOscB(hslider("Frequency", 440.0, 20.0, 10000.0, 1)); +UIMorphB = UIGroupOscB(hslider("Morph", 0.5, 0.0, 1.0, 0.001)); + +UIFoldGain = hslider("Fold", 1.0, 0.0, 5.0, 0.01); +UIMod = hslider("Modulation", 0.0, 0.0, 1.0, 0.001); +UIDamp = hslider("Damp", 0.0, 0.0, 1.0, 0.001); + +process(pitchA, pitchB, morphA, morphB, foldgain, mod, damp) = + (oscA - a*oscC)/(1.0 + a^2 - 2*a*oscB) : *(UIFoldGain + foldgain) : fold +with { + a = UIDamp; + sinemorph(morph) = knee(morph) : sin(_*2.0*ma.PI); + + tA = pitchA : phase + oscB*(UIMod + mod) : fmod(_, 1.0); + tB = pitchB : phase + 0.25 : fmod(_, 1.0); + tC = tB - tA : fmod(_, 1.0); + + oscA = tA : sinemorph(morphA + UIMorphA); + oscB = tB : sinemorph(morphB + UIMorphB); + oscC = tA - tB : sin(_*2.0+ma.PI); +}; -- cgit v1.2.1