SuperCollider Algo Drone Music

← Go Back Music Production
267 Words • ~2 Minute Reading Time
SuperCollider Algo Drone Music by Eric David Smith
Click to watch on Youtube
Example using SuperCollider 3.13.0 - Original Track

This is a simple example of how to create a drone using SuperCollider. This is a great way to get started with SuperCollider and learn how to use the language. I have included the code below for you to explore and play with. I hope you enjoy it!

Install SuperCollider 3.13.0


Download SuperCollider

SuperCollider Code


This is what I am calling algo drone. It evolves over time and is never the same. It is a great way to create a drone that is always changing and evolving.

(
{
var note = [62, 67, 69, 74, 76].choose.midicps;
var dur = [1/2, 1, 2, 4].wchoose([0.2, 0.5, 0.2, 0.1]);
var freq_drift = LFNoise2.kr(0.5).range(0.95, 1.05);
var amp_mod = LFNoise2.kr(1/8).range(0.5, 1);

var synth = SinOsc.ar(note \* freq_drift, 0, amp_mod);
var delay = DelayC.ar(synth, 0.5, LFNoise2.kr(1/8).range(0.1, 0.4));
var reverb = FreeVerb.ar(Mix.new([synth, delay]), mix: 0.3);

Out.ar(0, reverb \* 0.2)
}.play;

SynthDef.new("simple*sine", {
arg freq=440, amp=0.1, out=0, pan=0, gate=1;
var env, sig;
env = EnvGen.kr(Env.adsr(0.01, 0.1, 0.6, 0.3), gate, doneAction:2);
sig = SinOsc.ar(freq) * env \_ amp;
Out.ar(out, Pan2.ar(sig, pan));
}).add;

Pbind(
\instrument, "simple_sine",
\scale, Scale.minor,
\degree, Pseq([0, 2, 3, 5, 7], inf),
\dur, 0.25,
\amp, Pseq([0.2, 0.2, 0.1, 0.1], inf)
).play;
)

SuperCollider Resources


Supporting My Work


Please consider Buying Me A Coffee. I work hard to bring you my best content and any support would be greatly appreciated. Thank you for your support!


Eric David Smith
Father / Software Engineer / Musician / Entrepreneur

Discover More (3) Music Production


Blog Tags