|
|
|
@ -4,7 +4,8 @@ b = Buffer.read(s, "/Users/lcoogan/snd/samples/scarlett/vocal backing.wav");
|
|
|
|
b = Buffer.read(s, "/Users/lcoogan/snd/live/2025-04-26.Basic_City_Brewery/trax/acheinu.wav");
|
|
|
|
b = Buffer.read(s, "/Users/lcoogan/snd/live/2025-04-26.Basic_City_Brewery/trax/acheinu.wav");
|
|
|
|
|
|
|
|
|
|
|
|
b = Buffer.read(s, "/Users/lcoogan/Music/Musicians/My Bloody Valentine/Loveless/05 When You Sleep.opus");
|
|
|
|
b = Buffer.read(s, "/Users/lcoogan/Music/Musicians/My Bloody Valentine/Loveless/05 When You Sleep.opus");
|
|
|
|
|
|
|
|
b = Buffer.read(s, "/home/lcoogan/snd/live/2025-04-26.Basic_City_Brewery/trax/04-Cantor_Samuel_Malavsky_Zechor.wav");
|
|
|
|
|
|
|
|
b = Buffer.read(s, "/home/lcoogan/snd/live/2025-04-26.Basic_City_Brewery/trax/zechor.wav");
|
|
|
|
|
|
|
|
|
|
|
|
b = Buffer.read(s,"/Users/lcoogan/snd/live/2025-04-26.Basic_City_Brewery/crawling-stems/lead.const.wav");
|
|
|
|
b = Buffer.read(s,"/Users/lcoogan/snd/live/2025-04-26.Basic_City_Brewery/crawling-stems/lead.const.wav");
|
|
|
|
|
|
|
|
|
|
|
|
@ -49,7 +50,7 @@ SynthDef(\pv_rectcomb, { |amp = 0.5|
|
|
|
|
|
|
|
|
|
|
|
|
// PV_MagSmear only
|
|
|
|
// PV_MagSmear only
|
|
|
|
SynthDef(\pv_magsmear, { |amp = 0.5|
|
|
|
|
SynthDef(\pv_magsmear, { |amp = 0.5|
|
|
|
|
var sig = PlayBuf.ar(1, b, BufRateScale.kr(b), loop: 1);
|
|
|
|
var sig = PlayBuf.ar(1, b, rate:0.5, loop: 1);
|
|
|
|
var chain = FFT(LocalBuf(1024), sig);
|
|
|
|
var chain = FFT(LocalBuf(1024), sig);
|
|
|
|
var smearAmt = LFNoise2.kr(0.1).range(5, 50);
|
|
|
|
var smearAmt = LFNoise2.kr(0.1).range(5, 50);
|
|
|
|
|
|
|
|
|
|
|
|
@ -104,7 +105,8 @@ Synth(\pv_rectcomb);
|
|
|
|
(
|
|
|
|
(
|
|
|
|
Pbind(
|
|
|
|
Pbind(
|
|
|
|
\instrument, \pv_brickwall, // Choose SynthDef
|
|
|
|
\instrument, \pv_brickwall, // Choose SynthDef
|
|
|
|
\amp, Pwhite(0.2, 0.8, inf), // Random amplitude (0.2 to 0.8)
|
|
|
|
// \amp, Pwhite(0.2, 0.8, inf), // Random amplitude (0.2 to 0.8)
|
|
|
|
|
|
|
|
\amp, 1,
|
|
|
|
\mod1, Pwhite(5, 40, inf), // Random mod1 value (5 to 40)
|
|
|
|
\mod1, Pwhite(5, 40, inf), // Random mod1 value (5 to 40)
|
|
|
|
\mod2, Pwhite(0.01, 0.3, inf), // Random mod2 value (0.01 to 0.3)
|
|
|
|
\mod2, Pwhite(0.01, 0.3, inf), // Random mod2 value (0.01 to 0.3)
|
|
|
|
\mod3, Pwhite(1, 10, inf), // Random mod3 value (1 to 10)
|
|
|
|
\mod3, Pwhite(1, 10, inf), // Random mod3 value (1 to 10)
|
|
|
|
@ -140,6 +142,7 @@ Pbind(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(
|
|
|
|
(
|
|
|
|
|
|
|
|
// hell yeah
|
|
|
|
Routine({
|
|
|
|
Routine({
|
|
|
|
loop {
|
|
|
|
loop {
|
|
|
|
// Random parameter values
|
|
|
|
// Random parameter values
|
|
|
|
@ -151,8 +154,8 @@ Routine({
|
|
|
|
var dur = Pseq([2, 4, 1, 3], inf).next; // Duration pattern
|
|
|
|
var dur = Pseq([2, 4, 1, 3], inf).next; // Duration pattern
|
|
|
|
|
|
|
|
|
|
|
|
// Create synth
|
|
|
|
// Create synth
|
|
|
|
Synth(\pv_rectcomb, [
|
|
|
|
Synth(\pv_magsmear, [
|
|
|
|
\amp, 0.5,
|
|
|
|
\amp, 1.5,
|
|
|
|
\mod1, mod1,
|
|
|
|
\mod1, mod1,
|
|
|
|
\mod2, mod2,
|
|
|
|
\mod2, mod2,
|
|
|
|
\mod3, mod3,
|
|
|
|
\mod3, mod3,
|
|
|
|
@ -160,15 +163,32 @@ Routine({
|
|
|
|
\mod5, mod5
|
|
|
|
\mod5, mod5
|
|
|
|
]);
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Synth(\pv_brickwall, [
|
|
|
|
|
|
|
|
\amp, 4.5,
|
|
|
|
|
|
|
|
\mod1, mod1,
|
|
|
|
|
|
|
|
\mod2, mod2,
|
|
|
|
|
|
|
|
\mod3, mod3,
|
|
|
|
|
|
|
|
\mod4, mod4,
|
|
|
|
|
|
|
|
\mod5, mod5
|
|
|
|
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Synth(\pv_rectcomb, [
|
|
|
|
|
|
|
|
\amp, 0.5,
|
|
|
|
|
|
|
|
\mod1, mod1,
|
|
|
|
|
|
|
|
\mod2, mod2,
|
|
|
|
|
|
|
|
\mod3, mod3,
|
|
|
|
|
|
|
|
\mod4, mod4,
|
|
|
|
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
|
|
// Wait for the duration
|
|
|
|
// Wait for the duration
|
|
|
|
1.wait; // Wait 1 second before the next iteration
|
|
|
|
20.wait; // Wait 1 second before the next iteration
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}).play;
|
|
|
|
}).play;
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
(
|
|
|
|
(
|
|
|
|
SynthDef(\pv_brickwall, { |amp = 0.5|
|
|
|
|
SynthDef(\pv_brickwall, { |amp = 0.5|
|
|
|
|
var sig = PlayBuf.ar(1, b, BufRateScale.kr(b), loop: 1);
|
|
|
|
var sig = PlayBuf.ar(1, b, rate:0.5, loop: 1);
|
|
|
|
var chain = FFT(LocalBuf(2048), sig);
|
|
|
|
var chain = FFT(LocalBuf(2048), sig);
|
|
|
|
chain = PV_BrickWall(chain, SinOsc.ar(5) + SinOsc.kr(0.1));
|
|
|
|
chain = PV_BrickWall(chain, SinOsc.ar(5) + SinOsc.kr(0.1));
|
|
|
|
sig = IFFT(chain.dup);
|
|
|
|
sig = IFFT(chain.dup);
|
|
|
|
@ -192,8 +212,8 @@ SynthDef(\pv_distorted_bass, { |amp = 0.5|
|
|
|
|
|
|
|
|
|
|
|
|
(
|
|
|
|
(
|
|
|
|
// PV_BrickWall + PV_RectComb with evolving complexity
|
|
|
|
// PV_BrickWall + PV_RectComb with evolving complexity
|
|
|
|
SynthDef(\pv_brickwall, { |amp = 0.5|
|
|
|
|
SynthDef(\pv_brickwall, { |amp = 80|
|
|
|
|
var sig = PlayBuf.ar(1, b, BufRateScale.kr(b), loop: 1);
|
|
|
|
var sig = PlayBuf.ar(1, b, rate:0.1, loop: 1);
|
|
|
|
var chain = FFT(LocalBuf(2048), sig);
|
|
|
|
var chain = FFT(LocalBuf(2048), sig);
|
|
|
|
|
|
|
|
|
|
|
|
// Modulation sources for evolving behavior
|
|
|
|
// Modulation sources for evolving behavior
|
|
|
|
@ -220,8 +240,8 @@ SynthDef(\pv_brickwall, { |amp = 0.5|
|
|
|
|
|
|
|
|
|
|
|
|
(
|
|
|
|
(
|
|
|
|
// PV_BrickWall + PV_RectComb + PV_MagShift + PV_Freeze
|
|
|
|
// PV_BrickWall + PV_RectComb + PV_MagShift + PV_Freeze
|
|
|
|
SynthDef(\pv_complex_fx, { |amp = 0.5, freeze = 0, shiftAmt = 0.2|
|
|
|
|
SynthDef(\pv_complex_fx, { |amp = 200, freeze = 0, shiftAmt = 0.2|
|
|
|
|
var sig = PlayBuf.ar(1, b, BufRateScale.kr(b), loop: 1);
|
|
|
|
var sig = PlayBuf.ar(1, b, rate:0.5, loop: 1);
|
|
|
|
var chain = FFT(LocalBuf(2048), sig);
|
|
|
|
var chain = FFT(LocalBuf(2048), sig);
|
|
|
|
|
|
|
|
|
|
|
|
// Modulation sources
|
|
|
|
// Modulation sources
|
|
|
|
@ -249,16 +269,16 @@ SynthDef(\pv_complex_fx, { |amp = 0.5, freeze = 0, shiftAmt = 0.2|
|
|
|
|
|
|
|
|
|
|
|
|
(
|
|
|
|
(
|
|
|
|
Routine({
|
|
|
|
Routine({
|
|
|
|
var amp = 0.5; // Start with a moderate amplitude
|
|
|
|
var amp = 5; // Start with a moderate amplitude
|
|
|
|
Synth(\pv_brickwall, [\amp, amp]);
|
|
|
|
Synth(\pv_brickwall, [\amp, amp]);
|
|
|
|
0.5.wait;
|
|
|
|
0.5.wait;
|
|
|
|
amp = amp * 0.8; // Decrease amplitude gradually
|
|
|
|
amp = amp * 5; // Decrease amplitude gradually
|
|
|
|
// Synth(\pv_distorted_bass, [\amp, amp]);
|
|
|
|
Synth(\pv_distorted_bass, [\amp, amp]);
|
|
|
|
1.wait;
|
|
|
|
1.wait;
|
|
|
|
amp = amp * 1.5; // Increase amplitude
|
|
|
|
amp = amp * 5; // Increase amplitude
|
|
|
|
Synth(\pv_brickwall, [\amp, amp]);
|
|
|
|
Synth(\pv_brickwall, [\amp, amp]);
|
|
|
|
0.1.wait;
|
|
|
|
0.1.wait;
|
|
|
|
Synth(\pv_complex_fx, [\amp, amp * 0.3]); // Lower volume for variation
|
|
|
|
Synth(\pv_complex_fx, [\amp, amp]); // Lower volume for variation
|
|
|
|
}).play;
|
|
|
|
}).play;
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|