ref: c893c0b965b5c12bdea1c3e11a7f27b0b459a207
dir: /kick_drum.dsp/
// Simple kick drum declare name "Kick Drum"; declare group "synthesis"; import("stdfaust.lib"); aFreq = vslider("h:a/[0]frequency[unit:Hz]", 100, 10, 200, 5); aA = vslider("h:a/[1]attack[unit:s]", 0.001, 0.00001, 0.2, 0.001); aD = vslider("h:a/[2]delay[unit:s]", 0.01, 0.00001, 1.0, 0.001); aR = vslider("h:a/[3]release[unit:s]", 0.001, 0.00001, 1.0, 0.001); bA = vslider("h:b/[0]attack[unit:s]", 0.001, 0.00001, 0.2, 0.001); bFreq = checkbox("h:control/[1]b enable") * vslider("h:b/[1]frequency", 200, -400, 400, 5); bR = vslider("h:b/[2]release[unit:s]", 0.001, 0.00001, 0.2, 0.001); gate = button("h:control/[0]gate"); process = os.oscsin(aFreq + bFreq*en.ar(bA, bR, gate)) * en.adsr(aA, aD, 0.000001, aR, gate) <: _, _;