«Unloop Antidote [Disquiet0048-libertederive]» by Schemawound
on 07 Dec'12 06:32 inUnloop Antidote [disquiet0048-libertederive] By Schemawound
All code by Jonathan Siemasko All sound sampled from the releases mentioned below
NOTE: ~media.disquiet just points to the directory containing the files.
DESCRIPTION: This Disquiet Junto project was done as a celebration of the efforts of the Three Legs Duck netlabel, and to support its employment of licenses that allow for derivative works. This track is comprised of three pieces of music, all originally released on Three Legs Duck: “Unloop Hullaballoo” off The Fleet’s Lit Up by Alex Charles and Richard Sanderson, “Etude” off Emosphere by !Kung, and “04:54AM” off Four AM at Dusk Jérôme Poirier. More on the Three Legs Duck netlabel, and the original versions of these tracks, at http://threelegsduck.weebly.com/.
More on this 48th Disquiet Junto project at: http://disquiet.com/2012/11/29/disquiet0048-libertederive/
More details on the Disquiet Junto at: http://soundcloud.com/groups/disquiet-junto/info/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153
/* Unloop Antidote [disquiet0048-libertederive] By Schemawound All code by Jonathan Siemasko All sound sampled from the releases mentioned below NOTE: ~media.disquiet just points to the directory containing the files. DESCRIPTION: This Disquiet Junto project was done as a celebration of the efforts of the Three Legs Duck netlabel, and to support its employment of licenses that allow for derivative works. This track is comprised of three pieces of music, all originally released on Three Legs Duck: “Unloop Hullaballoo” off The Fleet’s Lit Up by Alex Charles and Richard Sanderson, “Etude” off Emosphere by !Kung, and “04:54AM” off Four AM at Dusk Jérôme Poirier. More on the Three Legs Duck netlabel, and the original versions of these tracks, at http://threelegsduck.weebly.com/. More on this 48th Disquiet Junto project at: http://disquiet.com/2012/11/29/disquiet0048-libertederive/ More details on the Disquiet Junto at: http://soundcloud.com/groups/disquiet-junto/info/ */ ( fork{ //Source Files ~etude = ~media.disquiet ++ "Emosphere - 03 Etude.wav"; ~four54 = ~media.disquiet ++ "Four AM at Dusk - 02 04-54AM.wav"; ~unloop = ~media.disquiet ++ "The Fleets Lit Up - 04 Unloop Hullaballoo.wav"; //Cut Samples Buffer.freeAll; ~buffers = (); ~buffers.squeak = Buffer.read(s, ~etude, 0, 29000); ~buffers.hornSnip = Buffer.read(s, ~etude, 29000, 6000); ~buffers.clickClack = Buffer.read(s, ~etude, 5000, 15000); ~buffers.thumpThump = Buffer.read(s, ~etude, 50000, 15000); ~buffers.paperNoise = Buffer.read(s, ~etude, 70000, 15000); ~buffers.steamlet = Buffer.read(s, ~etude, 83000, 15000); ~buffers.steamlet2 = Buffer.read(s, ~etude, 105000, 15000); ~buffers.steamSynth = Buffer.read(s, ~unloop, 105000, 300000); ~buffers.steamSynth2 = Buffer.read(s, ~unloop, 555000, 300000); ~buffers.stab = Buffer.read(s, ~unloop, 4005000, 30000); ~buffers.clickSnare = Buffer.read(s, ~unloop, 9025500, 6000); ~buffers.lowPluck = Buffer.read(s, ~four54, 1222000, 1400); //SynthDef SynthDef(\bufPlay2, {|out = 0, bufnum, rateScale = 1, amp = 1| var buf = PlayBuf.ar(2, bufnum, BufRateScale.kr(bufnum) * rateScale, doneAction: 2); Out.ar(out, buf * amp); }).add; SynthDef(\bufADSR2, {|out = 0, gate = 1, bufnum, rateScale = 1, amp = 1, attack = 0.01, decay = 0.3, release = 1| var buf = PlayBuf.ar(2, bufnum, BufRateScale.kr(bufnum) * rateScale); var env = EnvGen.ar(Env.adsr(attack, decay, 1, release), gate, doneAction: 2); Out.ar(out, buf * env * amp); }).add; SynthDef(\snareFX, {|out = 0, in, amp = 1| var inSig = In.ar(in, 2); inSig = inSig + (CombC.ar(inSig, 10, 0.5, 0.5) * 0.8); inSig = inSig + (GVerb.ar(inSig, 8, 2) * 0.2); Out.ar(out, inSig * amp); }).add; SynthDef(\hatFX, {|out = 0, in, amp = 1| var inSig = In.ar(in, 2); inSig = inSig + (CombC.ar(inSig, 10, 0.5, 0.5) * 0.8); inSig = GVerb.ar(inSig); Out.ar(out, inSig * amp); }).add; SynthDef(\squeakFX, {|out = 0, in, amp = 1| var inSig = In.ar(in, 2); inSig = inSig + (CombC.ar(inSig, 10, 0.3, 3) * 0.8); inSig = GVerb.ar(inSig); Out.ar(out, inSig * amp); }).add; SynthDef(\kickFX, {|out = 0, in, amp = 1| var inSig = In.ar(in, 2); inSig = BLowPass4.ar(inSig, 300); Out.ar(out, inSig * amp); }).add; SynthDef(\twinkleFilterFX, {|out = 0, in, amp = 1| var inSig = In.ar(in, 2); inSig = RHPF.ar(inSig, 1000); Out.ar(out, inSig * amp); }).add; //Sync s.sync; //Display ~buffers.do{|buf| buf.postln}; //FX ~snareBus = Bus.audio(Server.default, 2); ~snareFX = Synth(\snareFX, [\out: [0,1], \in: ~snareBus, amp: 0.3]); ~hatBus = Bus.audio(Server.default, 2); ~hatFX = Synth(\hatFX, [\out: [0,1], \in: ~hatBus, amp: 0.5]); ~squeakBus = Bus.audio(Server.default, 2); ~squeakFX = Synth(\squeakFX, [\out: [0,1], \in: ~squeakBus, amp: 0.5]); ~kickBus = Bus.audio(Server.default, 2); ~kickFX = Synth(\kickFX, [\out: [0,1], \in: ~kickBus, amp: 0.5]); ~twinkleFilterBus = Bus.audio(Server.default, 2); ~twinkleFilterFX = Synth(\twinkleFilterFX, [\out: ~hatBus, \in: ~twinkleFilterBus, amp: 0.5]); //Sequence (8 beat bars) ~songClock = TempoClock(1, 0); ~pat = (); ~pat.intro = Pbind(*[instrument: \bufADSR2, bufnum: ~buffers.steamSynth2, dur: 8, amp: Pn(1, 1), rateScale: 1, out: ~snareBus]); ~pat.thump = Ppar([ Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.thumpThump, dur: 1, amp: Pseq([Pseq([1.5,Rest], 3), Pn(1,2)], 1), rateScale: 0.5]), Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.thumpThump, dur: 1, amp: Pseq([1,Rest], 4), rateScale: 0.2]), ]); ~pat.clickSnare = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.clickSnare, dur: 1, amp: Pseq([Rest, 0.9], 4), rateScale: 1, out: ~snareBus]); ~pat.squeakHalf = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.squeak, dur: 1, amp: Pseq([Pn(Rest,4), Pn(1,4)],1), rateScale: 0.5]); ~pat.squeak = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.squeak, dur: 1, amp: Pn(0.9,8), rateScale: 0.5]); ~pat.squeakInfinity = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.squeak, dur: 1, amp: Pn(0.9,8), rateScale: 0.5, out: ~squeakBus]); ~pat.squeakInfinity2 = Pbind(*[instrument: \bufADSR2, bufnum: ~buffers.squeak, dur: 1, sustain: 5, amp: Pn(0.5,8), rateScale: 0.05, out: ~squeakBus]); ~pat.clickClack = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.clickClack, dur: 1/2, amp: Pseq([Rest, 0.5], 8), rateScale: Pseq([Pn(1, 8), Pn(0.8, 8)])]); ~pat.paperNoise = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.paperNoise, dur: 1/2, amp: Pseq([0.9], 16), rateScale: 0.7]); ~pat.steamlet2Half = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.steamlet2, dur: 1/4, amp: Pseq([Pn(Rest, 8), Pn(1, 4), Pn(Rest, 4)], 2), rateScale: 0.5, amp: 0.6]); ~pat.steamSynth = Pbind(*[instrument: \bufADSR2, bufnum: ~buffers.steamSynth, dur: Pseq([Pn(1,7),Pn(1/4,4)]), sustain: Pkey(\dur), amp: 3.3, rateScale: Pseq([Pn(1,4), Pn(1.5,7)]), amp: 0.6, decay: 0.01]); ~pat.steamSynth2 = Pbind(*[instrument: \bufADSR2, bufnum: ~buffers.steamSynth2, dur: Pseq([Pn(1,7),Pn(1/4,4)]), sustain: Pkey(\dur), amp: 3.3, rateScale: Pseq([Pn(1,4), Pn(1.5,7)]), amp: 0.6, decay: 0.01]); ~pat.stab = Pbind(*[instrument: \bufADSR2, bufnum: ~buffers.stab, dur: 1/4, sustain: Pkey(\dur), amp: 0.1, rateScale: Pseq([0.5, Rest, Rest, 0.7], 4), amp: 0.6, decay: 0.01]); ~pat.hat = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.steamlet, dur: 1/8, amp: Pn(0.15, 64), rateScale: Pseq([10, 20, 30, 20], inf), out: ~hatBus]); ~pat.hatDoubleTime = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.steamlet, dur: 1/16, amp: Pn(0.15, 128), rateScale: Pseq([10, 10, 10, 10], inf), out: ~hatBus]); ~pat.pluck = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.lowPluck, dur: 1/8, amp: Pn(0.3, 64), rateScale: Pseq([10, 20, 30, 20], inf), out: ~hatBus]); ~pat.kickish = Pbind(*[instrument: \bufPlay2, bufnum: ~buffers.lowPluck, dur: 2, amp: Pn(2, 4), rateScale: 0.18, release: 0.25, out: ~kickBus]); ~pat.twinkleFilter = Pbind(*[instrument: \bufADSR2, bufnum: ~buffers.steamSynth, dur: 1/16, amp: Pseq([0.2, Rest], 32), rateScale: Pseq([4,5,6,7],inf), release: 0.1, out: ~twinkleFilterBus]); Pseq([ ~pat.intro, Pn(Ppar([~pat.thump, ~pat.paperNoise, ~pat.squeakHalf, ~pat.clickSnare, ~pat.kickish]), 2), Pn(Ppar([~pat.thump, ~pat.paperNoise, ~pat.clickClack, ~pat.clickSnare, ~pat.steamlet2Half, ~pat.steamSynth, ~pat.hat, ~pat.kickish]), 2), Pn(Ppar([~pat.thump, ~pat.squeakHalf, ~pat.paperNoise, ~pat.clickSnare, ~pat.clickClack, ~pat.steamlet2Half, ~pat.steamSynth, ~pat.hat, ~pat.kickish]), 2), Pn(Ppar([~pat.thump, ~pat.paperNoise, ~pat.clickClack, ~pat.clickSnare, ~pat.steamlet2Half, ~pat.steamSynth2, ~pat.hat, ~pat.kickish, ~pat.twinkleFilter]), 2), Pn(Ppar([~pat.thump, ~pat.squeakHalf, ~pat.paperNoise, ~pat.clickSnare, ~pat.clickClack, ~pat.steamlet2Half, ~pat.steamSynth2, ~pat.hat, ~pat.kickish, ~pat.twinkleFilter]), 2), Pn(Ppar([~pat.thump, ~pat.clickSnare, ~pat.steamSynth, ~pat.hat, ~pat.kickish, ~pat.pluck]), 2), Pn(Ppar([~pat.thump, ~pat.paperNoise, ~pat.clickSnare, ~pat.steamSynth, ~pat.kickish, ~pat.hatDoubleTime, ~pat.pluck]), 2), Pn(Ppar([~pat.thump, ~pat.paperNoise, ~pat.clickClack, ~pat.clickSnare, ~pat.steamlet2Half, ~pat.steamSynth, ~pat.hat, ~pat.kickish, ~pat.pluck]), 2), Pn(Ppar([~pat.thump, ~pat.squeakHalf, ~pat.paperNoise, ~pat.clickSnare, ~pat.clickClack, ~pat.steamlet2Half, ~pat.steamSynth, ~pat.hat, ~pat.kickish, ~pat.pluck]), 2), Pn(Ppar([~pat.thump, ~pat.paperNoise, ~pat.clickClack, ~pat.clickSnare, ~pat.steamlet2Half, ~pat.steamSynth2, ~pat.hat, ~pat.kickish, ~pat.pluck, ~pat.twinkleFilter]), 2), Pn(Ppar([~pat.thump, ~pat.squeakHalf, ~pat.paperNoise, ~pat.clickSnare, ~pat.clickClack, ~pat.steamlet2Half, ~pat.steamSynth2, ~pat.hat, ~pat.kickish, ~pat.pluck, ~pat.twinkleFilter]), 2), Pn(Ppar([~pat.thump, ~pat.squeak]), 2), ~pat.squeakInfinity, Ppar([~pat.squeakInfinity2, ~pat.intro]), ~pat.squeakInfinity2 ]).play(~songClock); }; )
Excellent.