for disquiet junto #16 "back/foreground"


Plan: This week's effort is the 16th weekly Junto, and it is a shared-sample project. The theme is "background and foreground." There are two provided samples, one of sandpaper and the other of dice. Please make one track employing both samples. You can transform them in any way you wish. You can add other elements if you choose to. However, one of the two samples should provide the predominant background sound, and the other should provide the predominant foreground sound. Which does which is up to you. You'll find the samples here:

freesound.org/people/HerbertBo...unds/28541/ ;
freesound.org/people/Robinhood...unds/60857/ ;

More details on the Disquiet Junto at: soundcloud.com/groups/disquiet-junto ;

:::::::::::::::::::::::::::: process: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

~loadbuffers.("/Users/sharedReadWrite/supercollider/disquiet junta/0016-backforeground/cutups/dicelong/");
~buffers.size.do({ arg i;~buffers[i].normalize});
~dicelong = ~buffers;
~redraw.play;

~loadbuffers.("/Users/sharedReadWrite/supercollider/disquiet junta/0016-backforeground/cutups/diceshrt/
");
~buffers.size.do({ arg i;~buffers[i].normalize});
~diceshrt = ~buffers;
~redraw.play;


~sandpaper = Buffer.readChannel(s, "/Users/sharedReadWrite/supercollider/disquiet junta/0016-backforeground/src/28541herbertbolandsandpaper5.wav", channels:0);

~sandpaper.normalize;
~sandPlays = List[];
27.do{~sandPlays.add(~streichCh.play(Instr.at("buffergrain")));};


~sandPlays.do{|i| i.synth.set('gfreq', 1)};
~sandPlays.do{|i| i.synth.set('gdur', 1)};
~sandPlays.do{|i| i.synth.set('bufnum', ~sandpaper.bufnum + 1)};
~sandPlays.do{|i| i.synth.set('sndrate', 1/4)};
~sandPlays.do{|i| i.synth.set('sndrate', 1/8)};
~sandPlays.do{|i| i.synth.set('grate', [-1/8, -1/4, -1/2, 1].choose)};
~sandPlays.do{|i| i.synth.set('gfreq', 8)};
~sandPlays.do{|i| i.synth.set('grate', [-1/16, 1/8, -1/4, -1/2].choose)};
~sandPlays.do{|i| i.synth.set('grate', [-1/64, -1/32, -1/16, 1/8].choose)};
~sandPlays.do{|i| i.synth.set('sndrate', 8)};
~sandPlays.do{|i| i.synth.set('mul', 0.05)};

~cleanCh.play(playBufPan, [bufnum, ~diceshrt.choose.bufnum + 1,pan, ((1 .. 9).choose/10)[-1,1].choose]);
~cleanCh.play(playBufPan, [bufnum, ~dicelong.choose.bufnum + 1,pan, ((1 .. 9).choose/10)
[-1,1].choose]);

(
~melody = [7,2,3,0];
~singer.notNil.if {~singer.stop};
~singer.free;
~singer = fork{(~sandPlays.size > 0).while({
~melody.do{|note|
~streichboomPatch.synth.set(freq, 55 + (note(55/12)));
~sandPlays.do{|i, index| if (index%3==0) {i.synth.set('grate', 1/16 + (note
((1/16)/12)));}};
~sandPlays.do{|i, index| if (index%3==1) {i.synth.set('grate', 1/32 + (note((1/32)/12)));}};
~sandPlays.do{|i, index| if (index%3==2) {i.synth.set('grate', 1/64 + (note
((1/64)/12)));}};
~cleanCh.play(playBufPan, [bufnum, ~dicelong.choose.bufnum + 1,pan, ((1 .. 9).choose/10)[-1,1].choose]);
4.wait;
};
})};
)

~sandPlays.do{|i| i.synth.set('grate', [-1/64, -1/32, -1/16, 1/8].choose)};
~sandPlays.do{|i| i.synth.set('grate', [ -1/32, -1/16, 1/8, 1/4].choose)};
~sandPlays.do{|i| i.synth.set('grate', [ -1/16, 1/8, 1/4, -1/2].choose)};

~cleanCh.play(playBufPan, [bufnum, ~dicelong.choose.bufnum + 1,pan, ((1 .. 9).choose/10)
[-1,1].choose]);
~breaknochange.();
~freebreak.();
~breaknochange.(1/2);


~breaknochange.();
~refreshboom.();
~reboom.();
~breaknochange.(1/2);
~refreshboom.();
~reboom.();
~breaknochange.();

(
~setpair = { |pairi=0, divisor=8|
var freq = ((~phases.choose ~speed)/divisor);
var topf1buf = ~topf1.choose.bufnum;
var topf2buf = ~topf2.choose.bufnum + 1;
var firstofpair = pairi
2;
var secndofpair = (pairi 2) + 1;
"streich%->buf% & streich%->buf%, both get freq %".format(firstofpair,topf1buf,secndofpair,topf2buf,freq).postln;

~streichChPlays[firstofpair].synth.set('gfreq', freq);
~streichChPlays[firstofpair].synth.set('bufnum', topf1buf);

~streichChPlays[secndofpair].synth.set('gfreq', freq);
~streichChPlays[secndofpair].synth.set('bufnum', topf2buf);
};
)

~streichChPlays = List[];
32.do{~streichChPlays.add(~streichCh.play(Instr.at("buffergrain")));};
~phases = [~longPhase,~basicPhase,~quickerPhase,~hatPhase,~offsPhase,~freakPhase];

~topf1= ~diceshrt;
~topf2= [~sandpaper];
~topf2= [~liveBuf];

(
n = -1;
~runner.notNil.if {~runner.stop};
~runner.free;
~runner = fork{(~streichChPlays.size > 1).while({
~setpair.((n=n+1)%((~streichChPlays.size)/2), [16,32,64].choose);
1.wait;});};
)

// now it gets louder cz we switch form the diceshrt to the liveBuf
~buffers = [~liveBuf];

~breaknochange.(1/2);
~refreshboom.();
~reboom.();
~breaknochange.();
fork{ 8.do{~breaknochange.( ); 0.5.wait;s.sync;}};
fork{ 16.do{~breaknochange.( ); 0.25.wait;s.sync;}};

// the ende
~runner.notNil.if {~runner.stop};
~singer.notNil.if {~singer.stop};
~sandPlays.do{|i| i.synth.set('mul', 0)};
~streichChPlays.do{|i| i.synth.set('mul', 0)};
~freebreak.();
~cleanCh.play(playBufPan, [bufnum, ~dicelong.choose.bufnum + 1,pan, ((1 .. 9).choose/10)
[-1,1].choose]);

___
pic: flickr.com/photos/jeyh/2796143...es-48773669@N02

Translate this for me

    Other
    Full Link
    Short Link (X/Twitter)
    Video Preview in progress...