dewdrop_world

Joined: Aug 28, 2006 Posts: 858 Location: Guangzhou, China
Audio files: 4
|
Posted: Tue May 06, 2008 11:39 am Post subject:
Psycollider, my work PC, and lunch hour Subject description: a happy combination |
 |
|
I'm so glad Psycollider 3.2 is in a really usable state... it lets me wreak mischief such as this at lunch time.
James
Code: |
// note, this uses classes in the dewdrop_lib quark
// this won't work on an out-of-the-box install
// also you need to have a soundfile
(
BP(\brk).free;
PR(\break).chuck(BP(\brk), parms: (
// bufPaths: ["sounds-link/breaks/oldskool/basic funk rustle snare-compressed.aiff"],
inChannels: 2,
bufPaths: ["F:/vn piece/basic tests/basic funk rustle snare-compressed.aiff"],
postMCCreation: { |chan|
StaticEQ(2,
\eq, 465.613, -8.936.dbamp, 0.123,
\eq, 12004.805, 3.546.dbamp, 0.405,
\eq, 121.417, -9.504.dbamp, 0.081,
\eq, 105.966, 2.979.dbamp, 0.462
).play(chan);
},
segStart: [46 + ((0..31) * 5865.12)],
rates: [104 / 112.35668789809],
amps: [1, 0, 0, 0].dup(8).flat,
start: (0, 4 .. 31),
categories: (
kick: #[0, 16, /* 19*/],
kicksnr8: #[10, 26],
crash: #[14, 30],
snare: (4, 12 .. 28),
hh: #[2, 8, 18, 24],
rustle: #[6, 7, 8, 22, 23, 24],
longSegments: [0, 10, 14, 4, 12, 2, 8, 18]
)
))
)
TempoClock.default.tempo = 108/60;
SynthDef(\bufGrainRateChangeRLPF, {
|bufnum, start, time, amp, rate1 = 1, rate2 = 1, ffreq1 = 20000, ffreq2 = 20000, rq1 = 1, rq2 = 1,
pan1 = 0, pan2 = 0, attack = 0.001, decay = 0.02, outbus|
var sig,
rate = Line.kr(rate1, rate2, time),
ffreq = XLine.kr(ffreq1, ffreq2, time),
rq = Line.kr(rq1, rq2, time);
sig = PlayBuf.ar(1, bufnum, rate * BufRateScale.kr(bufnum), 1, start, 0)
* EnvGen.kr(Env.linen(attack, time, decay), doneAction:2);
sig = RLPF.ar(sig, ffreq, rq, mul: amp);
Out.ar(outbus, Pan2.ar(sig, Line.kr(pan1, pan2, time)));
}).memStore;
BP(\brk).def = \bufGrainRateChangeRLPF;
BP(\brk).argPairs = [
rate1: Pexprand(0.5, 3.0, inf),
rate2: Pkey(\rate1) * Pexprand(0.8, 2.0, inf),
pan1: Pwhite(-1.0, 1.0, inf),
pan2: Pwhite(-1.0, 1.0, inf),
rq1: Pwhite(0.1, 0.5, inf),
rq2: Pkey(\rq1),
ffreq1: Pexprand(800, 5000, inf),
ffreq2: Pkey(\ffreq1) * Pexprand(0.25, 3.5, inf)
];
BP(\brk).usedKeys = #[start];
BP(\brk).pbindPreAction = {
var i, avail = (1..15);
~amps = (0 ! 16).put(0, 1);
~start = (0 ! 16).put(0, ~categories.snare.choose);
rrand(4, 9).do({
i = avail.takeAt(avail.size.rand);
~amps[i] = rrand(0.7, 1.0);
~start[i] = ~categories.choose.choose;
});
Func(\shrinkKeys).value;
};
// for level adjustment
MixingBoard(\x, nil, BP(\brk).chan);
BP(\brk).play(doReset: true);
BP(\brk).stop; |
Description: |
|
 Download (listen) |
Filename: |
brk-edit.mp3 |
Filesize: |
312.5 KB |
Downloaded: |
1288 Time(s) |
_________________ ddw online: http://www.dewdrop-world.net
sc3 online: http://supercollider.sourceforge.net |
|