final stereo version all corrected. perhaps.
							parent
							
								
									7a07d18deb
								
							
						
					
					
						commit
						043add3f52
					
				
							
								
								
									
										138
									
								
								rhizosphere.scd
								
								
								
								
							
							
						
						
									
										138
									
								
								rhizosphere.scd
								
								
								
								
							|  | @ -3,26 +3,17 @@ | |||
| 	This program is free software distributed under | ||||
| 	GNU General Public Licence. See COPYING for more info. | ||||
| 	- - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||||
|                                                                                    */ | ||||
| // RHIZOSPHERE - STEKLENIK 2020 - CONA ////////////////////////////////////////////// | ||||
| 
 | ||||
| postln(" | ||||
| 
 | ||||
| - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -"); | ||||
| /* | ||||
| >>> Hello. Starting RHIZOSPHERE                                                 <<<<< | ||||
| 
 | ||||
| ██████╗ ██╗  ██╗██╗███████╗ ██████╗ ███████╗██████╗ ██╗  ██╗███████╗██████╗ ███████╗ | ||||
| ██╔══██╗██║  ██║██║╚══███╔╝██╔═══██╗██╔════╝██╔══██╗██║  ██║██╔════╝██╔══██╗██╔════╝ | ||||
| ██████╔╝███████║██║  ███╔╝ ██║   ██║███████╗██████╔╝███████║█████╗  ██████╔╝█████╗   | ||||
| ██╔══██╗██╔══██║██║ ███╔╝  ██║   ██║╚════██║██╔═══╝ ██╔══██║██╔══╝  ██╔══██╗██╔══╝   | ||||
| ██║  ██║██║  ██║██║███████╗╚██████╔╝███████║██║     ██║  ██║███████╗██║  ██║███████╗ | ||||
| ╚═╝  ╚═╝╚═╝  ╚═╝╚═╝╚══════╝ ╚═════╝ ╚══════╝╚═╝     ╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝╚══════╝ | ||||
|                                                                                    */ | ||||
| 
 | ||||
| 
 | ||||
| "); | ||||
| 	*/ | ||||
| 
 | ||||
| Server.default.waitForBoot { | ||||
| 
 | ||||
| 	// library path | ||||
|  | @ -36,10 +27,6 @@ Server.default.waitForBoot { | |||
| 		// execute it: | ||||
| 		this.executeFile(afile.fullPath);	 | ||||
| 	}); | ||||
| 	 | ||||
| 	// important for patterns | ||||
| 	s.latency = 0.05; // default server's is 0.2 | ||||
| 
 | ||||
| }); | ||||
| 
 | ||||
| s.meter; s.plotTree; | ||||
|  | @ -97,11 +84,11 @@ s.meter; s.plotTree; | |||
| ">>> loaded all busses".postln; | ||||
| ); | ||||
| 
 | ||||
