{
   "is_private" : null,
   "id" : "1-55X",
   "code" : "t=TempoClock.(273/60);\r\n(\r\nSynthDef(\"plucking\", {arg amp = 0.1, freq = 440, decay = 5, dampen = 0.1;\r\n\r\nvar env, snd;\r\nenv = Env.linen(0, decay, 0).kr(doneAction: 2);\r\nsnd = Pluck.ar(\r\n        in: LFTri.ar(freq: freq, mul: amp),\r\n        trig: Impulse.kr(0),\r\n        maxdelaytime: 0.1,\r\n        delaytime: freq.reciprocal,\r\n        decaytime: decay,\r\n        coef: dampen);\r\n    Out.ar(0, [snd, snd]);\r\n}).add;\r\n\r\nSynthDef(\"sub\", {arg out = 0, amp = 0.3, sinfreq = 60, sus = 0.1, glissf = 0.005, att = 0.01, rel = 0.45, pan = 0;\r\n\tvar env, snd, ramp;\r\n\tenv = Env.linen(attackTime: 0.25, sustainTime: sus, releaseTime: rel, level: amp).kr(doneAction: 2);\r\n\tramp = XLine.kr(\r\n\t\tstart: sinfreq,\r\n\t\tend: sinfreq,\r\n\t\tdur: rel\r\n\t);\r\n\tsnd = Saw.ar(freq: ramp, mul: env);\r\n\tsnd = Pan2.ar(snd, pan);\r\n\tsnd = BPF.ar(snd, 100, 0.3);\r\n\tOut.ar(out, snd);\r\n}).add;\r\n\r\nSynthDef(\"riser\",  {arg out = 0, amp = 0.5, pan = 0, att=0.3, sus=1, rel=0.5;\r\n\tvar env, snd;\r\n\tenv = Env.linen( att, sus,rel).kr(doneAction: 2);\r\n\tsnd = BPF.ar(\r\n\t\tin: WhiteNoise.ar(env),\r\n\t\tfreq: 2000,\r\n\t\trq: 0.4,\r\n\t\tmul: amp\r\n\t);\r\n\t\tOut.ar(out, Pan2.ar(snd, pan));\r\n}).add;\r\n\r\nSynthDef(\"hihat\", {arg out = 0, amp = 0.5, att = 0.01, rel = 0.2, ffreq = 6000, pan = 0;\r\n\tvar env, snd;\r\n\tenv = Env.perc(att, rel, amp).kr(doneAction: 2);\r\n\tsnd = WhiteNoise.ar;\r\n\tsnd = HPF.ar(in: snd, freq: ffreq, mul: env);\r\n\tOut.ar(out, Pan2.ar(snd, pan));\r\n}).add;\r\n\r\nSynthDef(\"snare\", {arg out = 0, amp = 0.1, sinfreq = 180, att = 0.01, rel = 0.2, ffreq = 2000, pan = 0;\r\n\tvar env, snd1, snd2, sum;\r\n\tenv = Env.perc(att, rel, amp).kr(doneAction: 2);\r\n\tsnd1 = HPF.ar(\r\n\t\tin: WhiteNoise.ar,\r\n\t\tfreq: ffreq,\r\n\t\tmul: env\r\n\t);\r\n\tsnd2 = SinOsc.ar(freq: sinfreq, mul: env);\r\n\tsum = snd1 + snd2;\r\n\tOut.ar(out, Pan2.ar(sum, pan));\r\n}).add;\r\n\r\n\r\nSynthDef(\"kick\", {arg out = 0, amp = 0.3, sinfreq = 60, glissf = 0.9, att = 0.01, rel = 0.45, pan = 0;\r\n\tvar env, snd, ramp;\r\n\tenv = Env.perc(att, rel, amp).kr(doneAction: 2);\r\n\tramp = XLine.kr(\r\n\t\tstart: sinfreq,\r\n\t\tend: sinfreq * glissf,\r\n\t\tdur: rel\r\n\t);\r\n\tsnd = SinOsc.ar(freq: ramp, mul: env);\r\n\tsnd = Pan2.ar(snd, pan);\r\n\tOut.ar(out, snd);\r\n}).add;\r\n\r\nSynthDef(\"sawSynth\", { arg freq = 440, amp = 0.1, sus = 4, att = 0.1,rel = 2, lofreq = 1000, hifreq = 3000;\r\n    var env, snd;\r\n    env = Env.linen(\r\n\t\tattackTime: att,\r\n\t\tsustainTime: sus,\r\n\t\treleaseTime: rel,\r\n\t\tlevel: amp\r\n\t).kr(doneAction: 2);\r\n    snd = Saw.ar(freq: freq * [0.99, 1, 1.001, 1.008], mul: env);\r\n\tsnd = LPF.ar(\r\n\t\tin: snd,\r\n\t\tfreq: LFNoise2.kr(1).range(lofreq, hifreq)\r\n\t);\r\n    snd = Splay.ar(snd);\r\n    Out.ar(0, snd);\r\n}).add;\r\n\r\n\r\nSynthDef(\"sawSynth2\", { arg freq = 440, amp = 0.1, att = 0.1, rel = 2, lofreq = 1000, hifreq = 3000, gate = 1;\r\n    var env, snd;\r\n    env = Env.asr.kr(doneAction: 2, gate: gate);\r\n    snd = Saw.ar(freq: Lag.kr(freq * [0.99, 1, 1.001, 1.008], 0.1), mul: env*amp);\r\n    snd = LPF.ar(\r\n        in: snd,\r\n        freq: 15000\r\n    );\r\n    snd = Splay.ar(snd);\r\n    Out.ar(0, snd);\r\n}).add;\r\n\r\nSynthDef(\"am1\", {arg freq = 440, modfreq = 2, amp = 0.2, att = 0.01, rel = 3;\r\n    var carrier, modulator, env;\r\n    env = Env.perc(\r\n        attackTime: att,\r\n        releaseTime: rel,\r\n        level: amp\r\n    ).kr(2);\r\n    modulator = SinOsc.ar(modfreq).range(0, 1);\r\n    carrier = LFTri.ar(freq: freq, mul: env * modulator);\r\n    Out.ar(0, carrier ! 2);\r\n}).add;\r\n\r\n\r\n)\r\n\r\n//pbinds\r\n(\r\n~melodyintro= Pbind(\r\n\t\\instrument, \"am1\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([0,0,1,2,1,-1,0,0,1,2,4,-1],1),\r\n\t\\dur, Pseq([14,1,1,8,4,4],inf),\r\n\t\\mul, 0.7,\r\n\t\\rel, 2,\r\n\t\\modfreq, 0);\r\n\r\n~melodyintro2= Pbind(\r\n\t\\instrument, \"am1\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([-2,-2,-1,0,-1,-4,-3,-2,-2,-1,0,2,-2,-3],1),\r\n\t\\dur, Pseq([14,1,1,8,4,2,2],inf),\r\n\t\\mul,0.5,\r\n\t\\rel, 2,\r\n\t\\modfreq, 0);\r\n\r\n~pickup= Pbind(\r\n\t\\instrument, \"am1\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([-2,-1,0,2,-2,-3],1),\r\n\t\\dur, Pseq([1,1,8,4,2,2],1),\r\n\t\\mul,0.5,\r\n\t\\rel, 2\r\n);\r\n\r\n~bassintro = Pbind(\r\n\t\\instrument, \"plucking\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([5,5,4,2,0,2,5,2,-2,5,0,-1],1),\r\n\t\\dur, Pseq([13,1,1,1,8,8,1,1,1,13,8,8],inf),\r\n\t\\ctranspose, -24,\r\n\t\\dampen, 0.4,\r\n\t\\decay, 2,\r\n\t\\mul,0.5);\r\n\r\n~harmonymono =Pbind(\r\n\t\\instrument, \"am1\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([\\rest,0,4,3,\\rest,2,\\rest,1,\\rest,-1,\\rest,-1,1,2,1,-1,],4),\r\n\t\\dur, 1,\r\n\t\\ctranspose, 24,\r\n\t\\mul,0.02,\r\n\t\\amp, 0.08);\r\n\r\n~harmonysynth =Pmono(\r\n\t\"sawSynth2\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([\\rest,0,4,3,\\rest,2,\\rest,1,\\rest,-1,\\rest,-1,1,2,1,-1,],4),\r\n\t\\dur, 1,\r\n\t\\ctranspose, 24,\r\n\t\\mul,0.5);\r\n\r\n~harmonyintro= Pbind(\r\n\t\\instrument, \"am1\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([\\rest,4,\\rest,3,\\rest,2,\\rest,1,\\rest,0,\\rest,-1,\\rest,0,\\rest,-3,\\rest,4,\\rest,3,\\rest,2,\\rest,1,\\rest,0,\\rest,-1,\\rest,0,\\rest,1],2),\r\n\t\\ctranspose, 24,\r\n\t\\rel, 1,\r\n\t\\dur, 1,\r\n\t\\mul,0.05);\r\n\r\n~melodydrop =Pbind(\r\n\t\\instrument, \"sawSynth2\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([0,0,1,2,1,-1],4),\r\n\t\\dur, Pseq([6,1,1,4,2,2],inf),\r\n\t\\mul,0.5);\r\n\r\n~harmonydrop =Pmono(\r\n\t\"sawSynth2\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([\\rest,0,4,3,\\rest,-1,6,4,\\rest,0,4,3,\\rest,-1,6,4,\\rest,0,4,3,\\rest,-1,6,4,\\rest,0,3,2,1,2,1,-1], 2),\r\n\t\\dur, 1,\r\n\t\\ctranspose, 24,\r\n\t\\mul,0.5);\r\n\r\n~rise=Pbind(\r\n\t\\instrument, \"riser\",\r\n\t\\dur, 2,\r\n\t\\degree, Pseq([1], 1),\r\n\t\\amp, 0.5,\r\n\t\\rel, 0.5,\r\n\t\\sus, 0.3,\r\n\t\\att, 1.3);\r\n\r\n\r\n~melodydrop2 = Pbind(\r\n\t\\intrument, \"sawSynth2\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([-2,-2,-1,0,-1,-3],4),\r\n\t\\dur, Pseq([6,1,1,4,2,2],inf),\r\n\t\\mul,1);\r\n\r\n~bassdrop= Pbind(\r\n\t\\instrument, \"sawSynth2\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([-2,-2,-1,0,-5,-5],4),\r\n\t\\dur, Pseq([6,1,1,4,2,2],inf),\r\n\t\\ctranspose, -12,\r\n\t\\att, 0.01,\r\n\t\\sus,0.5,\r\n\t\\rel, 0.1,\r\n\t\\mul, 1);\r\n\r\n~bassierdrop= Pbind(\r\n\t\\instrument, \"sawSynth2\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([-2,0,2,-2,0,-5],2),\r\n\t\\dur, Pseq([8,4,4,8,4,4],inf),\r\n\t\\ctranspose, -24,\r\n\t\\rel, Pseq([8,4,4,8,4,4],inf),\r\n\t\\mul, 1);\r\n\r\n~harmonydrop2= Pbind(\r\n\t\\instrument, \"am1\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([\\rest,0,4,3,-1,6,4,3,2,1,2,1,-1],1),\r\n\t\\dur, Pseq([1,1,1,2,1,1,2,2,1,1,1,1,1],1),\r\n\t\\mul, 0.5,\r\n\t\\rel, 2,\r\n\t\\ctranspose, 24,\r\n\t\\modfreq, 0);\r\n\r\n~bassdrone= Pbind(\r\n\t\\instrument, \"sub\",\r\n\t\\sinfreq, Pseq([51.91, 65.41],2),\r\n\t\\dur, 16,\r\n\t\\rel, 6,\r\n\t\\mul, 3,\r\n\t\\amp, 0.2);\r\n\r\n~snareintro=Pbind(\r\n\t\\instrument, \"snare\",\r\n\t\\dur, Pseq([1,Rest(2),1,Rest(2),1,Rest(1),1,Rest(7)],4),\r\n\t\\att, 0.05,\r\n\t\\rel, 0.7,\r\n\t\\sinfreq, 180,\r\n\t\\ffreq, 200,\r\n\t\\amp, 0.1);\r\n\r\n\r\n~kick= Pbind(\r\n\t\\instrument, \"kick\",\r\n\t\\dur, Pseq([1,Rest(0.5),0.5,Rest(4),1,Rest(2),1,Rest(2),1,1,Rest(2)],4),\r\n\t\\att, 0.01,\r\n\t\\rel, 0.4,\r\n\t\\sinfreq, Pseq([100],inf),\r\n\t\\glissf, 0.1,\r\n\t\\amp, 0.4);\r\n\r\n~thump= Pbind(\r\n\t\\instrument, \"kick\",\r\n\t\\dur, Pseq([10],1),\r\n\t\\att, 0.03,\r\n\t\\rel, 10,\r\n\t\\sinfreq, Pseq([50],inf),\r\n\t\\glissf, 0.4,\r\n\t\\amp, 0.3);\r\n\r\n~snare= Pbind(\r\n\t\\instrument, \"snare\",\r\n\t\\dur, Pseq([Rest(2),1,Rest(0.5),0.5,Rest(3),1,Rest(2),1,Rest(3),1,Rest(1)],4),\r\n\t\\att, 0.01,\r\n\t\\rel, 0.3,\r\n\t\\sinfreq, 180,\r\n\t\\ffreq, 200,\r\n\t\\amp, 0.2);\r\n\r\n~hihat= Pbind(\r\n\t\\instrument, \"hihat\",\r\n\t\\dur, Pseq([1],64),\r\n\t\\att, 0.1,\r\n\t\\rel, 0.25,\r\n\t\\ffreq, Pseq([3000], inf),\r\n\t\\pan, 0,\r\n\t\\amp, 0.03);\r\n\r\n~hihat2= Pbind(\r\n\t\\instrument, \"hihat\",\r\n\t\\dur, Pseq([1],64),\r\n\t\\att, Pseq([0.1,0.1,0.1,0.01,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1],4),\r\n\t\\rel, Pseq([0.25,0.25,0.25,1.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25],4),\r\n\t\\ffreq, Pseq([3600,3600,3600,2800,3600,3600,3600,3600,3600,3600,3600,3600,3600,3600,3600,3600], inf),\r\n\t\\pan, 0,\r\n\t\\amp, 0.03);\r\n\r\n~bridgechord1= Pbind(\r\n\t\\instrument, \"sawSynth\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([[2,4,6],[3,5s,7],[2,4,6],[3,5s,7],[1b,3,5],[2,4,6],[-1,1,3],[0,2,5]],1),\r\n\t\\sus, 0.1,\r\n\t\\dur, Pseq([3,13],inf));\r\n\r\n~bridgechord2= Pbind(\r\n\t\\instrument, \"sawSynth2\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([[2,4,6],[3,5s,7],[2,4,6],[3,5s,7],[1b,3,5],[2,4,6],[-1,1,3],[0,2,5]],1),\r\n\t\\dur, Pseq([3,13],inf));\r\n\r\n~bridgebass= Pmono(\r\n\t\"sawSynth2\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([2,3,0,3,0,2,3,0,3,0,1b,2,-1,2,-2,-1,0,0,7,6],1),\r\n\t\\dur, Pseq([3,10,1,1,1,3,10,1,1,1,3,10,1,1,1,3,10,1,1,1],inf),\r\n\t\\ctranspose, -12,\r\n\t\\rel, 0.5,\r\n\t\\mul, 1.5);\r\n\r\n~bridgebassier= Pbind(\r\n\t\\instrument, \"sawSynth\",\r\n\t\\scale, Scale.minor,\r\n\t\\degree, Pseq([\\rest,3,\\rest,3,\\rest,2,\\rest,0],1),\r\n\t\\dur, Pseq([3,13],inf),\r\n\t\\ctranspose, -36,\r\n\t\\rel, 1,\r\n\t\\mul, 1);\r\n\r\n~kick2= Pbind(\r\n\t\\instrument, \"kick\",\r\n\t\\dur, Pseq([1,1,Rest(1),1,Rest(2),1,Rest(2),1,Rest(2),1,1,Rest(2)],4),\r\n\t\\att, 0.01,\r\n\t\\rel, 0.4,\r\n\t\\sinfreq, Pseq([100],inf),\r\n\t\\glissf, 0.1,\r\n\t\\amp, 0.4);\r\n\r\n~snare2= Pbind(\r\n\t\\instrument, \"snare\",\r\n\t\\dur, Pseq([Rest(2),1,Rest(4),1,Rest(2),1,Rest(3),1,Rest(1)],4),\r\n\t\\att, 0.01,\r\n\t\\rel, 0.3,\r\n\t\\sinfreq, 180,\r\n\t\\ffreq, 200,\r\n\t\\amp, 0.2);\r\n)\r\n\r\n\r\n~melodyintro.play(TempoClock(273/60));\r\n~melodyintro2.play(TempoClock(273/60));\r\n~pickup.play(TempoClock(273/60));\r\n~bassintro.play(TempoClock(273/60));\r\n~harmonyintro.play(TempoClock(273/60));\r\n~harmonymono.play(TempoClock(273/60));\r\n~harmonysynth.play(TempoClock(273/60));\r\n~melodydrop.play(TempoClock(273/60));\r\n~melodydrop2.play(TempoClock(273/60));\r\n~harmonydrop.play(TempoClock(273/60));\r\n~harmonydrop2.play(TempoClock(273/60));\r\n~bassdrop.play(TempoClock(273/60));\r\n~bassierdrop.play(TempoClock(273/60));\r\n~bassdrone.play(TempoClock(273/60));\r\n~bridgechord1.play(TempoClock(273/60));\r\n~bridgechord2.play(TempoClock(273/60));\r\n~bridgebassier.play(TempoClock(273/60));\r\n~bridgebass.play(TempoClock(273/60));\r\n~snareintro.play(TempoClock(273/60));\r\n~snare.play(TempoClock(273/60));\r\n~snare2.play(TempoClock(273/60));\r\n~kick.play(TempoClock(273/60));\r\n~kick2.play(TempoClock(273/60));\r\n~hihat.play(TempoClock(273/60));\r\n~hihat2.play(TempoClock(273/60));\r\n~rise.play(TempoClock(273/60));\r\n~thump.play(TempoClock(273/60));\r\n\r\n\r\n(\r\n\r\nt=TempoClock(273/60);\r\n\r\nPspawner({ arg maestro;\r\n\r\n\r\n\tmaestro.par(~melodyintro);\r\n\tmaestro.wait(46);\r\n\tmaestro.seq(~pickup);\r\n\tmaestro.par(~melodyintro);\r\n\tmaestro.par(~melodyintro2);\r\n\tmaestro.par(~bassdrone);\r\n\tmaestro.seq(~bassintro);\r\n\tmaestro.par(~melodyintro);\r\n\tmaestro.par(~melodyintro2);\r\n\tmaestro.par(~bassdrone);\r\n\tmaestro.par(~bassintro);\r\n\tmaestro.seq(~harmonymono);\r\n\tmaestro.par(~melodyintro);\r\n\tmaestro.par(~melodyintro2);\r\n\tmaestro.par(~bassdrone);\r\n\tmaestro.par(~bassintro);\r\n\tmaestro.par(~snareintro);\r\n\tmaestro.par(~harmonysynth);\r\n\tmaestro.par(~harmonyintro);\r\n\tmaestro.wait(56);\r\n\tmaestro.par(~rise);\r\n\tmaestro.wait(8);\r\n\tmaestro.par(~thump);\r\n\tmaestro.par(~melodydrop);\r\n\tmaestro.par(~melodydrop2);\r\n\tmaestro.wait(32);\r\n\tmaestro.par(~bassdrop);\r\n\tmaestro.wait(32);\r\n\tmaestro.suspendAll;\r\n\tmaestro.par(~snare);\r\n\tmaestro.par(~hihat);\r\n\tmaestro.par(~kick);\r\n\tmaestro.par(~bassdrop);\r\n\tmaestro.par(~bassierdrop);\r\n\tmaestro.par(~harmonydrop);\r\n\tmaestro.par(~melodydrop);\r\n\tmaestro.seq(~melodydrop2);\r\n\tmaestro.wait(2);\r\n\tmaestro.par(~rise);\r\n\tmaestro.wait(6);\r\n\tmaestro.par(~bridgechord1);\r\n\tmaestro.par(~bridgechord2);\r\n\tmaestro.par(~bridgebass);\r\n\tmaestro.par(~bridgebassier);\r\n\tmaestro.par(~hihat2);\r\n\tmaestro.par(~snare2);\r\n\tmaestro.seq(~kick2);\r\n\tmaestro.par(~melodydrop);\r\n\tmaestro.par(~melodydrop2);\r\n\tmaestro.wait(32);\r\n\tmaestro.par(~bassierdrop);\r\n\tmaestro.wait(32);\r\n\tmaestro.suspendAll;\r\n\tmaestro.seq(~harmonydrop2);\r\n\tmaestro.suspendAll;\r\n\r\n\r\n\r\n\r\n\tmaestro.suspendAll\r\n\r\n}).play(t)\r\n)\r\n\r\ns.makeWindow;",
   "labels" : [
      "scu",
      "bruno",
      "115",
      "musc"
   ],
   "ancestor_list" : [],
   "description" : "",
   "author" : "unknown",
   "name" : "Kelvin - Musc 115"
}
