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
|
class:: Breakcore
summary:: breakcore simulator
categories:: UGens>Generators>Chaotic
keyword:: SLUGens
//SLUGens released under the GNU GPL as extensions for SuperCollider 3, by Nick Collins, http://composerprogrammer.com/index.html
Description::
This is noisy.
( This UGen (C and SuperCollider code) was written on Feb 7 2005 in one hour in front of a live audience as part of the TOPLAP live coding jam at transmediale, Maria am Ostbahnhof, Berlin.
I haven't tried to clear it up after the event, only adding this notice; make what you can of it! )
Examples::
code::
//duration in samples
(60/183)*0.25*44100
b = Buffer.alloc(s,44100);
(
~breakfilenames= Array.fill(9,{arg i; var str;
str=("sounds/SCsamp/breaks/hiphop/hop"++(i+1).asString);
if((i==3) || (i==5),{str=str++".aif"});
str
});
~breakbeatlengths= [4,4,8,4,8,4,4,8,8];
~breaks= Array.fill(~breakbeatlengths.size,{arg i; Buffer.read(s,~breakfilenames[i])});
)
(
SynthDef("help-Breakcore",{ arg out=0, bufnum=0, target=0;
var playbuf;
playbuf=PlayBuf.ar(1,target, loop:1);
Out.ar(out,
Breakcore.ar(bufnum, playbuf, Impulse.kr(4),5512,0)*Line.kr(1,0,10,doneAction:2)
)
}).play(s,[\bufnum,b.bufnum,\target,~breaks[0].bufnum]);
)
(
SynthDef("help-Breakcore",{ arg out=0, bufnum;
Out.ar(out,
Breakcore.ar(bufnum, In.ar(8)*0.3, Impulse.kr(4),5512,0)*Line.kr(1,0,10,doneAction:2)
)
}).play(s,[\bufnum,b.bufnum]);
)
(
SynthDef("help-Breakcore",{ arg out=0, bufnum=0, target=0;
var playbuf;
playbuf=PlayBuf.ar(1,target,MouseX.kr(1,2), loop:1);
//AudioIn.ar(1,0.1)
Out.ar(out,
Breakcore.ar(bufnum,playbuf , Impulse.kr(LFNoise0.kr(4,10,12)),LFNoise0.kr(8,1900,2000),0) )
}).play(s,[\bufnum,b.bufnum, \target, ~breaks[2].bufnum]);
)
(60/180)*44100*0.25
3614/4
::
|