2022-01-10
#jamuary jam number 7. Today I played with Eli Fieldsteel’s FM voice
SynthDef(\fm, {
arg freq=500, mRatio=1, cRatio=1,
index=1, iScale=5, cAtk=4, cRel=(-4),
amp=0.2, atk=0.01, rel=3, pan=0,
out=0;
var car, mod, env, iEnv;
//index of modulation
iEnv = EnvGen.kr(
Env(
[index, index*iScale, index],
[atk, rel],
[cAtk, cRel]
)
);
//amplitude envelope
env = EnvGen.kr(Env.perc(atk,rel,curve:[cAtk,cRel]),doneAction:2);
//modulator/carrier
mod = SinOsc.ar(freq * mRatio, mul:freq * mRatio * iEnv);
car = SinOsc.ar(freq * cRatio + mod) * env * amp;
car = Pan2.ar(car, pan);
//direct out/reverb send
Out.ar(out, car);
}).add;
The pad is the following repeating sequence washed out with (ValhallaDelay) reverb
Pdef(\m1, Pbind(
\instrument, \fm,
\dur, 1/4,
\mRatio, 1,
\scale, Scale.aeolian,
\degree, Pseq([0, 3, 5, 2, \, -1], inf),
\out, 0,
));
A bassline
Pdef(\b, Pbind(
\instrument, \fm,
\dur, 2,
\cRatio, 4,
\atk, 0.05,
\iScale, 2,
\scale, Scale.aeolian,
\degree, Pseq([0, -5, -4, -1, 1], inf),
\ctranspose, -14,
\out, 4,
));
And a melody, which I edited as it played to create some variations
Pdef(\m3, Pbind(
\instrument, \fm,
\delta, Pbjorklund2(5, 8) / 2 ,
\cRatio, Pseq([1, 2, 1], inf),
\scale, Scale.aeolian,
\degree, Pseq([0, -4, -7, 0, -1], inf),
\out, 2,
\ctranspose, 7,
));
There’s some really nice sounds to coax out of this simple FM patch I think, and I’d like to explore adding some filtering and distortion. I think it might be possible to create a synthdef that has some of the characteristics of the Digitone.
I’m quite happy that this sketch has more of a “composed” and melodic feel and isn’t overly robotic, but there’s still a long way for me to go to bring some emotion into these sounds.