{
   "labels" : [],
   "code" : "k = Buffer.read(s, \"C:/Users/Xtlas/Desktop/Kick.wav\");\r\nx = Buffer.read(s, \"C:/Users/Xtlas/Desktop/Snare.wav\");\r\nc = Buffer.read(s, \"C:/Users/Xtlas/Desktop/Letra.wav\");\r\n\r\n(\r\nSynthDef(\"fm2\", {arg freq = 440, modindex = 10, amp = 0.1, pos = 0, gate = 1, att = 0.01, rel = 0.3;\r\n\tvar carrier, modulator, freqdev, env, modfreq;\r\n\tmodindex = Line.kr(modindex, 1, att);\r\n\tmodfreq = freq / 2;\r\n\tfreqdev = modfreq * modindex;\r\n\tmodulator = Pulse.ar(freq: modfreq, mul: freqdev);\r\n\tcarrier = SinOsc.ar(freq: [freq + modulator, freq * 1.01 + modulator]);\r\n\tcarrier = carrier + SinOsc.ar(freq: [freq + modulator, freq * 1.01 + modulator]/2);\r\n\tenv = Env.asr(\r\n\t\tattackTime: att,\r\n\t\tsustainLevel: amp/1.3,\r\n\t\treleaseTime: rel\r\n\t).kr(doneAction: 2, gate: gate);\r\n\tcarrier = carrier + FreeVerb.ar(carrier, 0.33, 0.75, 0.25, 1, 0);\r\n\tcarrier = Pan2.ar(in: carrier, pos: pos, level: env);\r\n\tOut.ar(0, carrier * 0.5);\r\n}).add;\r\n\r\nSynthDef(\"lead\", {arg freq = 440, modindex = 10, amp = 0.1, pos = 0, gate = 1, att = 0.01, rel = 0.2;\r\n\tvar carrier, modulator, freqdev, env, modfreq, realF;\r\n\t// create a nicer env for modindex,\r\n\tmodindex = Line.kr(modindex, 1, rel);\r\n\tmodfreq = freq / 2;\r\n\tfreqdev = modfreq * modindex;\r\n\tmodulator = SinOsc.ar(freq: modfreq, mul: freqdev);\r\n\trealF = [freq + modulator, freq * 1.01 + modulator];\r\n\tcarrier = SinOsc.ar(freq: Lag.ar(realF, 0.1) );\r\n\tcarrier = carrier + Pulse.ar(freq: Lag.ar(realF*1.001, 0.1)/2);\r\n\tenv = Env.asr(\r\n\t\tattackTime: att,\r\n\t\tsustainLevel: amp,\r\n\t\treleaseTime: rel\r\n\t).kr(doneAction: 2, gate: gate);\r\n\tcarrier = Pan2.ar(in: carrier, pos: pos, level: env);\r\n\tOut.ar(0, carrier * 0.5);\r\n}).add;\r\n\r\nSynthDef(\"sine\", {arg freq = 440, modindex = 10, amp = 0.1, pos = 0, gate = 1, att = 0.01, rel = 0.3;\r\n\tvar carrier, modulator, freqdev, env, modfreq;\r\n\tmodindex = Line.kr(modindex, 1, att);\r\n\tmodfreq = freq / 2;\r\n\tfreqdev = modfreq * modindex;\r\n\tmodulator = SinOsc.ar(freq: modfreq, mul: freqdev);\r\n\tcarrier = SinOsc.ar(freq: [freq + modulator, freq * 1.01 + modulator]);\r\n\tenv = Env.asr(\r\n\t\tattackTime: att,\r\n\t\tsustainLevel: amp,\r\n\t\treleaseTime: rel\r\n\t).kr(doneAction: 2, gate: gate);\r\n\tcarrier = carrier + FreeVerb.ar(carrier, 0.33, 0.75, 0.25, 1, 0);\r\n\tcarrier = Pan2.ar(in: carrier, pos: pos, level: env);\r\n\tOut.ar(0, carrier * 0.5);\r\n}).add;\r\n\r\nSynthDef(\"marimba\", {arg freq= 220, amp = 0.4;\r\n\tvar snd, env;\r\n\tenv = EnvGen.kr(Env.linen(0.015, 1, 0.5), levelScale: amp, doneAction: 2);\r\n\tsnd = BPF.ar(\r\n\t\tin: Saw.ar(0),\r\n\t\tfreq: freq,\r\n\t\trq: 0.02);\r\n\tsnd = BLowShelf.ar(snd, 220, 0.81, 6);\r\n\tOut.ar(0, Splay.ar(snd*env*0.3));\r\n}).add;\r\n\r\n\r\nSynthDef(\"sampler\", {arg rate = 1, amp = 1, buffer, startPos = 0, attack = 0.02, release = 0.5, panning = 0;\r\n    var snd, env;\r\n    env = Env.perc(attackTime: attack, releaseTime: release, level: amp).kr(doneAction: 2);\r\n    snd = PlayBuf.ar(\r\n        numChannels: 1,\r\n        bufnum: buffer,\r\n        rate: rate,\r\n        startPos: startPos.linlin(0, 1, 0, BufFrames.kr(buffer))\r\n    );\r\n    snd = snd * env;\r\n\tsnd = Pan2.ar(snd, panning);\r\n    Out.ar(0, snd);\r\n}).add;\r\n\r\nSynthDef(\"stereosampler\", {arg rate = 1, amp = 1, buffer, startPos = 0, attack = 0.02, release = 0.5, panning = 0;\r\n    var snd, env;\r\n    env = Env.perc(attackTime: attack, releaseTime: release, level: amp).kr(doneAction: 2);\r\n    snd = PlayBuf.ar(\r\n        numChannels: 2,\r\n        bufnum: buffer,\r\n        rate: rate,\r\n        startPos: startPos.linlin(0, 1, 0, BufFrames.kr(buffer))\r\n    );\r\n    snd = snd * env;\r\n\tsnd = Pan2.ar(snd, panning);\r\n    Out.ar(0, snd);\r\n}).add;\r\n\r\n\r\nSynthDef(\"hihat\", {arg out = 0, amp = 0.5, att = 0.01, rel = 0.2, ffreq = 12000, pan = 0;\r\n\tvar env, snd;\r\n\tenv =  Env.perc(\r\n\t\tattackTime: att,\r\n\t\treleaseTime: rel,\r\n\t\tlevel: amp).kr(doneAction: 2);\r\n\tsnd =  WhiteNoise.ar(\r\n\t\tmul: env,\r\n\t\tadd: 0);\r\n\tsnd = LPF.ar(\r\n\t\tin: snd,\r\n\t\tfreq: ffreq,\r\n\t\tmul: 1,\r\n\t\tadd: 0);\r\n\tOut.ar(out, Pan2.ar(snd, pan));\r\n}).add;\r\n)\r\n\r\n(\r\n~kc = 0; //7\r\n\r\n~chordsMinor = Pbind(\r\n    \\instrument, \"fm2\",\r\n\t\\dur, Pseq([\r\n\t\t0.5\r\n\t], inf),\r\n\t\\midinote, Pseq([\r\n\t\tPn([60, 63, 65], 8),\r\n\t\tPn([59, 63, 65], 8),\r\n\t\tPn([58, 63, 65], 8),\r\n\t\tPn([53, 57, 60], 8),\r\n\r\n\t\tPn([56, 60, 65], 8),\r\n\t\tPn([55, 59, 67], 8),\r\n\t\tPn([53, 60, 63], 8),\r\n\t\tPn([55, 55, 59], 8),\r\n\t] + ~kc, 1),\r\n\t\\ctranspose, 0,\r\n\t\\modindex, Pseq([1, 5, 7, 10], inf),\r\n\t\\amp, 0.1,\r\n\t\\att, 0.01,\r\n\t\\rel, 0.2,\r\n\t\\strum, 0.01\r\n);\r\n\r\n~chordsAlt = Pbind(\r\n    \\instrument, \"fm2\",\r\n\t\\dur, Pseq([\r\n\t\t0.5, 0.25, 0.5, 0.5,\r\n\t\t0.5, 0.25, 0.5, 0.5, 0.25, 0.25,\r\n\r\n\t\t0.5, 0.25, 0.5, 0.5,\r\n\t\t0.5, 0.25, 0.5, 1\r\n\t], inf),\r\n\t\\midinote, Pseq([\r\n\t\tPn([60, 63, 65], 10),\r\n\t\tPn([59, 63, 65], 8),\r\n\t\tPn([58, 63, 65], 10),\r\n\t\tPn([53, 57, 60], 8),\r\n\r\n\t\tPn([56, 60, 65], 10),\r\n\t\tPn([55, 59, 67], 8),\r\n\t\tPn([53, 60, 63], 10),\r\n\t\tPn([55, 55, 59], 8),\r\n\t] + 12 + ~kc, 1),\r\n\t\\ctranspose, 0,\r\n\t\\modindex, Pseq([1, 5, 7, 10], inf),\r\n\t\\amp, 0.09,\r\n\t\\att, 0.01,\r\n\t\\rel, 0.5,\r\n\t\\legato, 0.5,\r\n\t\\strum, 0.01\r\n);\r\n\r\n\r\n~mari = Pbind(\r\n    \\instrument, \"marimba\",\r\n\t\\dur, Pseq([\r\n\t\t0.25\r\n\t], inf),\r\n\t\\midinote, Pseq([\r\n\t\t60, 63, 65, 67,\r\n\t\t60, 63, 65, 67,\r\n\t\t60, 63, 65, 67,\r\n\t\t60, 63, 65, 67,\r\n\r\n\t\t59, 63, 65, 67,\r\n\t\t59, 63, 65, 67,\r\n\t\t59, 63, 65, 67,\r\n\t\t59, 63, 65, 67,\r\n\r\n\t\t58,\t63, 65, 67,\r\n\t\t58,\t63, 65, 67,\r\n\t\t58,\t63, 65, 67,\r\n\t\t58,\t63, 65, 67,\r\n\r\n\t\t53, 57, 60, 63,\r\n\t\t53, 57, 60, 63,\r\n\t\t53, 57, 60, 63,\r\n\t\t53, 57, 60, 63,\r\n\r\n\t\t56, 60, 65, 67,\r\n\t\t56, 60, 65, 67,\r\n\t\t56, 60, 65, 67,\r\n\t\t56, 60, 65, 67,\r\n\r\n\t\t55, 59, 67, 69,\r\n\t\t55, 59, 67, 69,\r\n\t\t55, 59, 67, 69,\r\n\t\t55, 59, 67, 69,\r\n\r\n\t\t53, 60, 63, 67,\r\n\t\t53, 60, 63, 67,\r\n\t\t53, 60, 63, 67,\r\n\t\t53, 60, 63, 67,\r\n\r\n\t\t55, 55, 59, 67,\r\n\t\t55, 55, 59, 67,\r\n\t\t55, 55, 59, 67,\r\n\t\t55, 55, 59, 67\r\n\t], 1) + ~kc,\r\n\t\\ctranspose, 0,\r\n\t\\amp, 4.5,\r\n);\r\n\r\n~lead = Pbind(\r\n    \\instrument, \"lead\",\r\n\t\\dur, Pseq([\r\n\t\tPn(1, 7),\r\n\t\tPn(0.5, 2),\r\n\t\tPn(1, 4),\r\n\t\tPn(0.25, 3),\r\n\t\t0.2, 0.8,\r\n\t\t1.25, 1,\r\n\t], 2),\r\n\t\\midinote, Pseq([\r\n\t\t48, 60, 63,\r\n\t\t60, 65, 63,\r\n\t\t60, 60, 63,\r\n\r\n\t\t48, 53, 55,\r\n\t\t58,\r\n\t\t63, 65, 67,\r\n\t\t64, 65,\r\n\t\t55, 53\r\n\r\n\t] + 24 + ~kc, inf),\r\n\t\\ctranspose, 0,\r\n\t\\modindex, 0,\r\n\t\\amp, 0.1,\r\n\t\\att, 0.1,\r\n\t\\rel, 0.65,\r\n\t\\pos, 0\r\n);\r\n\r\n~bass = Pbind(\r\n\t\\instrument, \"sine\",\r\n\t\\dur, Pseq([\r\n\t\t1\r\n\t], inf),\r\n\t\\midinote, Pseq([\r\n\t\t48, 48, 48, 48,\r\n\t\t47, 47, 47, 47,\r\n\t\t46, 46, 46, 46,\r\n\t\t41, 41, 41, 41\r\n\t] -12 + ~kc, 2),\r\n\t\\ctranspose, 0,\r\n\t\\modindex, Pseq([1, 5, 7, 10], inf),\r\n\t\\amp, 0.2,\r\n\t\\att, 0.1,\r\n\t\\rel, 0.6,\r\n\t\\pos, 0\r\n);\r\n\r\n~kick = Pbind(\r\n\t\\instrument, \"sampler\",\r\n\t\\buffer, k,\r\n\t\\dur, Pseq([1], 32),\r\n\t\\amp, 2.2\r\n);\r\n\r\n~hihat = Pbind(\r\n\t\\instrument, \\hihat,\r\n\t\\dur, Pseq([\r\n\t\tPn(0.25, 12),\r\n\t\tPn(0.125, 8),\r\n\t\tPn(0.25, 12),\r\n\t\tPn(0.11111111111111111111111111111111, 9)\r\n\t], 4),\r\n\t\\amp, 0.08,\r\n\t\\ffreq, 8000\r\n);\r\n\r\n~clap = Pbind(\r\n\t\\instrument, \"sampler\",\r\n\t\\buffer, x,\r\n\t\\dur, 1,\r\n\t\\release, 3,\r\n\t\\amp, Pseq([0, 0.8], 16)\r\n);\r\n\r\n~letra = Pbind(\r\n\t\\instrument, \"stereosampler\",\r\n\t\\buffer, c,\r\n\t\\dur, 1,\r\n\t\\release, 1999,\r\n\t\\amp, Pn(0.55,1)\r\n);\r\n\r\n\r\n\r\n\r\n//////////////////////////////////////////////////////////////\r\n\r\n\r\nt = TempoClock.new(100/60);\r\n\r\nPspawner({ arg maestro;\r\n\r\n\tmaestro.seq(~chordsMinor);\r\n\tmaestro.seq(Ppar([~chordsMinor, ~bass, ~letra]));\r\n\tmaestro.seq(Ppar([~chordsMinor, ~bass, ~kick, ~clap]));\r\n\tmaestro.wait(4);\r\n\tmaestro.seq(Ppar([~chordsAlt, ~bass, ~kick, ~clap, ~hihat, ~mari]));\r\n\tmaestro.seq(Ppar([~chordsAlt, ~bass, ~kick, ~clap, ~hihat, ~mari, ~chordsMinor]));\r\n\tmaestro.seq(Ppar([~chordsMinor, ~bass, ~kick, ~clap, ~lead]));\r\n\tmaestro.seq(Ppar([~chordsMinor, ~bass, ~kick, ~clap, ~lead]));\r\n\tmaestro.wait(4);\r\n\tmaestro.seq(Ppar([~chordsAlt, ~bass, ~kick, ~clap, ~hihat, ~mari]));\r\n\tmaestro.seq(Ppar([~chordsAlt, ~bass, ~kick, ~clap, ~hihat, ~mari, ~chordsMinor]));\r\n\tmaestro.seq(Ppar([~chordsMinor, ~bass, ~kick, ~clap]));\r\n\tmaestro.seq(Ppar([~chordsMinor, ~bass, ~kick, ~clap]));\r\n\r\n    maestro.suspendAll;\r\n}).play(t);\r\n)",
   "id" : "1-55R",
   "is_private" : null,
   "author" : "melliott",
   "name" : "Hotel Cheree - MUSC 115 FINAL",
   "description" : "SoundCloud: https://soundcloud.com/mileselliott/hotel-cheree-musc-115/s-iUrOR\r\nSamples: https://drive.google.com/drive/folders/0B_RfpesVhgStR3RrRzhBaWh0bGs?usp=sharing",
   "ancestor_list" : []
}
