hsc3-graphs-0.15: gr/drone-plus-rhythm.scd
// drone plus rhythm (jmcc) #12
"/home/rohan/sw/hsc3-graphs/gr/overlap-texture.scd".load;
~scale = #[0, 2, 3, 5, 7, 9, 10];
~overlap_texture.({
var f = (#[24,36].choose + 0.08.rand2).midicps;
LPF.ar(LFSaw.ar([f, f + 0.2], 0, LFNoise2.kr(f*[0.05, 0.04], 0.06)), rrand(1000,3000));
}, 4, 4, 8);
~overlap_texture.({
arg i;
if (i > 1 and: { 0.8.coin }, {
var f = (#[60, 72].choose + ~scale.choose + [0.05.rand2, 0.05.rand2]).midicps;
SinOsc.ar(f, 0, rrand(0.04,0.07));
}, {
Silent.ar(2)
});
}, 4, 6, 3);
~overlap_texture.({
arg i;
var isequ = {arg s, tr; tr * Demand.ar(tr, 0, Dseq(s, inf))};
if (i > 8, {
var f = (#[48, 60, 72, 84].choose + ~scale.choose + [0.03.rand2, 0.03.rand2]).midicps;
var sq = isequ.([1,1,1,0,0,0].scramble,Impulse.ar([1.5,3,6].choose));
var sg = LFPulse.ar(f, 0, 0.4, rrand(0.03,0.08));
RLPF.ar(Decay2.ar(sq, 0.004, rrand(0.2, 0.7),sg),exprand(800,2000),0.1)
},{ Silent.ar(2) });
}, 6, 6, 6);
~post_process.({arg z; CombN.ar(z, 0.5, 0.5, 6, 1, z.reverse)});