SynthDef(\phpHatSnare, { arg gate = 1, amp = 0.1, pan = 0, outBus = 0, rls = 1, rls1 = 0.01, lpa = 1, hpa = 1, bpa = 1; var snd; snd = WhiteNoise.ar; snd = snd + (Pulse.ar(freq: Rand(5000!10, 15000)).sum * 0.2); snd = ( LPF.ar(snd, Rand(1500,3000)) * lpa * 4 * LFSaw.ar(LFNoise1.ar(1/3).range(15,30)).range(LFNoise1.ar(1).range(0.5,0.9), 1) * EnvGen.ar(Env.perc(0, rls), gate) ) + ( HPF.ar(snd, Rand(5000,9000)) * hpa * LFSaw.ar(LFNoise1.ar(1/3).range(15,30)).range(LFNoise1.ar(1).range(0.5,0.9), 1) * EnvGen.ar(Env.perc(0, rls), gate) ) + ( BPF.ar(snd, Rand(1000,5000), 0.2) * bpa * 4 * LFSaw.ar(LFNoise1.ar(1/3).range(15,30)).range(LFNoise1.ar(1).range(0.5,0.9), 1) * EnvGen.ar(Env.perc(0, Rand(0.1, rls)), gate) ) ; snd = HPF.ar(snd, 200); snd = LPF.ar(snd, 13000); snd = snd * EnvGen.kr(Env.cutoff(rls), gate, doneAction:Done.freeSelf); snd = Pan2.ar(snd, pan); snd = snd * amp; OffsetOut.ar(outBus, snd); } ).add; SynthDef(\phpKick, { arg //Standard Values out = 0, pan = 2, amp = 0.4, curve = -4, //tone1 arguments t1freq = 400, t1harmonic = 2, t1glide = 0.01, t1att = 0.0005, t1rel = 0.01, t1curve = -4, t1del = 0, t1amp = 1, //tone2 arguments t2freq = 50, t2harmonic = 3.44, t2glide = 0.01, t2att = 0.0001, t2rel = 0.3, t2curve = \lin, t2del = 0.005, t2amp = 1, //hit1 arguments h1freq = 100, h1harmonic = 8, h1glide = 0.01, h1rq = 0.6, h1att = 0.001, h1rel = 0.02, h1curve = -4, h1del = 0.001, h1amp = 1, //hit2 arguments h2freq = 1320, h2harmonic = 1, h2glide = 0, h2att = 0.003, h2rel = 0.03, h2curve = -4, h2del = 0, h2amp = 0.5, //click arguments cfreq = 6100, crq = 1, camp = 1.41; var snd, noise, tone1, tone2, hit1, hit2, click; noise = Hasher.ar(Sweep.ar); //deterministic white noise tone1 = SinOsc.ar( freq: XLine.ar(start: t1freq * t1harmonic, end: t1freq, dur: t1glide), mul: Env.perc(attackTime: t1att, releaseTime: t1rel, level: t1amp, curve: t1curve).delay(t1del).ar); tone2 = SinOsc.ar( freq: XLine.ar(start: t2freq * t2harmonic, end: t2freq, dur: t2glide), mul: Env.perc(attackTime: t2att, releaseTime: t2rel, level: t2amp, curve: t2curve).delay(t2del).ar); hit1 = BPF.ar( in: noise, freq: XLine.ar(start: h1freq * h1harmonic, end: h1freq, dur: h1glide), rq: h1rq, mul: Env.perc(attackTime: h1att, releaseTime: h1rel, level: h1amp, curve: h1curve).delay(h1del).ar); hit2 = HPF.ar( in: noise, freq: XLine.ar(start: h2freq * h2harmonic, end: h2freq, dur: h2glide), mul: Env.perc(attackTime: h2att, releaseTime: h2rel, level: h2amp, curve: h2curve).delay(h2del).ar); click = BPF.ar( in: Impulse.ar(0) * SampleRate.ir / 48000, freq: cfreq, rq: crq, mul: camp); snd = Mix.ar(tone1 + tone2 + hit1 + hit2 + click).tanh * amp; DetectSilence.ar(in: snd, doneAction: 2); OffsetOut.ar(out, Pan2.ar(snd, pan)); }, metadata: ( credit: "originals by Nathan Ho aka snapizz", category: \drums, tags: [\bass] ) ).add; /////////////////////////////////////////////////////////////////////////////////////////////////////// ( Pbindef(\phpSnareP, *[ instrument: 'phpHatSnare', //dur: Pseq([3,3,Prand([2,3],inf)] * (1/4), inf), dur: Pseq([ Pseq([Rest(2),3,3] * (1/4),3), Pseq([3/8,3/8,2/8]),2],inf), rls: 0.3, amp:0.3, bpa: 0, lpa: 2, hpa: 3, legato:0.1, outBus: ~satBus ]); Pbindef(\phpHiHatP, *[ instrument: 'phpHatSnare', dur: Pseq([ Pn(1/2,16), Prand([Pn(1/2,2),Pn(1/4,8)], 8), Pseq([Prand([1,2]),2,Prand([1,3,Pn(1/2,2)])] * 0.25, 12), Pseq([ Pn(1/4,16), Pn(1/8,12)], 16) ],inf), rls: Pwrand([0.02, 0.2], [0.9,0.1], inf), bpa: 0, lpa: 0, hpa: 2, amp: Prand([0.5,0.7],inf), legato:0.1, pan: Pwhite(-0.2,0.2), outBus: ~satBus, // outBus: 0, ]); Pbindef( \phpKickP, \instrument, \phpKick, \dur, Prand([ Pseq([1,2,1,1/4]), Pseq([1,2,2,1/4]), Pseq([Pn(1/4,2),3/4,3/4,2/4]), Pseq([Pn(1/4,1),3/4,3/4,2/4]), Pseq([3/4,3/4,2/4]), Pseq([3/4,3/4,2/4,3/4]), Pseq([3/8,3/8,2/8]), ], inf), //\dur, 1, //\dur, Pseq([3/4,3/4,2/4],inf)*0.5, \t1freq, 200, //Pseq([400, 161, 800], 3), \t1curve, \lin, //Pwhite(-4,1), \t1curve, Pwhite(-4,1), \t2curve, \lin, //Pwhite(-4,1), \t2curve, Pwhite(-4,1), \t2freq, Pwhite(49,53,inf), \t2del, 0.001, \t2glide, Pwhite(0.03,0.1, inf), \amp, 1.5, \out, ~satBus ); Pbindef(\lcmnoip, \instrument, \lcmnoise, \dur, Pseq([ Pseq([20 Prand([Pseq([0.01,0.01]),0.02]), Pn(0.05,19), 9.03 ], 20), // 20 x 10 30]), \dur, 8, \amp, 0.7, \amp1, 0, //Pseq([1,0.1],inf), \amp2, 0.7, //Pseq([0.6,1],inf), \legato, 1, \out, 0, ) ) /////////////////////////////////////////////////////////////////////////////////// ( // fx on the bus !! ~saturator.free; ~saturator = Synth(\saturator, [\inBus, ~satBus]); ~saturator.set(\amplag, 1, \amp, 0.7) ) TempoClock.tempo = 60/60; Pbindef(\phpHiHatP).play(quant:4); Pbindef(\phpKickP).play(quant:4); Pbindef(\phpSnareP).play(quant:4); Pbindef(\lcmnoip).play(quant:4); // fx controls ~saturator.set(\amplag, 2, \amp, 1.5) ~saturator.set(\amplag, 5, \amp, 0.7) ~saturator.set(\amplag, 30, \amp, 0) // random ~saturator.set(\revtime, rrand(0.01,5), \earlyreflevel, rrand(0.01,1)) ~saturator.set(\taillevel, 1) ~saturator.set(\taillevel, 0) ~saturator.set(\earlyreflevel, 0.5) ~saturator.set(\earlyreflevel, 0.1) ~saturator.set(\earlyreflevel, 0.3) ~saturator.set(\earlyreflevel, 0) ~saturator.set(\revtime, 1) ~saturator.set(\revtime, 3) ~saturator.set(\revtime, 0.1) ~saturator.set(\revtime, 0.01) ( Pbindef(\phpHiHatP).stop; Pbindef(\phpKickP).stop; Pbindef(\phpSnareP).stop; Pbindef(\lcmnoip).stop; ) Pdef(\phpHiHatP).clear; Pdef(\phpKickP).clear; Pdef(\phpSnareP).clear; Pdef(\lcmnoip).clear /////////////////////////////////////////////////////////////////////////////////////// SynthDef(\harpsi, { arg outbus = 0, freq = 440, ffreq = 2, amp = 1, gate = 1, release = 1; var out; freq = freq * rrand(1, 1.01); out = EnvGen.ar(Env.adsr(releaseTime:release), gate, doneAction: Done.freeSelf) * amp * Pulse.ar([freq,freq*1.006]/1, 0.25, 0.75); out = RLPF.ar(out, freq * (ffreq / 4) + 1 ); Out.ar(outbus, out); }).add; ( // then run this - sequence TempoClock.default.tempo = 1.4; ~scale = Scale.new(#[0,2,4,5,7,8,10],tuning: \pythagorean, name: "mixolydianb6"); p = Pbind( \instrument, \harpsi, \root, -12, \scale, ~scale, // \ffreq, Pseq(((1..2) ++ (3..1)),inf), \ffreq, Pfunc { ~filterFreq }, //\ffreq, 30, \degree, Pseq([ Pseries({ rrand(0, 7) }, { ([1,2]).choose }, { rrand(4, 8) }), Pseries({ rrand(0, 7) }, {([1,2]).choose}, { rrand(4, 8) }), Pseries({ rrand(7, 14) }, 0-{([1,2]).choose}, { rrand(4, 8) }) ], inf), \release, Prand([5,6,7,8],inf), \dur, Prand((1..8)/4, inf), // \amp, Prand(((1..8)/8)+1, inf), \amp, 0.6, \sendosc, Pfunc( {( ~imgID = (~imgID + 1) % 9; ~osc.sendMsg("/ctlin", 74, ~imgID.asInt); ~imgID.postln; ) }, {"reseted".postln}), ).play; ) ~osc.sendMsg("/ctlin", 85, 7); SynthDef('mhh1', { arg gate = 1, amp = 0.1, pan = 0, outBus = 0, rls = 1, rls1 = 0.01, lpa = 1, hpa = 1, bpa = 1; var snd; snd = WhiteNoise.ar; snd = snd + (Pulse.ar(freq: Rand(5000!10, 15000)).sum * 0.2); snd = ( LPF.ar(snd, Rand(500,2000)) * lpa * 4 * LFSaw.ar(LFNoise1.ar(1/3).range(15,30)).range(LFNoise1.ar(1).range(0.2,0.9), 1) * EnvGen.ar(Env.perc(0, Rand(0.1, rls)), gate) ) + ( HPF.ar(snd, Rand(2000,15000)) * hpa * LFSaw.ar(LFNoise1.ar(1/3).range(15,30)).range(LFNoise1.ar(1).range(0.2,0.9), 1) * EnvGen.ar(Env.perc(0, Rand(0.1, rls)), gate) ) + ( BPF.ar(snd, Rand(1000,5000), 0.2) * bpa * 4 * LFSaw.ar(LFNoise1.ar(1/3).range(15,30)).range(LFNoise1.ar(1).range(0.2,0.9), 1) * EnvGen.ar(Env.perc(0, Rand(0.1, rls)), gate) ) ; snd = HPF.ar(snd, 200); snd = LPF.ar(snd, 13000); snd = snd * EnvGen.kr(Env.cutoff(rls), gate, doneAction:Done.freeSelf); snd = Pan2.ar(snd, pan); snd = snd * amp; Out.ar(outBus, snd); } ).add; SynthDef(\kick, { arg gate = 1, out = 0, amp = 0.1, release = 0.9, freq=50, pan = 0, cutoff = 500, fxout=0, hpf=0; var snd, env, fenv; freq = freq * Rand(0.98, 1.02); fenv = EnvGen.ar(Env([freq*4,freq],0.08,'cub')); snd = SinOsc.ar(freq: [fenv,fenv*2], mul:[1,0.4] ).sum; snd = snd * LFPulse.ar(24).range(0.7,1).lag(0.02); snd = snd + WhiteNoise.ar(0.8); snd = snd + SinOsc.ar(freq: [freq*2,freq*4], mul:EnvGen.ar(Env.perc(0, 0.2)) * 0.5).sum; snd = snd + LFTri.ar(freq: freq*4, mul:EnvGen.ar(Env.perc(0, 0.5)) * 0.3); snd = RLPF.ar(snd, cutoff, 0.7); snd = HPF.ar(snd, hpf); snd = snd.softclip; snd = snd * EnvGen.ar(Env.adsr(0, 0.05, 0.4, release, curve:'sqr'), gate: gate, doneAction:Done.freeSelf); snd = snd * amp * 5; snd = Pan2.ar(snd, pan); Out.ar(fxout, snd); Out.ar(out, snd); } ).add; SynthDef.new(\sc808hh, { arg decay=0.42, amp=1, pan=0, out=0; var sig, sighi,siglow, sum, env, osc1, osc2, osc3, osc4, osc5, osc6; env = EnvGen.kr(Env.perc(0.00001, decay, 1, -30),doneAction:2); osc1 = LFPulse.ar(203.52); osc2 = LFPulse.ar(366.31); osc3 = LFPulse.ar(301.77); osc4 = LFPulse.ar(518.19); osc5 = LFPulse.ar(811.16); osc6 = LFPulse.ar(538.75); sighi = (osc1 + osc2 + osc3 + osc4 + osc5 + osc6); siglow = (osc1 + osc2 + osc3 + osc4 + osc5 + osc6); sighi = BPF.ar(sighi, 8900, 1); sighi = HPF.ar(sighi, 9000); siglow = BBandPass.ar(siglow, 8900, 0.8); siglow = BHiPass.ar(siglow, 9000, 0.3); sig = BPeakEQ.ar((siglow+sighi), 9700, 0.8, 0.7); sig = sig * env * amp; sig = Pan2.ar(sig, pan); Out.ar(out, sig); }).add; SynthDef('ringer', { arg outBus = 0, amp = 0.1, freq = 140, gate = 1, pan = 0; var snd; freq = freq * LFNoise1.kr(1/10).range(1,1.01); snd = WhiteNoise.ar; snd = snd + Pulse.ar( freq: [freq, freq * 0.5, freq * 2] * SinOsc.ar(1).range(0.99,1.01), mul: 0.01 ).sum; snd = Resonz.ar(snd, [ freq, freq * 1.5 * SinOsc.kr(4).range(0.99,1.02) , freq * 1.75 * SinOsc.kr(4).range(0.99,1.02) , freq * 0.75 * LFNoise1.kr(4).range(0.99,1.01), freq * 0.5 * LFNoise1.kr(4).range(0.99,1.01), freq * 2 * LFNoise1.kr(4).range(0.99,1.01) ], 0.001, [100,1,1,10,10,5]).sum * 0.5; snd = snd + LFTri.ar(freq/2*0.99, mul:0.03); snd = snd + Pulse.ar(freq/2*1.01, mul:0.005); snd = Limiter.ar(snd, 0.8); snd = snd * amp ; snd = snd * EnvGen.ar(Env.adsr(0.001, 0.2), gate, doneAction:2); Out.ar(outBus, snd); } ).add; SynthDef(\deciverbfx, { arg inBus, outBus = 0; var snd, input; input = In.ar(inBus,1); snd = Decimator.ar(input, LFNoise1.ar(1/5).range(500,10000)); snd = snd * LFPulse.ar(10).range(LFNoise1.kr(1/10).range(0.5,0.9),1) * LFNoise1.kr(1/10).range(0.2,0.5); snd = snd + input; snd = RLPF.ar(snd, LFNoise1.ar(0.1).exprange(1000,10000), rq:0.8); snd = GVerb.ar(snd, 100); Out.ar(outBus, snd); } ).add; // SynthDef(\revfx, // { // arg inBus, outBus = 0; // var snd, input; // input = In.ar(inBus,2); // snd = GVerb.ar(input.sum, 100); // Out.ar(outBus, snd); // } // ).add; SynthDef(\beep_sus_filt, { arg outBus = 0, freq=440, gate=1, amp=0.1, ffreq = 1000, fq = 0.5, pan=0; var snd; ffreq = EnvGen.ar(Env.adsr(0.001,0.05,0.5,0.1), gate, ffreq, ffreq/2); snd = Pulse.ar(freq) + Saw.ar(freq * Rand(0.99,1.01) * [2,4], mul:0.3) + LFTri.ar(freq); snd = RLPF.ar(snd, ffreq, fq); snd = snd * EnvGen.kr(Env.cutoff, gate, doneAction:Done.freeSelf); snd = snd * amp; snd = Splay.ar(snd, 1, 1, 0); Out.ar(outBus, snd); } ).add; SynthDef(\fxdly, { arg inBus, outBus = 0; var snd, input; input = In.ar(inBus,2); snd = input + CombN.ar( HPF.ar(input, 500), 1, [0.33,0.44], 5, 0.5 ); Out.ar(outBus, snd); } ).add; ( Pbindef(\kickP, *[ instrument: 'kick', //dur: Pseq([3/4,3/4,2/8,2/8],inf), //dur: Pseq([3/4,3/4,3/8,1/8],inf), //dur: Pseq([3/4,3/4,3/8,1/8],inf), //dur: Pseq([2/4,2/4,1/4,3/4],inf), dur: Prand([ Pseq([3/4,3/4,2/4],4), Pseq([3/4,3/4,2/8,2/8]), Pseq([3/4,3/4,3/8,1/8]), Pseq([2/4,2/4,1/4,3/4],2), Pseq([2/4,1/4,2/4,3/4],2) ],inf), //dur: Pseq([3/4,3/4,2/4],inf), degree:0, octave:[2,3], //amp: [1,0.3] * 0.12, amp: Pwhite([0.1,0.3],[0.3,0.1]) * 0.2, release: [0.6, 0.3], legato:Pwhite(0.01,0.1), cutoff: Pwhite(500,2000), outBus: ~limitBus, ]).play(quant:4); ) Pbindef(\kickP).stop // fadeout Pbindef(\kickP, *[ amp: Pwhite([0.1,0.3],[0.3,0.1]) * 0.2 * Pseq([ Pseg([1,0], 60,\lin), Pn(0)] ) ]) Pbindef(\kickP, *[ amp: Pwhite([0.1,0.3],[0.3,0.1]) * 0.2 * Pseq([ Pseg([0,1], 60,\lin), Pn(1)] ) ]).play Pbindef(\kickP, *[ cutoff: Pwhite(2000,6000) ]) //////////////////////////////////////////////////////////////////////////////////////////// ( Pbindef(\hhP, *[ instrument: 'mhh1', //dur: Pseq([Prand([1,2]),2,Prand([1,3,Pn(1/2,2)])] * 0.2, inf), dur: Prand([1/4,1/2,Pn(1/8,2), 1/8, Pn(1/3,3), Pn(1/6,3)],inf), //Pseq([Prand([1,2]),2,Prand([1,3,Pn(1/2,2)])] * 0.2, inf), dur: Prand([1/4,1/2,Pn(1/8,2), 1/8],inf), //Pseq([Prand([1,2]),2,Prand([1,3,Pn(1/2,2)])] * 0.2, inf), dur: Prand([1/4,1/2],inf), //Pseq([Prand([1,2]),2,Prand([1,3,Pn(1/2,2)])] * 0.2, inf), rls: Pwrand([0.5, 1], [0.9,0.1], inf), bpa: 0.6, lpa: 0.1, hpa: 1, legato:0.01, amp:0.4, pan: Pwhite(-0.2,0.2), outBus: ~subBus, ]).play(quant:4); ) Pbindef(\hhP).stop Pbindef(\snP).stop Pbindef(\hhP, *[ amp: 0.4 * Pseq([ Pseg([1,0], 60,\lin), Pn(0)] )]) //////////////////////////////////////////////////////////////////////////////////////// ( Pbindef(\hh808P, *[ instrument: 'sc808hh', dur: Pseq([Pn(1/2,16),Pn(1/4,64)],inf), ]).play(quant:4) ) ( Pbindef(\snP, *[ instrument: 'mhh1', dur: Pseq([Prand([4,6]),4,3] * 0.25, inf), rls: Pwrand([1, Pwhite(0.1,0.5)], [0.1,0.9], inf), bpa: 0, lpa: 2, hpa: 0, legato:0.1, amp:0.3, outBus: ~subBus, ]).play(quant:4); ) Pbindef(\snP).stop Pbindef(\snP, *[ amp: 0.4 * Pseq([ Pseg([1,0], 60,\lin), Pn(0)] )]) ( Pbindef(\bassP, *[ instrument: \beep_sus_filt, dur: Pseq([Pn(0.5, 112), Pn(0.4, 140)], inf), dur: 1/2, //Pseq([Pn(0.5, 112), Pn(0.4, 140)], inf), octave: Pseq([Pn([3,4],28), Pn([5,4],28), Pn([6,4],28)], inf), scale: Scale.minor, degree: Pseq([Pn(Pwrand([0,14],[0.95,0.05]),7),7],inf) * Pwhite(0.999,1.001) //+ Pdup(4,Pxrand([0,3,2],inf)) , outBus:~dlyBus, legato: Pwhite(0.4,0.7), fq: Pseg([0.9,0.6,0.9], 17, \lin, inf), amp:0, ffreq: Pseg([500,2000,500], 10, \exp, inf), pan:0 ]).play(quant:4); ) Pbindef(\bassP).play Pbindef(\bassP).stop // fade in Pbindef(\bassP, *[ amp: 0.15 * Pseq([ Pseg([0,1], 60,\lin), Pn(1)] )]) // fadeout Pbindef(\bassP, *[ amp: 0.15 * Pseq([ Pseg([1,0], 60,\lin), Pn(0)] )]) ( Pbindef(\beepP, *[ instrument: \beep_sus, dur: 1/4, dur: 1/4, legato: 0.01, scale: Scale.minor, octave: 5, degree: Pseq([[-7,0], Pxrand([2,4,6,7],5)], inf), detune: Pseg([0,1,3,1,0], 5, \cub, inf), mtranspose: Pseq([Pn(0, 6*3), Pn(2, 6*3), Pn(-2, 6*4)],inf), mtranspose: 0, sawamp: Pseg([0,1,0], 40, \lin, inf), outBus: ~fxBus2, amp:0 // !!! ]).play(quant:4); ) // fade in Pbindef(\beepP, *[ amp: 1 * Pseq([ Pseg([0,1], 60,\lin), Pn(1)] )]) //fadeout Pbindef(\beepP, *[ amp: 1 * Pseq([ Pseg([1,0], 60,\lin), Pn(0)] )]) Pbindef(\beepP, *[ amp: 0.3 * Pseq([ Pseg([0,1], 30,\lin), Pn(1)] )]) Pbindef(\beepP, *[ amp: 1 ]) Pbindef(\beepP, *[mtranspose: Pseq([Pn(0, 6*3), Pn(2, 6*3), Pn(-2, 6*4)],inf)]) Pbindef(\beepP, *[mtranspose: 0]) Pbindef(\beepP, *[ legato:0.01 ]) Pbindef(\beepP, *[ legato: Pseg([0.01,0.5,0.01], 10, \lin,inf) ]) Pbindef(\beepP, *[ octave: [5,6] ]) Pbindef(\beepP, *[ octave: [5] ]) Pbindef(\beepP).stop ( Pbindef(\hhP).stop; Pbindef(\snP).stop; Pbindef(\kickP).stop; Pbindef(\hh808P).stop; ) ( Pbindef(\hhP).play; Pbindef(\snP).play; Pbindef(\kickP).play; Pbindef(\hh808P).play; ) Pbindef(\ringP, *[ instrument: 'ringer', dur: 6, scale: Scale.minor, degree: Pseq([0,Prand([2,-2]), Prand([5,4])], inf), octave: [4,5,6], amp: [2,2,1] * 0.5, detune: Pxrand([0,1,2,3], inf), legato: 1, outBus: ~fxBus ]).play(quant:4); ) ( Pbindef(\ringP).stop; SynthDef(\disson, { arg outBus=0, gate = 1, amp=0.1, freq=26.midicps, detune=1.2, lpf=7000, rls=1, pan=0; var snd; snd = Pulse.ar([freq, freq * 4, freq * 2] * LFNoise1.kr(1!12).range(1,detune)); snd = RLPF.ar(snd, LFNoise1.kr(1/2!12).exprange(100,lpf.max(101)), LFNoise1.kr(1).exprange(0.1,0.5)); snd = snd.sum; snd = Limiter.ar(snd, 0.9); snd = Pan2.ar(snd, SinOsc.kr(1/6).range(-1,1)); //snd = snd * EnvGen.ar(Env) snd = snd * EnvGen.kr(Env.cutoff(rls), gate, doneAction:Done.freeSelf); snd = Balance2.ar(snd[0], snd[1], pan); snd = snd * amp; OffsetOut.ar(outBus, snd); // snd * -3.dbamp; }).add; ( Pbindef(\dissonP, *[ instrument: \disson, dur:Pxrand([1,1/2,2,1/2,1/2,1,2,Pn(1/4,2),2],inf) * 1/4, //dur:Pxrand([1/4,Pn(1/8,2), 1/2],inf), //dur:Pxrand([1/4,Pn(1/8,2), 1/2],inf), //dur: 1/2, //dur: 1/4, //Pxrand([1/4,Pn(1/8,2), 1/2],inf), //degree: Pseq([0,3,-2],inf), octave: Prand([2,3],inf), scale: Scale.minor, degree: Pseq([0,2,7,12],inf), //degree: 0, legato:Pwhite(0.1, 0.4), rls:0.01, amp: Pwhite(0.6,0.9)*0.9, detune:Pwhite(1,1.01), lpf:Pwhite(100,2000), pan: -0.2 ]) ) Pbindef(\dissonP).play(quant:4) Pbindef(\phpHiHatP).play(quant:4); Pbindef(\dissonP).clear SynthDef(\subsin, { arg outBus = 0, gate = 1, amp = 0.1, freq=50, rls=1; var snd; snd = SinOsc.ar(freq!2); snd = snd * EnvGen.kr(Env.cutoff(rls), gate, doneAction:Done.freeSelf); snd = snd * amp; Out.ar(outBus, snd); }).add; ( Pbindef(\subP, *[ instrument: \subsin, dur: 4, octave: [2,3], degree: -3, legato: 0.1, rls:2, amp:[0.8,0.2] ] ).play ) Pbindef(\subP).stop SynthDef(\bet, { |gate = 1, freq = 234, out = 0, pan = 0, amp = 0.1, cutoff = 4000 | var snd, env, fenv; freq = [freq, freq * 1.01] * Rand(0.995, 1.0); freq = freq * SinOsc.kr(5).range(0.99, 1.01); env = EnvGen.ar(Env.asr(0, 1, 3), gate, doneAction:2); fenv = EnvGen.ar(Env.adsr(0.05, 0.5, 0.4, 2), gate); snd = SinOsc.ar(freq); snd = snd + Pulse.ar(freq * 0.5, mul:5); snd = snd + LFTri.ar(freq * [1,2].choose * 1.01, mul:1); snd = LPF.ar(snd, cutoff * fenv + 100); snd = snd + Decimator.ar(snd, freq*30); snd = snd * env * amp; snd = Balance2.ar(snd[0], snd[1], pan, 0.7); snd = snd * 0.4; OffsetOut.ar(out, snd); }).add; SynthDef(\nhat, { |gate = 1, out = 0, amp = 0.1, rls = 0.2, pan = 0| var snd, env; env = EnvGen.ar(Env.asr(0, 1, rls, -10), gate:gate, doneAction: Done.freeSelf); snd = WhiteNoise.ar; snd = snd * env; snd = BPF.ar(snd, 9000); snd = snd * amp; snd = Pan2.ar(snd, pan); Out.ar(out, snd); }).add; SynthDef(\kick, { |gate = 1, out = 0, amp = 0.1, release = 0.9, freq=50, pan = 0, cutoff = 500, fxout=0, hpf=0 | var snd, env, fenv; fenv = EnvGen.ar(Env([freq*4,freq],0.08,'cub')); snd = SinOsc.ar(freq: [fenv,fenv*2], mul:[1,0.4] ).sum; snd = snd * LFPulse.ar(24).range(0.7,1).lag(0.02); snd = snd + WhiteNoise.ar(0.3); snd = snd + SinOsc.ar(freq: [freq*2,freq*4], mul:EnvGen.ar(Env.perc(0, 0.2)) * 0.5).sum; snd = snd + LFTri.ar(freq: freq*4, mul:EnvGen.ar(Env.perc(0, 0.5)) * 0.3); snd = RLPF.ar(snd, cutoff, 0.7); snd = HPF.ar(snd, hpf); snd = snd.softclip; snd = snd * EnvGen.ar(Env.adsr(0, 0.05, 0.4, release, curve:'sqr'), gate: gate, doneAction:Done.freeSelf); snd = snd * amp * 5; snd = Pan2.ar(snd, pan); //DetectSilence.ar(snd, doneAction:Done.freeSelf); Out.ar(fxout, snd); Out.ar(out, snd); }).add; // reverb on a reverb bus ~revFx = Synth(\revfx, [\inBus, ~revBus, \amp, 0.4, \wet, 0.5], addAction:\addAfter); // PATTERNS: //////////////////////////////////////// /// !!!!! t = TempoClock.default.tempo = 110/120; ( Pbindef(\kicko, *[ instrument: \kick, freq: Prand((1..9) * 0.1 + 1 + 50,inf), dur: Pseq([2/3,2/3,1/3,2/3,1/6,1/6,1/3],inf) + Prand([0,0,1/3,1/6,2/3],inf) * 3 * 1/4, sustain: 0.1, //hpf: Pseg([300,300,0,0,3000, 3000], [60, 60, 120, 30, 30]), hpf: 30, //Pseg([300,300,0,0,3000, 3000], [60, 60, 120, 30, 30]), //amp: Pseg([0, 0, 0.1, 0.1, 0.01, 0], [60, 60, 120, 20, 10], \sqr), amp: 0.2, release: Prand((1..9) * 0.1, inf), cutoff: Prand((1..2) * 500, inf), ]).play(quant:4); ) Pbindef(\kicko).stop Pbindef(\kicko).clear ( Pbindef(\nhatP, *[ instrument: \nhat, dur: Pwrand([1/3, Pn(1/6,2)], [0.9,0.1], inf) * 3/2, //amp: Pseg([0, 0, 0.1, 0.1, 0], [60, 60, 120, 30]), amp: 0.1, pan: Pwhite(-0.5,0.5), sustain: Prand([0.002, 0.01, 0.02],inf) ]).play(quant:4); ) Pbindef(\nhatP).stop Pbindef(\nhatP).clear ( Pbindef(\ichiP, *[ instrument: \bet, dur: Prand([ Pseq([1/3, 3/6, 1/3, 1/3, 1/6, 2/6],4), Pseq([3/6, 1/3, 1/3, 1/6, 2/6, 1/3],4), Pseq([1/3, 1/3, 1/6, 2/6, 1/3, 3/6],4), Pseq([1/3, 1/6, 2/6, 1/3, 3/6, 1/3],4), Pseq([1/6, 2/6, 1/3, 3/6, 1/3, 1/3],4), Pseq([2/6, 1/3, 3/6, 1/3, 1/3, 1/6],4) ],inf) * 3/4, note: Pseq([ 1, 13, 15, 20, 16, Rest(), // Dbm(add9) -1, 11, 15, 20, 16, Rest(), // EM7/B -3, 13, 15, 20, 16, Rest(), // Dbm(add9)/A -3, 12, 18, 23, 25, Rest(), // Gbsus4(+11)/A -6, 6, 9, 13, 20, Rest(), // Gbm(add9) -4, 8, 12, 18, 16, 20, // Abaug7 1, 13, 15, 20, 16, Rest(), // Dbm(add9) -1, 11, 15, 20, 16, Rest(), // EM7/B -3, 13, 15, 20, 16, Rest(), // Dbm(add9)/A -3, 12, 18, 23, 16, Rest(), // -4, 6, 11, 15, 16, Rest(), // EM9/Ab -4, 6, 13, 16, 25, 28, // Ab7sus4(-13( -6, 6, 9, 13, 20, Rest(), // Gbm(add9) -6, 8, 12, 18, 20, 16, // Abaug7 ], inf), octave: Pseq([ Pn([4,5],14*6*2),Pn([4,5,6],14*6*2), Pseq([ Prand([[5,4],[5,6],[4,5,6]]), Pn(Pwrand([5,6],[0.9,0.1]), 5) ], 14*2), Pseq([ Pn([4,5,6,7],14*6*4)])]), octave: 5, detune: 3, // Hz added to final freq legato: Pseq([4, Pn(Prand((2..5)*0.2),5)],inf) * 0.1, cutoff: Prand((1..4),inf) * Pseg([50, 500, 1000, 1000, 50, 10], [60, 60, 120, 30, 20], \cub), //amp: Pseg([0, 0.1, 0.1, 0.01, 0], [10, 120+180, 30, 10], \cub) * 0.6, amp: 0.1, pan: Prand((0..10)-5*0.1, inf), out: ~revBus, ]).play(quant:4) ) Pbindef(\ichiP, *[ octave: 5]) Pbindef(\ichiP, *[ octave: [4,5,6,7] ]) Pbindef(\ichiP, *[ octave: Prand([[5,4],[5,6],[4,5,6]], inf)]) Pbindef(\ichiP, *[ octave: Prand([[5,4,7],[4,5,6],[4,7,6]], inf)]) Pbindef(\ichiP, *[ amp: 0.1]) Pbindef(\ichiP, *[ cutoff: 3000]) Pbindef(\ichiP).stop Pbindef(\ichiP).clear SynthDef(\ping,{ arg freq = 100, gate = 1, amp = 0.1, out=0, fxBus=nil, bufnum; var snd, env; freq = [freq, freq*1.01]; //snd = SinOsc.ar(freq) + Pulse.ar(freq*0.99) + LFTri.ar(freq*1.01); snd = Osc.ar(bufnum, freq); snd = snd * Linen.kr(gate, 0.001, 1, 0.01, doneAction:Done.freeSelf); snd = LeakDC.ar(snd); snd = Limiter.ar(snd, 0.95); snd = snd * amp * 0.5 * 10; //Out.ar() Out.ar(out,snd); } ).add; SynthDef(\wab,{ arg freq = 100, gate = 1, amp = 0.1, out=0, fxBus=nil, bufnum; var snd, env; snd = Osc.ar(bufnum, freq); snd = snd * Linen.kr(gate, 0.001, 1, 0.1, doneAction:Done.freeSelf); snd = LeakDC.ar(snd); snd = BRF.ar(snd, LFNoise1.kr(2).exprange(100,1000), 0.1); snd = RLPF.ar(snd, LFNoise1.kr(2).exprange(50,1000), 0.2); snd = snd * 20; snd = Limiter.ar(snd, 0.95); snd = Splay.ar(snd); snd = snd * amp * 0.7 * 10 ; Out.ar(out,snd); } ).add; SynthDef(\sab,{ arg freq = 100, gate = 1, amp = 0.1, out=0, fxBus=nil, bufnum, sustain; var snd, env; freq = XLine.ar(freq,freq * 0.1, sustain); snd = Osc.ar(bufnum, freq); snd = snd * Linen.kr(gate, 0.001, 1, 0.01, doneAction:Done.freeSelf); snd = LeakDC.ar(snd); snd = snd + PinkNoise.ar(0.5); snd = HPF.ar(snd, 500); snd = snd * 20; snd = snd.softclip; snd = Limiter.ar(snd, 0.95); snd = Splay.ar(snd); snd = snd * amp * 0.15 * 10; Out.ar(out,snd); } ).add; SynthDef(\dlywrangler, { arg out=0, in, wet=0.1, wet2=0.5; var snd, dly2; snd = In.ar(in,2); dly2 = CombN.ar(HPF.ar(snd,300), 1, [0.5,0.77], 5, mul: LFNoise1.kr(0.1).range(0.4,0.1) * 2 * wet2); snd = CombN.ar(snd, 1, Lag.ar(LFNoise0.ar(1).range(0.01,0.1),0.1), 3, mul:wet) + snd; snd = Limiter.ar(snd, 0.8); snd = snd + dly2; Out.ar(out, snd); }).add; // create delaymangler comb // on ctrl+. you need to reeval this ~dw = Synth(\dlywrangler, [\out, 0, \in, ~dly, \wet2, 0.1, \wet, 0.02]); ~dw.set(\wet2, 0.9) ~dw.set(\wet, 0.5) SynthDef(\baz1, { arg outBus=0, gate=1, freq, amp, fff=5, res=1, delwet=0.3, wrap=1.2; var snd, env, fenv; fenv = EnvGen.ar(Env.adsr(), gate) + 1; env = EnvGen.ar(Env.cutoff, gate, doneAction:Done.freeSelf); snd = Pulse.ar([freq, freq*1.005], mul:1); snd = snd + LFTri.ar([freq * 0.995, freq] * 1, mul:4); snd = snd.clip2; snd = snd.wrap2(wrap); snd = MoogFF.ar(snd, freq * fenv * fff, res); snd = Limiter.ar(snd); snd = snd * amp * env; Out.ar(outBus, snd); }).add; Pbindef(\line1, \instrument, \baz1, \dur, 1/8, \degree, Pseq([0,2,5,7,Pwrand([12,13,14],[0.9,0.05,0.05]),2,5], inf), \mtranspose, Pstutter(160,Pseq([0,3,5],inf)), \legato, Pseg([1,5,1]/10, 15, \cubed, inf), \octave, [3,5], \scale, Scale.major(\just), \amp, Pseg([0.1,0.2,0.1], 23, \lin, inf), \fff, Pseg([1,1.5,1], 30, \cubed, inf), \res, Pseg([1,2,1], 8, \cubed, inf), \delwet, 1, \outBus, ~dlyBus2 ).play; 59.wait; Pbindef(\line1, \amp, 0) ; 1.wait; Pbindef(\line1, \amp, Pseg([0.1,0.2,0.1], 23, \lin, inf)); Pbindef(\bazpat, \instrument, \baz1, \dur, Pseq([1,1,2,4] / 8, inf), \degree, Pseq([0, 3, 2, 0, 7, 6], inf), \mtranspose, Pseq([ Pn(0, 4*20), Pn(3, 4*20) ],inf), \octave, [2,3], \scale, Scale.major(\just), \legato, Prand((1..10)/10, inf), \amp, Pseg([ [0, 0.6], [0.3,0.6], [0,0.6] ], 17, \lin, inf), \fff, Pseg([1,13,1], 15, \cubed, inf), \res, Pseq([1,2,3]/2,inf), \wrap, Pseg([2, 0.9, 2], 19, \exp, inf), \outBus, ~dlyBus1 ).play; 120.wait; Pbindef(\line1, \mtranspose, 0); //AKJ to pattern femalemalenonbinary wait(0.2); Pbindef(\akjDisChordp, *[ instrument: \akjDisChord, freq:300, dur: Pseq([260]), legato: 1.1, amp: 0.8, //out: ~mainOut, out: 0 ]).play; wait(60); Pbindef(\akjClickp, *[ instrument: \akjClick, dur: Pseq([ Pn(1/8, 7), Rest(1/8), // 1 Rest(1), // 1 Pn(1/4, 3), Rest(3/8), Pn(1/8, 1), Pn(1/4, 3), Rest(3/8), Pn(1/8, 1), Pn(1/4, 3), Rest(4/8), Pn(1/8, 7), Rest(1/8), Prand([ Rest(1), Pn(1/6,6) ]), Pn(1/8, 3), Rest(1/8), Prand([ Rest(1.25), Pn(1/4, 5) ]), Prand([ Pn(1/8, 3), Pn(1/16, 6) ]), Rest(1/8), ],inf), amp: 9/20, releaseTime: 0.3, freq:1, //out: ~mainOut, out: 0 ]).play; wait(60); Pbindef(\akjBazp, *[ instrument: \akjBaz, freq: 300, dur: 10, amp: 0.3, legato: 0.20, //out: ~mainOut out: 0 ]).play; wait(120); Pbindef(\akjClickp).stop; Pbindef(\akjBazp).stop; "--- softdarksaw pattern...".postln; Pbindef(\sawp0, \instrument, \softSaw, \dur, 10, \attackTime, 5, \releaseTime,5, \legato,1, \degree, Pseq([ [-2,3,11,20], [-2,5,7,21] ],inf), \octave, 3, \amp, [1,0.5,0.2,0.1] * 0.7, \out, 0 //\out, ~reverBus, //\gainBus, ~softSawAmpBus ).play; // --- lcmnoi ---------------------------------------------------------------------- "--- lcmnoi ...".postln; SynthDef(\lcmnoise, { arg gate=1, outBus, amp1=0, amp2=1, amp=0.1; var snd, revchain, env; snd = [ tanh(lcm(SinOsc.ar( LFNoise0.kr(LFNoise0.kr(1/10).exprange(0.1,1)).exprange(1,15000) ).range(-100,100).round(1),SinOsc.ar( LFNoise0.kr(LFNoise0.kr(1/10).exprange(0.1,1)).exprange(1,15000) ).range(-100,100).round(1))*0.0001), tanh(lcm(Saw.ar( LFNoise0.kr(LFNoise0.kr(1/10).exprange(0.1,1)).exprange(1,15000) ).range(-100,100).round(1),LFCub.ar( LFNoise0.kr(LFNoise0.kr(1/10).exprange(0.1,1)).exprange(1,15000) ).range(-100,100).round(1))*0.0001) ] ; snd = BHiPass.ar(snd, 180); snd = snd.softclip * 0.8; snd = Splay.ar(snd, spread:1); revchain = snd * EnvGen.ar(Env.perc(0, 0.1, Rand(10,10000), 4)); revchain = Greyhole.ar( in: revchain, delayTime: LFNoise1.ar(1).range(0.0001,0.2), damp: 0.5, size: LFNoise1.ar(0.1).exprange(0.0001,5), feedback: 0.95); revchain = LeakDC.ar(revchain); revchain = Limiter.ar(revchain) * LFNoise1.ar([1,1]).range(0,0.9); snd = snd * LFNoise0.ar([0.9,0.8]).range(0,2); snd = (snd * amp1) + (revchain * amp2); snd = snd.softclip * 0.8; env = Linen.kr(gate, 0, 1, 0, 2); snd = snd * amp * env; Out.ar(outBus, snd); //snd = LPF.ar(snd.softclip, LFNoise1.ar(0.1).exprange(10000,20000)) * 0.8; }).add; Pbindef(\lcmnoip, \instrument, \lcmnoise, \dur, Pseq([ Pseq([ Prand([Pseq([0.01,0.01]),0.02]), Pn(0.05,19), 9.03 ], 20), // 20 x 10 30]), \dur, Pseq([1,1,6], inf), \amp, 1, \amp1, Pseq([1,0.1],inf), \amp1, 0, \amp2, 1, //Pseq([0.6,1],inf), \legato, 1, \out, ~mainOut, ).play; ////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////// // -------------------------------------------------- //////////////////////////////////////////////////////////////////////////////////////////////////// // EXPERIMENTATION ///////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////// // Buffer Player //////////////////////////////////////////////////////////////////////// ( ) ( Pbindef(\playBufP, *[ instrument: \playBuf, bufnum: Pdup(64, Pxrand([ ~getSmp.("qebrus_machines_snip1"), ~getSmp.("qebrus_machines_snip2"), ~getSmp.("qebrus_machines_snip3"), ~getSmp.("qebrus_machines_snip4"), ~getSmp.("qebrus_machines_snip5") ],inf)), dur: Pxrand([1,1/2,1/2,1/4],inf) * 1/2, legato:[0.9,0.1,0.2] * Pwhite(0.9,1), start:Pwhite(0,0.91), amp: 0.4, //rate:Prand([1,0.5,2],inf) //rate: Prand([1,0.5,2],inf), rate: 1, ]).play ) // (// main bus, synthdef and a synth ///////////////////////////////////////////////////////////////// SynthDef(\mainOut, { var snd = In.ar(\inBus.kr(0), 2); //snd = BHiPass4.ar(snd, 80); // cutsubout snd = snd * Lag.kr(\amp.kr(0), \ampLag.kr(0.1)); Out.ar(\outBus.kr(0), snd) }).add; ~mainOutVol.free; ~mainOutVol = Synth(\mainOut, [\inBus, ~mainOut, \outBus, 0, \ampLag, 2, \amp, 1], addAction:\addToTail); ) ~mainOut.free; ~mainOut = Bus.audio(s, 2); ( // testing x.free; x = SynthDef(\test, {Out.ar(~mainOut, SinOsc.ar(190)!2)}).play ) ~mainOutVol.set(\ampLag, 5, \amp, 1) // FX BUSSES ///////////////////////////////////////////////////////////////////////////////////////// // FX: reverberations (GreyHole/JPverb/GVerb) // simple delays with Comb + feedback + filters ( ) s.freqscope ( SynthDef(\fxdly, { arg inBus, outBus = 0; var snd, input; input = In.ar(inBus,2); snd = input + CombN.ar( HPF.ar(input, 500), 1, [0.33,0.44], 5, 0.5 ); Out.ar(outBus, snd); } ).add; ) /////////////////////////////////////////////////////////////////////////////////////////////////// ( SynthDef(\beep_sus_filt, { arg outBus = 0, freq=440, gate=1, amp=0.1, ffreq = 1000, fq = 0.5, pan=0; var snd; ffreq = EnvGen.ar(Env.adsr(0.001,0.05,0.5,0.1), gate, ffreq, ffreq/2); snd = Pulse.ar(freq) + Saw.ar(freq * Rand(0.99,1.01) * [2,4], mul:0.3) + LFTri.ar(freq); snd = RLPF.ar(snd, ffreq, fq); snd = snd * EnvGen.kr(Env.cutoff, gate, doneAction:Done.freeSelf); snd = snd * amp; snd = Splay.ar(snd, 1, 1, 0); Out.ar(outBus, snd); } ).add; SynthDef(\beep_sus, { arg outBus = 0, freq=440, gate=1, amp=0.1, sawamp = 0.1; var snd; snd = Pulse.ar(freq) + LFTri.ar(freq/ Rand(1.99,2.01)) + Saw.ar(freq * Rand(1.99,2.01), mul:sawamp); snd = snd * 0.5 + WhiteNoise.ar; snd = BPF.ar(snd, LFNoise1.kr(9).exprange(500,4000), 0.5); snd = snd * EnvGen.kr(Env.cutoff, gate, doneAction:Done.freeSelf); snd = snd * amp * 0.5; Out.ar(outBus, snd!2); } ).add; ) ( Pbindef(\beepP, *[ instrument: \beep_sus, //dur: 2, dur: Prand([1/4,1/2,1/2,1/4,Pn(1/4,2),Pn(1/3,3),Pn(1/6,3)],inf), legato: 0.01, scale: Scale.minor, octave: 4, degree: Pseq([[-7,0], Pxrand([2,4,6,7],5)], inf), detune: Pseg([0,1,3,1,0], 5, \cub, inf), mtranspose: Pseq([Pn(0, 6*3), Pn(2, 6*3), Pn(-2, 6*4)],inf), mtranspose: 0, sawamp: Pseg([0,1,0], 40, \lin, inf), outBus: ~localfdlyBus, amp:4 // !!! ]).stop(quant:4); ) Pbindef(\beepP).stop Pbindef(\beepP).clear // VOLUME CONTROL // ------------------------------------------------------------------ SynthDef(\volFX, { var snd = In.ar(\inBus.kr(0), 2); //snd = BHiPass4.ar(snd, 80); // cutsubout snd = snd * VarLag.kr(\amp.kr(0), \ampLag.kr(0.1), 0, \exp); Out.ar(\outBus.kr(0), snd) }).add; ~ch1Vol.free; ~ch1Vol = Synth(\volFX, [\inBus, ~ch1Bus, \outBus, 0, \ampLag, 2, \amp, 1], addAction:\addToTail); ~ch1Bus.free; ~ch1Bus = Bus.audio(s, 2); //}); // end of s.waitForBoot //) // // // // // ( Pbindef(\playBufErr3, *[ instrument: \playBuf, bufnum: Pdup(3, Prand([ ~getSmp.("Misc034"), ~getSmp.("Misc106"), ~getSmp.("Misc188"), ~getSmp.("RawGlitch_259"), ~getSmp.("RawGlitch_412"), ~getSmp.("RawGlitch_336") ],inf) ), start: 0, legato:1, dur:2, amp:0.7, rate:1 ]).stop; ) ( Pbindef(\playBufHat3, *[ instrument: \playBuf, bufnum: ~getSmp.("Hats076"), legato:1, //dur:Pseq([Pn(1/4,6),Pn(1/8,3)],inf), dur:Pseq([Pn(1/8,7),2],inf), amp: 3 * Pseq([1,1/5],inf) * Pwhite(0.3,1), rate: Pwhite(0.95,1.01) ]).play(quant:4); ); ( Pbindef(\dissonP, *[ instrument: \disson, dur:Pxrand([1,1/2,2,1/2,1/2,1,2,Pn(1/4,2),2],inf) * 1/4, //dur:Pxrand([1/4,Pn(1/8,2), 1/2],inf), //dur:Pxrand([1/4,Pn(1/8,2), 1/2],inf), //dur: 1/2, //dur: 1/4, //Pxrand([1/4,Pn(1/8,2), 1/2],inf), //degree: Pseq([0,3,-2],inf), octave: Prand([2,3],inf), scale: Scale.minor, degree: Pseq([0,2,7,12],inf), //degree: 0, legato:Pwhite(0.1, 0.4), rls:0.01, amp: Pwhite(0.6,0.9)*2, detune:Pwhite(1,1.21), lpf:Pwhite(100,2000), pan: -0.2 ]).play(quant:4) ) ( Pbindef(\playBufKick5, *[ instrument: \playBuf, bufnum: ~getSmp.("Kicks010"), legato:1, dur:Pseq([3,4,1/4,2],inf), //dur:1/4, amp: 4 * Pwhite(0.7,1), rate: Pwhite(0.95,1.01) ]).play(quant:4); );