A place to dump little or mid-sized snippets of SuperCollider code.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

35 lines
858 B

(
SynthDef(\funAmpMod, {
arg gate=1;
var snd, ampMod, ampModFreq, dlyL, dlyR, env, freq;
// env = Linen.kr(gate, 10, 1, 15, doneAction:Done.freeSelf);
env = EnvGen.kr(Env.adsr(5,0,1,10, 1, \sin), gate, doneAction:Done.freeSelf);
freq = LFNoise0.kr(1/10).exprange(250, 7000);
snd = LFPar.ar(freq * LFNoise1.ar(1).range(1,1.08));
ampModFreq = ( SinOsc.ar(4/10) + LFPulse.ar(5/10).range(-1,1) ).linlin(-2,2,1,10);
// { ( SinOsc.ar(4/10) + LFPulse.ar(5/10).range(-1,1) ).linlin(-2,2,1,10) }.plot(10)
ampMod = LFPulse.ar(ampModFreq, width:0.1).range(0,1).lag(0.003);
snd = snd * ampMod;
dlyL = CombN.ar(snd, decaytime: 4, mul:0.2);
dlyR = CombN.ar(snd, 1, 0.3, decaytime: 4, mul:0.2);
snd = snd!2 + [dlyL,dlyR];
snd = snd * env;
snd = Limiter.ar(snd, 0.9);
Out.ar(0, snd);
}).add;
)
x = Synth(\funAmpMod);
x.set(\gate, 0);