| ( | ||||
| ( /////////////////////////////////////////////////////////////////////////////// | ||||
| var timeLine; | ||||
| 
 | ||||
| "--- freeing old octoPanners ...".postln; | ||||
| ~octoPanner1.free; ~octoPanner2.free; ~octoPanner3.free; ~octoPanner4.free; | ||||
| "\n>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>".postln; | ||||
| "--- R H I Z O S P H E R E -----".postln; | ||||
| ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n".postln; | ||||
| 
 | ||||
| "--- loading octoPanners ...".postln; | ||||
| ~octoPanner1 = Synth("octoPanner", [\inBus, ~octoBus1, \outBus, ~revBus], addAction: \addToTail); | ||||
|  | @ -128,20 +115,12 @@ var timeLine; | |||
| ~reverb = Synth("reverBusser", [\inBus, ~revBus, \outBus, 0], addAction: \addToTail); | ||||
| 
 | ||||
| // some default oscilations of pan and reverb | ||||
| 
 | ||||
| ~panner1y.free; | ||||
| ~panner2y.free; | ||||
| ~panner3y.free; | ||||
| ~panner4y.free; | ||||
| 
 | ||||
| //~panner1y = SynthDef(\pannerOsc, {Out.kr(~panBus1y, SinOsc.kr(0.1).range(0.1,0.2))}).play; | ||||
| ~panner1y = SynthDef(\randomPanY1, { Out.kr(~panBus1y, LFNoise1.kr(1).range(0,0.28))}).play; | ||||
| ~panner2y = SynthDef(\randomPanY2, { Out.kr(~panBus2y, LFNoise1.kr(1).range(0,0.28))}).play; | ||||
| ~panner3y = SynthDef(\randomPanY3, { Out.kr(~panBus3y, LFNoise1.kr(1).range(0,0.28))}).play; | ||||
| ~panner4y = SynthDef(\randomPanY4, { Out.kr(~panBus4y, LFNoise1.kr(1).range(0,0.28))}).play; | ||||
| // convert to SynthDef + Synth for common oscilations? | ||||
| 
 | ||||
| ~reverb1wetBus.free; ~wetOsc.free; // clean up | ||||
| ~reverb1wetBus.free; // ~wetOsc.free; // clean up | ||||
| ~reverb1wetBus = Bus.control(s, 1); // create control bus | ||||
| ~reverb.map(\verb1wet, ~reverb1wetBus); // map an argument to control bus | ||||
| ~wetOsc = SynthDef(\randomVerb1, {Out.kr(~reverb1wetBus, LFNoise2.kr(1).range(0, 0.8)) }).play; | ||||
|  | @ -150,38 +129,39 @@ var timeLine; | |||
| // ~reverb.set(\verb1wet, 0); | ||||
| // ~reverb.set(\verb1wet, 1); | ||||
| // ~reverb.set(\verb2wet, 1); | ||||
| //); | ||||
| 
 | ||||
| 
 | ||||
| //( | ||||
| timeLine = Routine { | ||||
| 	"--- starting main routine ...".postln; | ||||
| 
 | ||||
| 
 | ||||
| 	/// SOIL ////////////////////////////////// | ||||
| 	// forestSoil granulation | ||||
| 	"\n--- PART 1 ---".postln; | ||||
| 	"--- starting forestSoil granulation ...".postln; | ||||
| 
 | ||||
| 	~soil1 = Synth(\granSoil, [\out, ~octoBus1, \sndbuf, ~forestSoilBuf, \dur, 0.0001 ,\fadeTime, 20]); | ||||
| 	~soil1 = Synth(\granSoil, [\out, ~octoBus1, \sndbuf, ~forestSoilBuf, \dur, 0.0001 ,\fadeTime, 20, \amp, 0.8]); | ||||
| 	~soil1durBus = Bus.control(s,1); | ||||
| 	~soil1durBus.value = 0.0001; | ||||
| 	~soil1.map(\dur, ~soil1durBus); | ||||
| 	wait(80); | ||||
| 	 | ||||
| 	"--- starting soil2 ...".postln; | ||||
| 	~soil2 = Synth(\granSoil, [\out, ~octoBus2, \sndbuf, ~forestSoilBuf, \dur, 0.0001 ,\fadeTime, 20]); | ||||
| 	~soil2 = Synth(\granSoil, [\out, ~octoBus2, \sndbuf, ~forestSoilBuf, \dur, 0.0001 ,\fadeTime, 20, \amp, 0.8]); | ||||
| 	~soil2durBus = Bus.control(s,1); | ||||
| 	~soil2durBus.value = 0.0001; | ||||
| 	~soil2.map(\dur, ~soil2durBus); | ||||
| 	wait(20); | ||||
| 	 | ||||
| 	"--- starting oscilating duration ...".postln; | ||||
| 	~soil1DurOsc = SynthDef( \soilDurOsc, {Out.kr(~soil1durBus, SinOsc.kr(0.01,1.5pi).range(0.0001, 0.1))} ).play; | ||||
| 	~soil1DurOsc = SynthDef( \soilDurOsc, {Out.kr(~soil1durBus, SinOsc.kr(0.012,1.5pi).range(0.0001, 0.05))} ).play; | ||||
| 	wait(20); | ||||
| 	 | ||||
| 	// ~soil1DurOsc.free;	 | ||||
| 	"--- starting oscilating duration 2...".postln; | ||||
| 	~soil2DurOsc = SynthDef( \soilDurOsc, {Out.kr(~soil2durBus, SinOsc.kr(0.01,1.5pi).range(0.0001, 0.2))} ).play; | ||||
| 	~soil2DurOsc = SynthDef( \soilDurOsc, {Out.kr(~soil2durBus, SinOsc.kr(0.029,1.5pi).range(0.0001, 0.08))} ).play; | ||||
| 	wait(120); | ||||
| 
 | ||||
| 	"--- return to static duration...".postln; | ||||
| 	"--- return to static duration, abruptly...".postln; | ||||
| 	~soil1.set(\dur, 0.0001); | ||||
| 	wait(1); | ||||
| 	~soil2.set(\dur, 0.0001); | ||||
|  | @ -200,17 +180,18 @@ timeLine = Routine { | |||
| 
 | ||||
| 	// trigRingz ////////////////////////////////////////////////////////////////////////////////////////////////////// | ||||
| 	 | ||||
| 	"\n--- PART 2 ---".postln; | ||||
| 	"--- starting lorenzTrig1 ...".postln; | ||||
| 	~lorenzTrig1 = Synth(\lorenzTrigRing, [\out, ~octoBus1, \freq, 1400, \amp, 0.5, \fadeTime, 5]); | ||||
| 	wait(30); | ||||
| 	wait(50); | ||||
| 	 | ||||
| 	"--- starting stdTrig1 ...".postln; | ||||
| 	~stdTrig1 = Synth(\stndTrigRing, [\out, ~octoBus2, \freq,1900, \amp,0.5,\fadeTime, 10]); | ||||
| 	wait(20); | ||||
| 	wait(40); | ||||
| 
 | ||||
| 	"--- starting lorenzTrig2 ...".postln; | ||||
| 	~lorenzTrig2 = Synth(\lorenzTrigRing, [\out, ~octoBus3, \freq, 400, \amp, 0.3, \fadeTime, 10, \min, 5, \max, 20]); | ||||
| 	wait(20); | ||||
| 	wait(30); | ||||
| 
 | ||||
| 	"--- starting stdTrig2 ...".postln; | ||||
| 	~stdTrig2 = Synth(\stndTrigRing, [\freq, 70, \min, 0, \max, 2, \decay, 2, \ffreq, 200, \amp, 0.4, \out, ~octoBus4, \fadeTime, 20]) ; | ||||
|  | @ -218,27 +199,31 @@ timeLine = Routine { | |||
| 
 | ||||
| 	"--- starting henoTrig1 ...".postln; | ||||
| 	~henoTrig1 = Synth(\henoTrigRing, [\out, ~octoBus2, \freq, 2700, \amp, 1, \min, 0.1, \max, 1, \fadeTime, 20]); | ||||
| 	wait(20); | ||||
| 	wait(10); | ||||
| 	 | ||||
| 	"--- starting henoTrig1 ...".postln; | ||||
| 	~gbmanTrig1 = Synth(\gbmanTrigRing, [\out, ~octoBus1, \freq, 90, \decay, 2, \min, 0.2, \max, 1, \amp, 0.4, \fadeTime, 2]); | ||||
| 	wait(20); | ||||
| 	~gbmanTrig1 = Synth(\gbmanTrigRing, [\out, ~octoBus1, \freq, 139, \decay, 2, \min, 0.2, \max, 1, \amp, 0.4, \fadeTime, 2]); | ||||
| 	wait(10); | ||||
| 	 | ||||
| 	"--- starting latooTrig1 ...".postln; | ||||
| 	~latooTrig1 = Synth(\latooTrigRing, [\out, ~octoBus4, \freq, 3300, \decay, 3, \min, 0.2, \max, 1, \amp, 0.2, \fadeTime, 10 ]); | ||||
| 	wait(20); | ||||
| 	wait(10); | ||||
| 
 | ||||
| 	"--- starting latooTrig2 ...".postln; | ||||
| 	~latooTrig2 = Synth(\latooTrigRing, [\out, ~octoBus3, \freq, 4300, \decay, 0.2, \min, 1, \max, 10, \amp, 0.2, \fadeTime, 10 ]); | ||||
| 	wait(20); | ||||
| 	wait(10); | ||||
| 
 | ||||
| 	"--- starting fhnTrig1 ...".postln; | ||||
| 	~fhnTrig1 = Synth(\fhnTrigRing, [\out, ~octoBus1, \freq, 110, \amp, 0.5, \decay, 2, \min, 0.2, \max, 1, \amp, 0.4, \fadeTime, 10]); | ||||
| 	~fhnTrig1 = Synth(\fhnTrigRing, [\out, ~octoBus1, \freq, 210, \amp, 0.5, \decay, 2, \min, 0.2, \max, 1, \amp, 0.4, \fadeTime, 10]); | ||||
| 	wait(20); | ||||
| 
 | ||||
| 	"--- starting fhnTrig3 ...".postln; | ||||
| 	~fhnTrig3 = Synth(\fhnTrigRing, [\out, ~octoBus1, \freq, 200, \amp, 0.5, \decay, 2, \min, 0.2, \max, 1, \amp, 0.4, \fadeTime, 10]); | ||||
| 	wait(20); | ||||
| 
 | ||||
| 	"--- starting fhnTrig2 ...".postln; | ||||
| 	~fhnTrig2 = Synth(\fhnTrigRing, [\out, ~octoBus2, \freq, 2110, \amp, 0.5, \min, 2, \max, 20, \amp, 0.5, \fadeTime, 10]); | ||||
| 	wait(40); | ||||
| 	wait(20); | ||||
| 	 | ||||
| 	"--- starting ~fmgrainer ...".postln; | ||||
| 	~fmgrainer = Routine { 200.do({ x = Synth(\fm_grainer, [ "modfreq", rrand(10,1000),	"carfreq", rrand(40,100), \out, ~octoBus1 ]); 	1.wait; }); "--- fmgrains done generating new ones ...".postln; }.play; | ||||
|  | @ -250,6 +235,7 @@ timeLine = Routine { | |||
| 	~stdTrig2.set(\fadeTime, 8, \gate, 0); | ||||
| 	~lorenzTrig2.set(\fadeTime, 12, \gate, 0); | ||||
| 	~henoTrig1.set(\fadeTime, 15, \gate, 0); | ||||
| 	~fhnTrig3.set(\fadeTime, 1, \gate, 0); | ||||
| 	wait(30); | ||||
| 
 | ||||
| 	"--- fading out ...".postln; | ||||
|  | @ -270,19 +256,20 @@ timeLine = Routine { | |||
| 	~latooWan1 = Synth(\latooWanderings, [\out, ~octoBus4, \fadeTime, 30, \amp, 0.3]); | ||||
| 	wait(60); | ||||
| 
 | ||||
| 	"\n--- PART 3 ---".postln; | ||||
| 	"--- markov1 ...".postln; | ||||
| 	~markov1 = Synth(\markovS1,  [ \out, ~octoBus1,	\freq, 440, \tsize, 3, \amp, 0.3, \clip, 0.69, \fadeTime, 0.01 ]); | ||||
| 	wait(60); | ||||
| 	 | ||||
| 	"--- markov fade, latooWan fade, distbleeps ...".postln; | ||||
| 	"--- cut markov1 & latooWan, start distbleeps ...".postln; | ||||
| 	~markov1.set(\gate, 0, \fadeTime, 0.01); | ||||
| 	~latooWan1.set(\gate, 0, \fadeTime, 0.01); | ||||
| 	~distbleeps = Synth(\latooTriggers, [\out, ~octoBus3, \trigA, 1.1, \fadeTime, 0.01, \amp, 0.7]); | ||||
| 	wait(60); | ||||
| 	~distbleeps = Synth(\latooTriggers, [\out, ~octoBus3, \trigA, 1.1, \fadeTime, 0.01, \amp, 0.9]); | ||||
| 	wait(30); | ||||
| 
 | ||||
| 	"--- markov7 ...".postln; | ||||
| 	~markov7 = Synth(\markovS1,  [ \out, ~octoBus2,	\freq, 740, \tsize, 3, \amp, 0.1, \clip, 0.9, \fadeTime, 7 ]); | ||||
| 	wait(60); | ||||
| 	~markov7 = Synth(\markovS1,  [ \out, ~octoBus2,	\freq, 740, \tsize, 3, \amp, 0.2, \clip, 0.9, \fadeTime, 7 ]); | ||||
| 	wait(20); | ||||
| 
 | ||||
| 	"--- fade: markov7, distbleeps ...".postln;	 | ||||
| 	~markov7.set(\gate, 0, \fadeTime, 0.01); | ||||
|  | @ -298,58 +285,39 @@ timeLine = Routine { | |||
| 
 | ||||
| 	"--- markov10,11,12 ...".postln; | ||||
| 	~markov10 = Synth(\markovS1,  [ \out, ~octoBus4, | ||||
| 		\freq, 501, \tsize, 3, \amp, 0.2, \clip, 0.9, \fadeTime, 0.1 ]); | ||||
| 		\freq, 501, \tsize, 3, \amp, 0.2, \clip, 0.9, \fadeTime, 0.01 ]); | ||||
| 	~markov11 = Synth(\markovS1,  [ \out, ~octoBus3, | ||||
| 		\freq, 1101, \tsize, 3, \amp, 0.2, \clip, 0.9, \fadeTime, 0.1 ]); | ||||
| 		\freq, 1101, \tsize, 3, \amp, 0.2, \clip, 0.9, \fadeTime, 0.01 ]); | ||||
| 	~markov12 = Synth(\markovS1,  [ \out, ~octoBus2, | ||||
| 		\freq, 3001, \tsize, 3, \amp, 0.2, \clip, 0.9, \fadeTime, 0.1 ]); | ||||
| 		\freq, 3001, \tsize, 3, \amp, 0.2, \clip, 0.9, \fadeTime, 0.01 ]); | ||||
| 	wait(60); | ||||
| 
 | ||||
| 	"--- noiseCrackle ...".postln; | ||||
| 	~noiseCr1 = Synth(\noiseCrackle, [\out, ~octoBus1, \fadeTime, 40 ]); | ||||
| 	"--- fade markov10,11,12 ...".postln; | ||||
| 	~markov10.set(\gate, 0, \fadeTime, 50); | ||||
| 	~markov11.set(\gate, 0, \fadeTime, 50); | ||||
| 	~markov12.set(\gate, 0, \fadeTime, 50); | ||||
| 	 | ||||
| 	"\n--- PART 4 --- ".postln; | ||||
| 	"--- noiseCrackle ...".postln; | ||||
| 	~noiseCr1 = Synth(\noiseCrackle, [\out, ~octoBus1, \fadeTime, 30 ]); | ||||
| 	wait(40); | ||||
| 
 | ||||
| 	"--- noiseCrackle lpfa hpfa ...".postln; | ||||
| 	~noiseCr1.set(\lpfa,1,\hpfa,0); | ||||
| 	wait(10); | ||||
| 
 | ||||
| 	"--- noiseCrackle lpfa hpfa ...".postln; | ||||
| 	~noiseCr1.set(\lpfa,0,\hpfa,1); | ||||
| 	wait(5); | ||||
| 
 | ||||
| 	"--- noiseCrackle lpfa hpfa ...".postln; | ||||
| 	~noiseCr1.set(\lpfa,1,\hpfa,1); | ||||
| 	wait(10); | ||||
| 
 | ||||
| 	"--- darkHenon ...".postln;	 | ||||
| 	~darkHenon1 = Synth(\henonLsynth2, [\out, ~octoBus4, \fadeTime, 60]); | ||||
| 	wait(20); | ||||
| 	 | ||||
| 	"--- noiseCrackle amp 0.5 ...".postln; | ||||
| 	~noiseCr1.set(\amp, 0.5); | ||||
| 	~darkHenon1 = Synth(\henonLsynth2, [\out, ~octoBus4, \fadeTime, 30]); | ||||
| 	wait(40); | ||||
| 
 | ||||
| 	"--- noiseCrackle amp 0.2 ...".postln; | ||||
| 	~noiseCr1.set(\amp, 0.2); | ||||
| 	wait(30); | ||||
| 	 | ||||
| 	"--- noiseCrackle fade ...".postln; | ||||
| 	~noiseCr1.set(\fadeTime, 30, \gate,0); | ||||
| 	wait(60); | ||||
| 
 | ||||
| 	"--- henonS1 ...".postln; | ||||
| 	~henonS1 = Synth(\henonSynth1, [\out, ~octoBus3, \amp, 0.2, \fadeTime, 40]); | ||||
| 	wait(120);  | ||||
| 	~henonS1 = Synth(\henonSynth1, [\out, ~octoBus3, \amp, 0.4, \fadeTime, 40]); | ||||
| 	"--- noiseCrackle fade ...".postln; | ||||
| 	~noiseCr1.set(\fadeTime, 90, \gate,0); | ||||
| 	wait(90);  | ||||
| 
 | ||||
| 	"--- final fade henonS1, darkHenon ...".postln; | ||||
| 	~henonS1.set(\gate, 0, \fadeTime, 50); | ||||
| 	~darkHenon1.set(\gate, 0, \fadeTime, 40); | ||||
| 	~darkHenon1.set(\gate, 0, \fadeTime, 60); | ||||
| 	wait(20); | ||||
| 	 | ||||
| 	wait(50); | ||||
| 	~henonS1.set(\gate, 0, \fadeTime, 60); | ||||
| 	wait(60); | ||||
| 	 | ||||
| 	"--- end of the TIMELINE ---".postln | ||||
| 	 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue