Browse Source

worked on something based on TermanWang

main
Luka Prinčič 9 months ago
parent
commit
b41cd6bf85
1 changed files with 120 additions and 2 deletions
  1. +120
    -2
      scd/octopoda.scd

+ 120
- 2
scd/octopoda.scd View File

@ -164,16 +164,86 @@ var timeLine;
//(
//var timeLine;
/*
timeLine = Routine {
"--- starting main routine ...".postln;
SynthDef(\tw, {
//Pan2.ar(FreeVerb.ar(
arg outBus;
var snd, rev, z, y;
snd = 0.5 * TermanWang.ar(
input: 2.0 + SinOsc.ar(
LFNoise1.kr(LFNoise0.kr(LFNoise0.kr(1).range(10,0.1)).range(10,0.1)).exprange(10,10000), 0,
LFNoise1.kr(LFNoise0.kr(LFNoise0.kr(1).range(10,0.1)).range(10,0.1)).exprange(0.1,100.0)),
reset: Impulse.kr(LFNoise1.kr(0.1).exprange(1,10000, 'exponential')),
ratex: 0.2,
ratey:0.2,
alpha:2.0,
beta:2.0,
eta:1.0,
initx:LFNoise1.kr(LFNoise0.kr(LFNoise0.kr(1).range(10,0.1)).range(10,0.1)).range(0.4,1.2),
inity:LFNoise1.kr(LFNoise0.kr(LFNoise0.kr(1).range(10,0.1)).range(10,0.1)).range(2.0,4.0)
);
snd = LeakDC.ar(snd);
snd = snd * LFPulse.kr(LFNoise0.kr(0.4).range(0.01,0.1), width:LFNoise0.kr(0.5).exprange(0.01,0.1));
// reverb predelay time :
z = DelayN.ar(snd*100, 0.048);
// 7 length modulated comb delays in parallel :
y = Mix.ar(Array.fill(7,{ CombL.ar(z, 0.1, LFNoise1.kr(0.01, 0.02, 0.022), 15) }));
// two parallel chains of 4 allpass delays (8 total) :
4.do({ y = AllpassN.ar(y, 0.020, [0.050.rand, 0.050.rand], 1) });
rev = Limiter.ar(y, LFNoise1.kr(0.1).exprange(0.01, 0.3)-0);
snd = snd * LFNoise1.kr(0.05).range(0.1,1);
snd = snd + rev;
snd = LeakDC.ar(snd);
snd = HPF.ar(snd, 300);
Out.ar(outBus, snd);
}).add;
1.wait;
~tw.free;
~tw = Synth(\tw, [\outBus, ~octoBus1]);
~panBus1y.value = 0; // set a fixed value to a bus
~panBus1x.value = 0;
~panBus1r.value = 0.1;
1.wait;
~tw2.free;
~tw2 = Synth(\tw, [\outBus, ~octoBus2]);
~panBus2y.value = 0.28; // set a fixed value to a bus
~panBus2x.value = 0;
~panBus2r.value = 0.1;
1.wait;
~tw3.free;
~tw3 = Synth(\tw, [\outBus, ~octoBus3]);
~panBus2y.value = 1; // set a fixed value to a bus
~panBus2x.value = 0;
~panBus2r.value = 0.001;
1.wait;
~tw4.free;
~tw4 = Synth(\tw, [\outBus, ~octoBus4]);
~panBus2y.value = 1; // set a fixed value to a bus
~panBus2x.value = 0;
~panBus2r.value = 0.001;
"--- end of the TIMELINE ---".postln
};
timeLine.play;
*/
);
@ -181,6 +251,10 @@ timeLine.play;
// testing stuff! ///////////////////////////////////////////////////////////////////////////////////////
// do stuff with panning:
"--- starting panner1y sin Oscilation ...".postln;
~panner1y = SynthDef(\sinPanY1, { Out.kr(~panBus1y, SinOsc.kr(0.01).range(0.3,0.5))}).play;
@ -214,6 +288,50 @@ timeLine.play;
// ... etc /////////////////////////////////////////////////////////////////////////////////
Fhn2DC
Fhn2DL
Fhn2DN
FitzHughNagumo.ar
TermanWang.ar
{Out.ar(0,Pan2.ar(0.5*TermanWang.ar(2.0,Impulse.kr(MouseX.kr(1,1000)),0.1,0.01,1.0,1.0,1.0,MouseX.kr(0.4,1.2), MouseY.kr(2.0,4.0)),0.0))}.play;
{Out.ar(0,Pan2.ar(0.5*TermanWang.ar(LFNoise1.ar(LFNoise0.kr(0.5,500,500),1.0,3.0),Impulse.kr(MouseX.kr(1,10000, 'exponential')),0.01,0.01,1.0,1.0,1.0,MouseX.kr(0.4,1.2), MouseY.kr(2.0,4.0)),0.0))}.play;
{Out.ar(0,Pan2.ar(FreeVerb.ar(0.5*TermanWang.ar(2.0+ SinOsc.ar(MouseX.kr(10,10000,'exponential'),0,MouseY.kr(0.1,100.0,'exponential')),Impulse.kr(MouseX.kr(1,10000, 'exponential')),0.01,0.01,1.0,1.0,1.0,MouseX.kr(0.4,1.2), MouseY.kr(2.0,4.0)),0.5)))}.play;
Ndef(\tw).clear
Ndef(\tw).play
Ndef(\dneu).play;
Ndef(\dneu).stop;
(
SynthDef(\dneumod, {
arg outBus;
var dt, module, m, snd;
dt = 0.1;
module = Dneuromodule(2,
theta: [LFNoise0.kr(0.2).range(-2, 2), LFNoise0.kr(0.3).range(-2, 2)],
x: [0.1, 0.3],
weights: [-3, 2, -2, 0]
);
m = Duty.ar(dt, 0, module).lag3(dt/40);
snd = SinOsc.ar(m * 1400 + 1600) * 0.8;
snd = HPF.ar(snd, 200);
snd = snd * LFPulse.kr(LFNoise0.kr(0.4).range(0.1,0.8), width:LFNoise0.kr(0.4).exprange(0.1,1));
snd = Limiter.ar(snd, 0.8);
Out.ar(outBus, snd);
}).add;
)
(
SynthDef(\fhnTrigRing, {
arg out=0, freq=1000, min=1, max=10, decay=0.1, ffreq=1000, amp=1, gate=1, fadeTime=1;


Loading…
Cancel
Save