changes according to Emergent Behaviour performance
parent
f91526a82c
commit
a2a1687aff
|
@ -0,0 +1,29 @@
|
|||
(
|
||||
SynthDef(\bgrain, { |out = 0, gate = 1, amp = 0, bufnum, gfreq=90, rate=0.5, amplag=5|
|
||||
var snd, pan, env, freqdev;
|
||||
amp = Lag.kr(amp, amplag);
|
||||
pan = LFNoise1.kr(0.1).range(-1, 1) * LFNoise0.kr(gfreq).range(0.2,1);
|
||||
env = EnvGen.kr(
|
||||
Env([0, 1, 0], [1, 1], \sin, 1),
|
||||
gate,
|
||||
doneAction: Done.freeSelf);
|
||||
|
||||
snd = GrainBuf.ar(
|
||||
numChannels:2,
|
||||
trigger:Impulse.kr(LFNoise1.kr(gfreq).range(0.8,1) * gfreq),
|
||||
dur: 0.2 * LFNoise0.kr(gfreq).range(1,1.2),
|
||||
sndbuf: bufnum,
|
||||
rate: [rate * LFNoise1.kr.range(0.99, 1), rate * LFNoise1.kr.range(0.99, 1)],
|
||||
pos: LFNoise2.kr(0.05).range(0, 1) * LFNoise0.kr(gfreq).range(1,1.02),
|
||||
//pos: LFTri.kr(0.25),
|
||||
interp: 2,
|
||||
pan: pan);
|
||||
|
||||
snd = RLPF.ar(snd, freq: LFNoise2.kr(0.1).exprange(400,10000));
|
||||
snd = snd * LFTri.ar(0.073).range(0.1,1);
|
||||
snd = snd * env * amp;
|
||||
|
||||
Out.ar(out, snd);
|
||||
|
||||
}).add;
|
||||
);
|
|
@ -33,14 +33,14 @@ SynthDef(\henonSynth1, {
|
|||
|
||||
( // henonN + henonC controlling filter * volume
|
||||
SynthDef(\henonLsynth1, {
|
||||
arg out=0, hpfreqmin=100;
|
||||
arg out=0, hpfreqmin=100, amp=1;
|
||||
var snd;
|
||||
|
||||
snd = (BrownNoise.ar() + Mix(SinOsc.ar(HenonN.ar(4,a:[1.4,1.1] ).range(200,400)))) * HenonN.ar(freq:1).range(0,0.5);
|
||||
snd = RHPF.ar(snd, HenonC.ar(freq:1).fold(0,1).exprange(hpfreqmin,7000), rq:1);
|
||||
snd = snd * HenonC.ar(0.5).range(0.6,1);
|
||||
|
||||
Out.ar(out, snd);
|
||||
Out.ar(out, snd * amp);
|
||||
}).add;
|
||||
);
|
||||
|
||||
|
@ -48,7 +48,7 @@ SynthDef(\henonLsynth1, {
|
|||
(
|
||||
// henonLsynth = dark brooding melodic drone-noise
|
||||
SynthDef(\henonLsynth2, {
|
||||
arg out, gate=1, fadeTime=1;
|
||||
arg out, gate=1, fadeTime=1, amp=1;
|
||||
var sig, sinfreq, env;
|
||||
|
||||
env = EnvGen.kr(Env(levels: [0,1,0], times: [fadeTime, fadeTime], curve: \sin, releaseNode: 1),
|
||||
|
@ -71,7 +71,7 @@ SynthDef(\henonLsynth2, {
|
|||
|
||||
sig = sig + Greyhole.ar(sig * 0.6, feedback: 0.8, diff: 0.7, delayTime: 0.78123);
|
||||
|
||||
sig = sig * env;
|
||||
sig = sig * env * amp;
|
||||
|
||||
sig = Mix.new(sig);
|
||||
|
||||
|
|
|
@ -24,6 +24,8 @@ add - This value will be added to the output. *********************/
|
|||
|
||||
sig = Crackle.ar(par);
|
||||
|
||||
//sig = LeakDC.ar(sig);
|
||||
|
||||
lpf = RLPF.ar(
|
||||
in: sig,
|
||||
freq: Lag3.kr(LFNoise0.kr(0.08).exprange(50,10000),10),
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
(
|
||||
SynthDef(\recIn, { arg out = 0, bufnum = 0;
|
||||
var snd = SoundIn.ar(0,1);
|
||||
RecordBuf.ar(snd, bufnum, doneAction: Done.freeSelf, loop: 0);
|
||||
}).add;
|
||||
);
|
|
@ -88,9 +88,11 @@ SynthDef(\lorenzTrigRing, {
|
|||
|
||||
(
|
||||
SynthDef(\fhnTrigRing, {
|
||||
arg out=0, freq=1000, min=1, max=10, decay=0.1, ffreq=1000, amp=1, gate=1, fadeTime=1;
|
||||
arg out=0, freq=1000, min=1, max=10, decay=0.1, ffreq=1000, amp=1,
|
||||
gate=1, fadeTime=1, ffreqlag=5;
|
||||
var snd, in, env;
|
||||
|
||||
ffreq=Lag.kr(ffreq, ffreqlag);
|
||||
in = FhnTrig.ar(min,max);
|
||||
snd = Ringz.ar(in, freq, decay);
|
||||
snd = LPF.ar(snd, ffreq);
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
(
|
||||
SynthDef(\verbDelayFX, {
|
||||
arg inBus, outBus, revWet=0.8, dlyWet=0.8, feedback = 0.5 ;
|
||||
|
||||
var snd = Limiter.ar(In.ar(inBus, 2));
|
||||
var verb = JPverb.ar(snd);
|
||||
var delay = Greyhole.ar(snd, feedback: feedback);
|
||||
|
||||
snd = snd + (verb * revWet) + (delay * dlyWet) * 0.5;
|
||||
Out.ar(outBus, snd);
|
||||
}).add;
|
||||
);
|
|
@ -0,0 +1,188 @@
|
|||
// octoPan busses //////////////
|
||||
(
|
||||
|
||||
// free busses and panners when re-trying things?
|
||||
~octoBus1.free; ~octoBus2.free; ~octoBus3.free; ~octoBus4.free;
|
||||
~panBus1x.free; ~panBus1y.free; ~panBus1r.free;
|
||||
~panBus2x.free; ~panBus2y.free; ~panBus2r.free;
|
||||
~panBus3x.free; ~panBus3y.free; ~panBus3r.free;
|
||||
~panBus4x.free; ~panBus4y.free; ~panBus4r.free;
|
||||
~revBus.free;
|
||||
|
||||
// octoBus1 + panners and control busses:
|
||||
~octoBus1 = Bus.audio(s,1);
|
||||
~panBus1x = Bus.control(s,1);
|
||||
~panBus1y = Bus.control(s,1);
|
||||
~panBus1r = Bus.control(s,1);
|
||||
~panBus1y.value = 0.14; // set a fixed value to a bus
|
||||
~panBus1x.value = 0;
|
||||
~panBus1r.value = 10;
|
||||
|
||||
// octoBus2 + panners and control busses:
|
||||
~octoBus2 = Bus.audio(s,1);
|
||||
~panBus2x = Bus.control(s,1);
|
||||
~panBus2y = Bus.control(s,1);
|
||||
~panBus2r = Bus.control(s,1);
|
||||
~panBus2y.value = 0.14; // set a fixed value to a bus
|
||||
~panBus2x.value = 0;
|
||||
~panBus2r.value = 10;
|
||||
|
||||
// octoBus3 + panners and control busses:
|
||||
~octoBus3 = Bus.audio(s,1);
|
||||
~panBus3x = Bus.control(s,1);
|
||||
~panBus3y = Bus.control(s,1);
|
||||
~panBus3r = Bus.control(s,1);
|
||||
~panBus3y.value = 0.14; // set a fixed value to a bus
|
||||
~panBus3x.value = 0;
|
||||
~panBus3r.value = 10;
|
||||
|
||||
// octoBus4 + panners and control busses:
|
||||
~octoBus4 = Bus.audio(s,1);
|
||||
~panBus4x = Bus.control(s,1);
|
||||
~panBus4y = Bus.control(s,1);
|
||||
~panBus4r = Bus.control(s,1);
|
||||
~panBus4y.value = 0.14; // set a fixed value to a bus
|
||||
~panBus4x.value = 0;
|
||||
~panBus4r.value = 10;
|
||||
|
||||
// 8chan reverb bus
|
||||
~revBus = Bus.audio(s,8);
|
||||
">>> loaded all busses".postln;
|
||||
|
||||
|
||||
"--- loading octoPanners ...".postln;
|
||||
~octoPanner1 = Synth("octoPanner", [\inBus, ~octoBus1, \outBus, ~revBus], addAction: \addToTail);
|
||||
~octoPanner1.map(\x, ~panBus1x);
|
||||
~octoPanner1.map(\y, ~panBus1y);
|
||||
~octoPanner1.map(\radius, ~panBus1r);
|
||||
|
||||
~octoPanner2 = Synth("octoPanner", [\inBus, ~octoBus2, \outBus, ~revBus], addAction: \addToTail);
|
||||
~octoPanner2.map(\x, ~panBus2x);
|
||||
~octoPanner2.map(\y, ~panBus2y);
|
||||
~octoPanner2.map(\radius, ~panBus2r);
|
||||
|
||||
~octoPanner3 = Synth("octoPanner", [\inBus, ~octoBus3, \outBus, ~revBus], addAction: \addToTail);
|
||||
~octoPanner3.map(\x, ~panBus3x);
|
||||
~octoPanner3.map(\y, ~panBus3y);
|
||||
~octoPanner3.map(\radius, ~panBus3r);
|
||||
|
||||
~octoPanner4 = Synth("octoPanner", [\inBus, ~octoBus4, \outBus, ~revBus], addAction: \addToTail);
|
||||
~octoPanner4.map(\x, ~panBus4x);
|
||||
~octoPanner4.map(\y, ~panBus4y);
|
||||
~octoPanner4.map(\radius, ~panBus4r);
|
||||
|
||||
|
||||
// 4 x stereo reverbs are fixed to outputs ([0,1][2,3][4,5][6,7]) not panners!
|
||||
~reverb = Synth("reverBusser", [\inBus, ~revBus, \outBus, 0], addAction: \addToTail);
|
||||
|
||||
|
||||
// some default oscilations of pan and reverb
|
||||
">>> cleaning up panner_x and panner_y control synths...".postln;
|
||||
~panner1y.free; ~panner2y.free; ~panner3y.free; ~panner4y.free;
|
||||
~panner1x.free; ~panner2x.free; ~panner3x.free; ~panner4x.free;
|
||||
|
||||
// REVERBS
|
||||
">>> cleaning up reverb busses and wet oscilators...".postln;
|
||||
~reverb1wetBus.free; // ~wetOsc.free; // clean up
|
||||
~reverb2wetBus.free; // ~wetOsc.free; // clean up
|
||||
~reverb3wetBus.free; // ~wetOsc.free; // clean up
|
||||
~reverb4wetBus.free; // ~wetOsc.free; // clean up
|
||||
~wetOsc1.free; ~wetOsc2.free; ~wetOsc3.free; ~wetOsc4.free;
|
||||
|
||||
">>> setting up reverb control buses and param oscilators...".postln;
|
||||
~reverb1wetBus = Bus.control(s, 1); // create control bus
|
||||
~reverb.map(\verb1wet, ~reverb1wetBus); // map an argument to control bus
|
||||
~reverb2wetBus = Bus.control(s, 1); // create control bus
|
||||
~reverb.map(\verb2wet, ~reverb2wetBus); // map an argument to control bus
|
||||
~reverb3wetBus = Bus.control(s, 1); // create control bus
|
||||
~reverb.map(\verb3wet, ~reverb3wetBus); // map an argument to control bus
|
||||
~reverb4wetBus = Bus.control(s, 1); // create control bus
|
||||
~reverb.map(\verb4wet, ~reverb4wetBus); // map an argument to control bus
|
||||
|
||||
~wetOsc1 = SynthDef(\randomVerb1, {Out.kr(~reverb1wetBus, LFNoise2.kr(1).range(0, 0.8)) }).play;
|
||||
~wetOsc2 = SynthDef(\randomVerb2, {Out.kr(~reverb2wetBus, LFNoise2.kr(1).range(0, 0.8)) }).play;
|
||||
~wetOsc3 = SynthDef(\randomVerb3, {Out.kr(~reverb3wetBus, LFNoise2.kr(1).range(0, 0.8)) }).play;
|
||||
~wetOsc4 = SynthDef(\randomVerb4, {Out.kr(~reverb4wetBus, LFNoise2.kr(1).range(0, 0.8)) }).play;
|
||||
|
||||
// ~wetOsc.free;
|
||||
// ~reverb.set(\verb1wet, 0);
|
||||
// ~reverb.set(\verb1wet, 1);
|
||||
// ~reverb.set(\verb2wet, 1);
|
||||
|
||||
// free all control synths for panning
|
||||
">>> freeing all control synths for panning...".postln;
|
||||
~panner1y.free;
|
||||
~panner2y.free;
|
||||
~panner3y.free;
|
||||
~panner4y.free;
|
||||
|
||||
~panner1x.free;
|
||||
~panner2x.free;
|
||||
~panner3x.free;
|
||||
~panner4x.free;
|
||||
|
||||
// in stereo all x pans are 0!
|
||||
">>> setting default values in control pan buses...".postln;
|
||||
~panBus1x.value = 0;
|
||||
~panBus2x.value = 0;
|
||||
~panBus3x.value = 0;
|
||||
~panBus4x.value = 0;
|
||||
|
||||
~panBus1y.value = 0;
|
||||
~panBus1r.value = 10;
|
||||
|
||||
~panBus2y.value = 0.28;
|
||||
~panBus2r.value = 10;
|
||||
|
||||
~panBus3y.value = 0;
|
||||
~panBus3r.value = 10;
|
||||
|
||||
~panBus4y.value = 0.28;
|
||||
~panBus4r.value = 10;
|
||||
|
||||
|
||||
// PANNERS
|
||||
// x=0:y=[ 0.00 / 0.28 / 0.57 / 0.85 ]
|
||||
// x=1:y=[ 1.00 / 0.71 / 0.43 / 0.14 ]
|
||||
|
||||
~panner1y = SynthDef(\randomPan1y, { Out.kr(~panBus1y, LFNoise1.kr(2).range(0,0.28))}).play;
|
||||
//~panner1y = SynthDef(\oscPan1y, { Out.kr(~panBus1y, SinOsc.kr(2).range(0,0.28))}).play;
|
||||
//~panner1y.free
|
||||
|
||||
~panner2y = SynthDef(\randomPan2y, { Out.kr(~panBus2y, LFNoise1.kr(2).range(0,0.28))}).play;
|
||||
//~panner2y = SynthDef(\oscPan2y, { Out.kr(~panBus2y, SinOsc.kr(2).range(0,0.28))}).play;
|
||||
//~panner2y.free
|
||||
|
||||
~panner3y = SynthDef(\randomPan3y, { Out.kr(~panBus3y, LFNoise1.kr(2).range(0,0.28))}).play;
|
||||
//~panner3y = SynthDef(\oscPan3y, { Out.kr(~panBus3y, SinOsc.kr(2).range(0,0.28))}).play;
|
||||
//~panner3y.free
|
||||
|
||||
~panner4y = SynthDef(\randomPan4y, { Out.kr(~panBus4y, LFNoise1.kr(2).range(0,0.28))}).play;
|
||||
//~panner4y = SynthDef(\oscPan4y, { Out.kr(~panBus4y, SinOsc.kr(2).range(0,0.28))}).play;
|
||||
//~panner4y.free
|
||||
|
||||
//
|
||||
|
||||
|
||||
|
||||
">>> setting verbDelayFX and ~reverBus...".postln;
|
||||
~reverbDelay.free;
|
||||
~reverBus.free;
|
||||
~reverBus = Bus.audio(s,2);
|
||||
~reverbDelay = Synth(\verbDelayFX, [\inBus, ~reverBus, \outBus, 0, \revWet, 1, \dlyWet, 1], addAction: \addAfter);
|
||||
//~reverbDelay.set(\revWet, 1);
|
||||
//~reverbDelay.set(\dlyWet, 1);
|
||||
|
||||
|
||||
|
||||
">>> finished loading all busses and control synths for panning etc ...".postln;
|
||||
"".postln;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
);
|
||||
|
327
rhizosphere.scd
327
rhizosphere.scd
|
@ -11,14 +11,20 @@
|
|||
██╔══██╗██╔══██║██║ ███╔╝ ██║ ██║╚════██║██╔═══╝ ██╔══██║██╔══╝ ██╔══██╗██╔══╝
|
||||
██║ ██║██║ ██║██║███████╗╚██████╔╝███████║██║ ██║ ██║███████╗██║ ██║███████╗
|
||||
╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚══════╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝╚══════╝
|
||||
*/
|
||||
|
||||
|
||||
*/
|
||||
|
||||
Server.default.waitForBoot {
|
||||
|
||||
// library path
|
||||
var libPath = PathName(thisProcess.nowExecutingPath.dirname +/+ "lib");
|
||||
|
||||
"\n\n\n=============================================================".postln;
|
||||
"\n>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>".postln;
|
||||
"--- R H I Z O S P H E R E -----".postln;
|
||||
">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n".postln;
|
||||
|
||||
// for each files in that lib folder
|
||||
libPath.filesDo({|afile|
|
||||
// tell me what you're executing:
|
||||
|
@ -27,8 +33,6 @@ Server.default.waitForBoot {
|
|||
// execute it:
|
||||
this.executeFile(afile.fullPath);
|
||||
});
|
||||
s.meter;
|
||||
s.plotTree;
|
||||
|
||||
});
|
||||
|
||||
|
@ -36,216 +40,56 @@ s.plotTree;
|
|||
s.meter;
|
||||
s.plotTree;
|
||||
|
||||
//free runaway synth:
|
||||
s.sendMsg(\n_free, 1553)
|
||||
|
||||
// octoPan busses //////////////
|
||||
(
|
||||
"\n\n\n=============================================================".postln;
|
||||
"\n>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>".postln;
|
||||
"--- R H I Z O S P H E R E -----".postln;
|
||||
">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n".postln;
|
||||
|
||||
|
||||
// free busses and panners when re-trying things?
|
||||
~octoBus1.free; ~octoBus2.free; ~octoBus3.free; ~octoBus4.free;
|
||||
~panBus1x.free; ~panBus1y.free; ~panBus1r.free;
|
||||
~panBus2x.free; ~panBus2y.free; ~panBus2r.free;
|
||||
~panBus3x.free; ~panBus3y.free; ~panBus3r.free;
|
||||
~panBus4x.free; ~panBus4y.free; ~panBus4r.free;
|
||||
~revBus.free;
|
||||
|
||||
// octoBus1 + panners and control busses:
|
||||
~octoBus1 = Bus.audio(s,1);
|
||||
~panBus1x = Bus.control(s,1);
|
||||
~panBus1y = Bus.control(s,1);
|
||||
~panBus1r = Bus.control(s,1);
|
||||
~panBus1y.value = 0.14; // set a fixed value to a bus
|
||||
~panBus1x.value = 0;
|
||||
~panBus1r.value = 1;
|
||||
|
||||
// octoBus2 + panners and control busses:
|
||||
~octoBus2 = Bus.audio(s,1);
|
||||
~panBus2x = Bus.control(s,1);
|
||||
~panBus2y = Bus.control(s,1);
|
||||
~panBus2r = Bus.control(s,1);
|
||||
~panBus2y.value = 0.14; // set a fixed value to a bus
|
||||
~panBus2x.value = 0;
|
||||
~panBus2r.value = 2;
|
||||
|
||||
// octoBus3 + panners and control busses:
|
||||
~octoBus3 = Bus.audio(s,1);
|
||||
~panBus3x = Bus.control(s,1);
|
||||
~panBus3y = Bus.control(s,1);
|
||||
~panBus3r = Bus.control(s,1);
|
||||
~panBus3y.value = 0.14; // set a fixed value to a bus
|
||||
~panBus3x.value = 0;
|
||||
~panBus3r.value = 2;
|
||||
|
||||
// octoBus4 + panners and control busses:
|
||||
~octoBus4 = Bus.audio(s,1);
|
||||
~panBus4x = Bus.control(s,1);
|
||||
~panBus4y = Bus.control(s,1);
|
||||
~panBus4r = Bus.control(s,1);
|
||||
~panBus4y.value = 0.14; // set a fixed value to a bus
|
||||
~panBus4x.value = 0;
|
||||
~panBus4r.value = 2;
|
||||
|
||||
// 8chan reverb bus
|
||||
~revBus = Bus.audio(s,8);
|
||||
">>> loaded all busses".postln;
|
||||
|
||||
|
||||
"--- loading octoPanners ...".postln;
|
||||
~octoPanner1 = Synth("octoPanner", [\inBus, ~octoBus1, \outBus, ~revBus], addAction: \addToTail);
|
||||
~octoPanner1.map(\x, ~panBus1x);
|
||||
~octoPanner1.map(\y, ~panBus1y);
|
||||
~octoPanner1.map(\radius, ~panBus1r);
|
||||
|
||||
~octoPanner2 = Synth("octoPanner", [\inBus, ~octoBus2, \outBus, ~revBus], addAction: \addToTail);
|
||||
~octoPanner2.map(\x, ~panBus2x);
|
||||
~octoPanner2.map(\y, ~panBus2y);
|
||||
~octoPanner2.map(\radius, ~panBus2r);
|
||||
|
||||
~octoPanner3 = Synth("octoPanner", [\inBus, ~octoBus3, \outBus, ~revBus], addAction: \addToTail);
|
||||
~octoPanner3.map(\x, ~panBus3x);
|
||||
~octoPanner3.map(\y, ~panBus3y);
|
||||
~octoPanner3.map(\radius, ~panBus3r);
|
||||
|
||||
~octoPanner4 = Synth("octoPanner", [\inBus, ~octoBus4, \outBus, ~revBus], addAction: \addToTail);
|
||||
~octoPanner4.map(\x, ~panBus4x);
|
||||
~octoPanner4.map(\y, ~panBus4y);
|
||||
~octoPanner4.map(\radius, ~panBus4r);
|
||||
|
||||
|
||||
// 4 x stereo reverbs are fixed to outputs ([0,1][2,3][4,5][6,7]) not panners!
|
||||
~reverb = Synth("reverBusser", [\inBus, ~revBus, \outBus, 0], addAction: \addToTail);
|
||||
|
||||
|
||||
// some default oscilations of pan and reverb
|
||||
">>> cleaning up panner_x and panner_y control synths...".postln;
|
||||
~panner1y.free; ~panner2y.free; ~panner3y.free; ~panner4y.free;
|
||||
~panner1x.free; ~panner2x.free; ~panner3x.free; ~panner4x.free;
|
||||
|
||||
// REVERBS
|
||||
">>> cleaning up reverb busses and wet oscilators...".postln;
|
||||
~reverb1wetBus.free; // ~wetOsc.free; // clean up
|
||||
~reverb2wetBus.free; // ~wetOsc.free; // clean up
|
||||
~reverb3wetBus.free; // ~wetOsc.free; // clean up
|
||||
~reverb4wetBus.free; // ~wetOsc.free; // clean up
|
||||
~wetOsc1.free; ~wetOsc2.free; ~wetOsc3.free; ~wetOsc4.free;
|
||||
|
||||
">>> setting up reverb control buses and param oscilators...".postln;
|
||||
~reverb1wetBus = Bus.control(s, 1); // create control bus
|
||||
~reverb.map(\verb1wet, ~reverb1wetBus); // map an argument to control bus
|
||||
~reverb2wetBus = Bus.control(s, 1); // create control bus
|
||||
~reverb.map(\verb2wet, ~reverb2wetBus); // map an argument to control bus
|
||||
~reverb3wetBus = Bus.control(s, 1); // create control bus
|
||||
~reverb.map(\verb3wet, ~reverb3wetBus); // map an argument to control bus
|
||||
~reverb4wetBus = Bus.control(s, 1); // create control bus
|
||||
~reverb.map(\verb4wet, ~reverb4wetBus); // map an argument to control bus
|
||||
|
||||
~wetOsc1 = SynthDef(\randomVerb1, {Out.kr(~reverb1wetBus, LFNoise2.kr(1).range(0, 0.8)) }).play;
|
||||
~wetOsc2 = SynthDef(\randomVerb2, {Out.kr(~reverb2wetBus, LFNoise2.kr(1).range(0, 0.8)) }).play;
|
||||
~wetOsc3 = SynthDef(\randomVerb3, {Out.kr(~reverb3wetBus, LFNoise2.kr(1).range(0, 0.8)) }).play;
|
||||
~wetOsc4 = SynthDef(\randomVerb4, {Out.kr(~reverb4wetBus, LFNoise2.kr(1).range(0, 0.8)) }).play;
|
||||
|
||||
// ~wetOsc.free;
|
||||
// ~reverb.set(\verb1wet, 0);
|
||||
// ~reverb.set(\verb1wet, 1);
|
||||
// ~reverb.set(\verb2wet, 1);
|
||||
|
||||
">>> finished loading all busses and control synths for panning etc ...".postln;
|
||||
"".postln;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
// P E R F O R M A N C E /////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// PANNERS
|
||||
// BUFFERS and RECORDERS
|
||||
// buffers are stored during server's boot, across CTRL-dot.
|
||||
b = Buffer.alloc(s, 44100 * 4.0, 1); // a four second 1 channel Buffer
|
||||
c = Buffer.alloc(s, 44100 * 4.0, 1); // a four second 1 channel Buffer
|
||||
d = Buffer.alloc(s, 44100 * 4.0, 1); // a four second 1 channel Buffer
|
||||
e = Buffer.alloc(s, 44100 * 4.0, 1); // a four second 1 channel Buffer
|
||||
|
||||
// x=0:y=[ 0.00 / 0.28 / 0.57 / 0.85 ]
|
||||
// x=1:y=[ 1.00 / 0.71 / 0.43 / 0.14 ]
|
||||
Synth(\recIn, [\bufnum, b]);
|
||||
b.normalize;
|
||||
Synth(\recIn, [\bufnum, c]);
|
||||
c.normalize;
|
||||
Synth(\recIn, [\bufnum, d]);
|
||||
d.normalize;
|
||||
Synth(\recIn, [\bufnum, e]);
|
||||
e.normalize;
|
||||
|
||||
( // free all control synths for panning
|
||||
~panner1y.free;
|
||||
~panner2y.free;
|
||||
~panner3y.free;
|
||||
~panner4y.free;
|
||||
b.plot
|
||||
c.plot
|
||||
d.plot
|
||||
e.plot
|
||||
// ============================================================================
|
||||
|
||||
~panner1x.free;
|
||||
~panner2x.free;
|
||||
~panner3x.free;
|
||||
~panner4x.free;
|
||||
)
|
||||
// granulatorz.
|
||||
~grainb = Synth(\bgrain, [\out, ~reverBus, \bufnum, b, \amp, 0.01]);
|
||||
~grainb.set(\amp, 0.5, \amplag, 10)
|
||||
~grainb.set(\rate, 2)
|
||||
~grainb.set(\out, ~octoBus1)
|
||||
~grainb.release(3)
|
||||
|
||||
// fixed values
|
||||
~grainc = Synth(\bgrain, [\out, ~reverBus, \bufnum, c, \amp, 0.01]);
|
||||
~grainc.set(\amp, 0.02, \amplag, 10)
|
||||
~grainc.set(\rate, 2)
|
||||
~grainc.release(10)
|
||||
|
||||
~panBus1x.value = 0;
|
||||
~panBus1y.value = 0;
|
||||
~panBus1r.value = 10;
|
||||
~graind = Synth(\bgrain, [\out, ~reverBus, \bufnum, d, \amp, 0.01]);
|
||||
~graind.set(\amp, 0.5, \amplag, 10)
|
||||
~graind.release(10)
|
||||
|
||||
~panner1y = SynthDef(\randomPan1y, { Out.kr(~panBus1y, LFNoise1.kr(2).range(0,1))}).play;
|
||||
~panner1y = SynthDef(\oscPan1y, { Out.kr(~panBus1y, SinOsc.kr(2).range(1,0))}).play;
|
||||
~panner1y.free
|
||||
~graine = Synth(\bgrain, [\out, ~reverBus, \bufnum, e, \amp, 0.01]);
|
||||
~graine.set(\amp, 0.1, \amplag, 10)
|
||||
~graine.release(10)
|
||||
|
||||
~panner1x = SynthDef(\pulsePan1x, { Out.kr(~panBus1x, LFPulse.kr(0.3).range(0,1))}).play;
|
||||
~panner1x.free
|
||||
//s.sendMsg(\n_free, 1598)
|
||||
//
|
||||
|
||||
~panBus2x.value = 0;
|
||||
~panBus2y.value = 0.28;
|
||||
~panBus2r.value = 1;
|
||||
|
||||
~panner2y = SynthDef(\randomPan2y, { Out.kr(~panBus2y, LFNoise1.kr(2).range(0,1))}).play;
|
||||
~panner2y = SynthDef(\oscPan2y, { Out.kr(~panBus2y, SinOsc.kr(2).range(1,0))}).play;
|
||||
~panner2y.free
|
||||
|
||||
~panner2x = SynthDef(\pulsePan2x, { Out.kr(~panBus2x, LFPulse.kr(0.3).range(0,1))}).play;
|
||||
~panner2x.free
|
||||
|
||||
//
|
||||
|
||||
|
||||
~panBus3x.value = 1;
|
||||
~panBus3y.value = 0.28;
|
||||
~panBus3r.value = 1;
|
||||
|
||||
~panner3y = SynthDef(\randomPan3y, { Out.kr(~panBus3y, LFNoise1.kr(2).range(0,1))}).play;
|
||||
~panner3y = SynthDef(\oscPan3y, { Out.kr(~panBus3y, SinOsc.kr(2).range(1,0))}).play;
|
||||
~panner3y.free
|
||||
|
||||
~panner3x = SynthDef(\pulsePan3x, { Out.kr(~panBus3x, LFPulse.kr(0.3).range(0,1))}).play;
|
||||
~panner3x.free
|
||||
|
||||
//
|
||||
|
||||
|
||||
~panBus4x.value = 1;
|
||||
~panBus4y.value = 0.28;
|
||||
~panBus4r.value = 1;
|
||||
|
||||
~panner4y = SynthDef(\randomPan4y, { Out.kr(~panBus4y, LFNoise1.kr(2).range(0,1))}).play;
|
||||
~panner4y = SynthDef(\oscPan4y, { Out.kr(~panBus4y, SinOsc.kr(2).range(1,0))}).play;
|
||||
~panner4y.free
|
||||
|
||||
~panner4x = SynthDef(\pulsePan4x, { Out.kr(~panBus4x, LFPulse.kr(0.3).range(0,1))}).play;
|
||||
~panner4x.free
|
||||
|
||||
//
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// SYNTHS ////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
// noise Cracle
|
||||
|
@ -253,13 +97,13 @@ s.plotTree;
|
|||
~noiseCr1 = Synth(\noiseCrackle, [\out, ~octoBus1, \fadeTime, 30, \lpfa, 1, \hpfa, 0 ]);
|
||||
~noiseCr1.set(\rq, 0.98);
|
||||
~noiseCr1.set(\lpfa, 1);
|
||||
~noiseCr1.set(\hpfa, 0);
|
||||
~noiseCr1.set(\gate, 0, \fadeTime, 1);
|
||||
~noiseCr1.set(\hpfa, 1);
|
||||
~noiseCr1.set(\gate, 0, \fadeTime, 10);
|
||||
~noiseCr1.release(1)
|
||||
~noiseCr1.free;
|
||||
|
||||
~noiseCr2 = Synth(\noiseCrackle, [\out, ~octoBus2, \fadeTime, 30, \lpfa, 1, \hpfa, 0 ]);
|
||||
~noiseCr2.set(\gate, 0, \fadeTime, 1);
|
||||
~noiseCr2.set(\gate, 0, \fadeTime, 20);
|
||||
~noiseCr2.free;
|
||||
|
||||
~noiseCr3 = Synth(\noiseCrackle, [\out, ~octoBus3, \fadeTime, 30, \lpfa, 0, \hpfa, 1 ]);
|
||||
|
@ -279,29 +123,33 @@ s.plotTree;
|
|||
|
||||
|
||||
~henonS1 = Synth(\henonSynth1, [\out, ~octoBus3, \amp, 0.4, \fadeTime, 4]);
|
||||
~henonS1.set(\amp, 0.05);
|
||||
~henonS1.set(\amp, 1);
|
||||
~henonS1.set(\hpff, 200);
|
||||
~henonS1.set(\lpff, 200);
|
||||
~henonS1.release(1);
|
||||
~henonS1.release(10);
|
||||
~henonS1.free;
|
||||
|
||||
~henonS2 = Synth(\henonSynth1, [\out, ~octoBus3, \amp, 0.4, \fadeTime, 4]);
|
||||
~henonS2.set(\amp, 0.05);
|
||||
~henonS2.set(\gate, 0, \fadeTime, 1);
|
||||
~henonS2 = Synth(\henonSynth1, [\out, ~octoBus4, \amp, 0.4, \fadeTime, 4]);
|
||||
~henonS2.set(\amp, 1);
|
||||
~henonS2.set(\out, ~octoBus4);
|
||||
~henonS2.set(\gate, 0, \fadeTime, 10);
|
||||
~henonS2.free;
|
||||
|
||||
~darkHenon1 = Synth(\henonLsynth2, [\out, ~octoBus4, \fadeTime, 10]);
|
||||
~darkHenon1.set(\gate, 0, \fadeTime, 3);
|
||||
~darkHenon1 = Synth(\henonLsynth2, [\out, ~octoBus1, \fadeTime, 10]);
|
||||
~darkHenon1.set(\gate, 0, \fadeTime, 10);
|
||||
~darkHenon1.set(\amp, 0.1);
|
||||
~darkHenon1.release(10);
|
||||
~darkHenon1.free;
|
||||
|
||||
~darkHenon2 = Synth(\henonLsynth2, [\out, ~octoBus4, \fadeTime, 10]);
|
||||
~darkHenon2 = Synth(\henonLsynth2, [\out, ~octoBus2, \fadeTime, 10]);
|
||||
~darkHenon2.set(\amp, 1);
|
||||
~darkHenon2.set(\gate, 0, \fadeTime, 3);
|
||||
~darkHenon2.release(30);
|
||||
~darkHenon2.free;
|
||||
|
||||
// SOIL
|
||||
|
||||
~soil1 = Synth(\granSoil, [\out, ~octoBus1, \sndbuf, ~forestSoilBuf, \dur, 0.0001 ,\fadeTime, 20, \amp, 0.8]);
|
||||
|
||||
~soil1durBus = Bus.control(s,1);
|
||||
~soil1durBus.value = 0.001;
|
||||
~soil1.map(\dur, ~soil1durBus);
|
||||
|
@ -309,6 +157,7 @@ s.plotTree;
|
|||
~soil1DurOsc = SynthDef( \soilDurOsc, {Out.kr(~soil1durBus, SinOsc.kr(0.012,1.5pi).range(0.0001, 0.05))} ).play;
|
||||
~soil1DurOsc.free;
|
||||
|
||||
~soil1.set(\amp, 0.5);
|
||||
~soil1.set(\gate, 0, \fadeTime, 15); // use envelope to fade out
|
||||
~soil1.release(15);
|
||||
~soil1.free;
|
||||
|
@ -325,19 +174,23 @@ s.plotTree;
|
|||
|
||||
//
|
||||
|
||||
~soil3 = Synth(\granSoil, [\out, ~octoBus2, \sndbuf, ~forestSoilBuf, \dur, 0.0001 ,\fadeTime, 20, \amp, 0.8]);
|
||||
~soil3 = Synth(\granSoil, [\out, ~octoBus3, \sndbuf, ~forestSoilBuf, \dur, 0.0001 ,\fadeTime, 20, \amp, 0.8]);
|
||||
~soil3durBus = Bus.control(s,1);
|
||||
~soil3durBus.value = 0.0001;
|
||||
~soil3.map(\dur, ~soil3durBus);
|
||||
~soil3DurOsc = SynthDef( \soilDurOsc, {Out.kr(~soil3durBus, SinOsc.kr(0.029,1.5pi).range(0.0001, 0.08))} ).play;
|
||||
~soil3DurOsc.free;
|
||||
|
||||
~soil3.release(15);
|
||||
|
||||
//
|
||||
|
||||
~soil4 = Synth(\granSoil, [\out, ~octoBus2, \sndbuf, ~forestSoilBuf, \dur, 0.0001 ,\fadeTime, 20, \amp, 0.8]);
|
||||
~soil4 = Synth(\granSoil, [\out, ~octoBus4, \sndbuf, ~forestSoilBuf, \dur, 0.0001 ,\fadeTime, 20, \amp, 0.8]);
|
||||
~soil4durBus = Bus.control(s,1);
|
||||
~soil4durBus.value = 0.01;
|
||||
~soil4.map(\dur, ~soil4durBus);
|
||||
~soil4DurOsc = SynthDef( \soilDurOsc, {Out.kr(~soil4durBus, SinOsc.kr(0.029,1.5pi).range(0.0001, 0.08))} ).play;
|
||||
~soil4DurOsc.free;
|
||||
|
||||
~soil4.release(15);
|
||||
|
||||
|
@ -380,16 +233,16 @@ var rel=0.1;
|
|||
~lorenzTrig1 = Synth(\lorenzTrigRing, [\out, ~octoBus1, \freq, 1400, \amp, 0.5, \fadeTime, 0]);
|
||||
~lorenzTrig1.set(\amp, 1); // use set fadeTime - set \gate = 0?
|
||||
~lorenzTrig1.release; // use set fadeTime - set \gate = 0?
|
||||
~lorenzTrig1.release(10); // use set fadeTime - set \gate = 0?
|
||||
~lorenzTrig1.release(30); // use set fadeTime - set \gate = 0?
|
||||
~lorenzTrig1.set(\fadeTime, 10, \gate, 0);
|
||||
~lorenzTrig1.free
|
||||
|
||||
~stdTrig1 = Synth(\stndTrigRing, [\out, ~octoBus2, \freq,1900, \amp,0.5,\fadeTime, 10]);
|
||||
~stdTrig1.release(10);
|
||||
~stdTrig1.release(30);
|
||||
~stdTrig1.free
|
||||
|
||||
~lorenzTrig2 = Synth(\lorenzTrigRing, [\out, ~octoBus3, \freq, 400, \amp, 0.3, \fadeTime, 10, \min, 5, \max, 20]);
|
||||
~lorenzTrig2.release(10);
|
||||
~lorenzTrig2.release(30);
|
||||
|
||||
~stdTrig2 = Synth(\stndTrigRing, [\freq, 70, \min, 0, \max, 2, \decay, 2, \ffreq, 200, \amp, 0.4, \out, ~octoBus4, \fadeTime, 20]) ;
|
||||
~stdTrig2.release(30);
|
||||
|
@ -420,8 +273,8 @@ var rel=0.1;
|
|||
|
||||
// 2110
|
||||
~fhnTrig2 = Synth(\fhnTrigRing, [\out, ~octoBus1, \freq, 2110, \amp, 0.5, \min, 2, \max, 20, \amp, 0.5, \fadeTime, 10]);
|
||||
~fhnTrig2.set(\ffreq, 8000)
|
||||
~fhnTrig2.release(10)
|
||||
~fhnTrig2.set(\ffreq, 8000, \ffreqlag, 20)
|
||||
~fhnTrig2.release(60)
|
||||
~fhnTrig2 = Node.basicNew(nodeID:1369)
|
||||
|
||||
|
||||
|
@ -440,9 +293,9 @@ var rel=0.1;
|
|||
|
||||
~soil1DurOsc = SynthDef( \soilDurOsc, {Out.kr(~soil1durBus, SinOsc.kr(0.012,1.5pi).range(0.0001, 0.05))} ).play;
|
||||
~soil1DurOsc.free;
|
||||
|
||||
~soil1.set(\amp, 0.1)
|
||||
~soil1.set(\gate, 0, \fadeTime, 15); // use envelope to fade out
|
||||
~soil1.release(15);
|
||||
~soil1.release(30);
|
||||
~soil1.free;
|
||||
|
||||
//
|
||||
|
@ -461,7 +314,7 @@ var rel=0.1;
|
|||
~henonS1.set(\amp, 0.90);
|
||||
~henonS1.set(\hpff, 1000);
|
||||
~henonS1.set(\lpff, 50);
|
||||
~henonS1.release(60);
|
||||
~henonS1.release(10);
|
||||
~henonS1.free;
|
||||
|
||||
//
|
||||
|
@ -481,15 +334,31 @@ s.sendMsg(\n_free, 1590)
|
|||
|
||||
|
||||
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
Loading…
Reference in New Issue