segments added

master
Rob Canning 2023-01-12 13:21:42 +01:00
parent b9321ff9b1
commit fd40bdca22
9 changed files with 318 additions and 248 deletions

View File

@ -36,240 +36,3 @@ Pbindef(\m_1, \octave, ~o0); Pbindef(\m_2, \octave, 2);
Pbindef(\m_1, \dur, ~r4); Pbindef(\m_2, \dur, ~r0); Pbindef(\m_1, \dur, ~r4); Pbindef(\m_2, \dur, ~r0);
Pbindef(\m_1, \degree, ~ddd); Pbindef(\m_2, \degree, ~ddd); Pbindef(\m_1, \degree, ~ddd); Pbindef(\m_2, \degree, ~ddd);
// -------------------
// variation for piano webern op27 mvt3
// sustain ON - decay full
//~row0 = [3, 11, 10, 2, 1, 0, 6, 4, 7, 5, 9, 8];
~op = Scale.new(#[3, 11, 10, 2, 1, 0, 6, 4, 7, 5, 9, 8], name: "op27_III");
~vfp3 = Pseq(~row0, 4);
~vfp3_reverse = Pseq(~row0.reverse, 4);
~vfp2 = Pseq([4,5,1,3,0,2,8,9,10,6,7,11], 4);
~vfp2_reverse = Pseq([4,5,1,3,0,2,8,9,10,6,7,11].reverse, 4);
~fib = Pseq([2,3.5,8,13,21], 4); // four interations of fibonnaci duration sequence
~fibr = Pseq([2,3.5,8,13,21].reverse, 4); // counterpoint rhythmic inversion
// change from dur 8 to ~fib
Pbindef(\m_1, \dur, ~fib, \octave, 7, \scale,~s4,\degree,~vfp2, inf);
Pbindef(\m_2, \dur, ~fibr, \octave, 2, \scale,~s4,\degree,~vfp2_reverse, inf);
( Pdef(\m_1_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_1,
\ctlNum, 1, \control, Pexprand(77,127, inf) ,\dur, 1/16)).play(quant:4));
Pdef(\m_2_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_2, \ctlNum, 1, \control, Pexprand(77,127, inf), \dur, 1/16 )).play(quant:4);
// rhinosorous ///////////////////////////////////
TempoClock.default.tempo = 90/60;
~durs = [1/16,1/8, 3/16, 1/4, 1/3, 3/8, 1/2, 5/8, 2/3, 3/4, 7/8, 1, 5/4, 2]; //16 beats
~wdurs = Pwrand([1/8, 1/4, 1/3, 1/2, 2, 6, 10, Rest(1)],[50, 30, 20, 10, 35, 20 ,10, 30].normalizeSum, inf);
~wdurs1 = Pwrand([1/16, 1/8, 1/6, 1/4, 1],[50, 30, 20, 10, 20].normalizeSum, inf);
~drnd1 = Pconst(16, Pxrand(~durs, ~durs.size)); // 16 beats of rnd durs
~dgauss0 = Pfindur(16, Pgauss(0,1, inf) );
~op = Scale.new(#[3, 11, 10, 2, 1, 0, 6, 4, 7, 5, 9, 8], name: "op27_III");
~df = Pseq([1,1,3,1,1,1,5,1,2,1,8,1,13],1);
~durpat = Pseq([ // .sum to check
1,1,3,1,1,1,5,1,2,1,8,1,13,
Pconst(32, ~wdurs),
Pseq([Pn(1/16, 8), 4,3.5], 1), // 8
1,1,3,1,1,1,5,1,2,1,8,1,13,
Pseq([1/2, 1/2, 1/2, 1/6, 1/6, 1/6, 5], 4), // 28
Pseq([1/6,1/6,1/6,1/6,1/6,1/6, 3], 4), // 16
//Pseq([1/6,1/6,1/6,1/6,1/6,1/6], 4),
//Pseq([3/8, 1/8, 1/6, 1/6, 1/6, Rest(3), 2 ], 8),
Pconst(21, Pseq([5,3,5,8],1)),
Rest(32)
], 1);
~octptn = Pseq([
Pfin(13, Pn(4,inf)),
Pconst(32, Pn(7,inf)),
Pconst(8, Pn(3, inf)),
Pfin(13, Pn(4,inf)),
Pconst(28, Pn(7,inf)),
Pconst(16, Pn(5,inf)),
Pconst(21, Pn(4,inf)),
], inf);
//~deg = Pseq((0..11) ++ Pseq([8,9,10,11],3) ++ (11..0) ++ [\rest], 1);
//~deg = Pseq((0..11) ++ [\rest], 4);
~prime = Pseq( (0..11) , 1);
~retro = Pseq( (11..0) , 1);
~melodyA = Pseq([~prime, ~prime, ~retro], inf);
~melodyB = Pseq([~prime, ~retro, ~prime], inf);
Pbindef(\m_1, \dur, ~durpat, \octave, ~octptn, \scale, ~op, \degree,~melodyA);
Pbindef(\m_2, \dur, ~durpat, \octave, 3, \scale,~op, \degree,~melodyB, inf);
//Pchain
Pdef(\m_1).play(quant: 4); // TOP MOTHER
Pdef(\m_2).play(quant: 4); // TOP MOTHER
Pdef(\m_1).stop;
Pdef(\m_2).stop;
////////////////////////////////////
TempoClock.default.tempo = 30/60;
~drepeat = Pseq([
Pseq([0],16),
Pseq([7,8,9],4),
Pseq([9],16),
Pseq([1,3,5],5),
Pseq([2],16),
Pseq([8],16),
Pseq([10,9,4],6),
Pseq([10],16),
Pseq([10,11],8),
], 4);
~rp0 = 1/8;
~rp1 = Pseq([
1/8,
1/8,
1/16,
1/16,
1/16,
1/16,
1/8,
1/8,
1/16,
1/16,
1/16,
1/16 ], 1);
~rp2 = Pseq([
1/8,
1/8,
1/16,
1/16,
1/16,
1/16,
1/8,
1/8,
Rest(1)
],1);
~pr = Pseq([
Pseq([~rp0],16),
Pseq([~rp2],4),
Pseq([~rp0],16),
Pseq([~rp2],1),
Pseq([~rp1],4)],
4);
~pr2 = Pseq([
Pseq([~rp2],4),
Pseq([~rp0],16),
Pseq([~rp0],16),
Pseq([~rp2],1),
Pseq([~rp1],4)],
4);
Pbindef(\m_1, \scale,~s4,\degree,~drepeat,\octave, ~o1,\dur, ~pr );
Pbindef(\m_2, \scale,~s4,\degree,~drepeat,\octave, ~o3,\dur, ~pr2 );
Pbindef(\m_1, \octave, 4, \dur, ~r0 );
Pbindef(\m_2, \octave, 6, \dur, ~r0 );
/////////////////////////////////////////////////////
//// MINIMAL BAROQUE GROOVE
~r0 = Pn(1/8, 16);
TempoClock.default.tempo = 60/60;
~rx0 = Pwrand([1/8, 1/4, 1/2, 4],[80,50,20,20].normalizeSum, 1);
~rx1 = Pwrand([1/8, 1/4, 1/2, 1],[80,50,20,20].normalizeSum, 1);
~rx2 = Pwrand([1/8, 1/4, 1/2],[80,50,20].normalizeSum, 1);
~rx3 = Pwrand([1/8, 1/4],[90,30].normalizeSum, 1);
~rs = Pseq([
Pconst(32, Pseq([~rx0],inf)),
Pconst(32, Pseq([~r0],inf)),
/*Pconst(32, Pseq([~rx0],inf)),
Pseq([~rx2],32),
Pseq([~rx3],32),
Pseq([~r03],8),
Pseq([~r04],8),
Pseq([~r0],8),
Pseq([~r0],8),
Pseq([~r04],8),
//Pseq([~r16],8),
Pseq([~r0],inf),*/
],1);
~rb = Pseq([
Pconst(32, Pseq([~rx0],inf)),
Pconst(32, Pseq([~r0],inf)),
//
// Pseq([~rx0],32),
// Pseq([~rx1],32),
// Pseq([~rx2],32),
// Pseq([~rx3],32),
//
// Pseq([~r03],8),
// Pseq([~r04],8),
// Pseq([~r0],8),
// Pseq([~r0],8),
// Pseq([~r04],8),
// //Pseq([~r16],8),
// Pseq([~r0],inf),
],1);
Pbindef(\m_1, \scale,~s0,\degree,~ddd,\octave, ~oo,\dur,~rs );
Pbindef(\m_2, \scale,~s0,\degree,~ddd,\octave, ~o1,\dur,~rb );
Pdef(\m_1).play(quant: 4); // TOP MOTHER
Pdef(\m_2).play(quant: 4); // BTM MOTHER NOTEON
// CC Control Message 1 ---> TOP Mother32 ASSIGN OUT
( Pdef(\m_1_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_1,
\ctlNum, 1, \control, Pexprand(50,127, inf),\dur, 1/16)).play(quant:4));
// CC Control Message 1 ---> BOTTOM Mother32 ASSIGN OUT
Pdef(\m_2_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_2, \ctlNum, 1, \control, Pexprand(77,127, inf), \dur, 1/8 )).play(quant:4);
// quasi-extended serialism
Pbindef(\m_1, \scale,~s4,\degree,~d6,\octave,~o3,\dur,~phrase);
Pbindef(\m_2, \scale,~s4,\degree,~d6,\octave,~o1,\dur,~phrase);
// chiptune minmalismo in melodic minor /////////////////////////////// r 0,1,3
Pbindef(\m_1, \scale,~s0,\degree,~d4,\octave,7,\dur,~rrr );
Pbindef(\m_2, \scale,~s0,\degree,~d4,\octave,~o3,\dur,~rrr );
////////$$$/////////
Pbindef(\m_1, \octave, 1, \scale, ~s3 )
Pbindef(\m_2, \scale,~s0, \mtranspose,0)

View File

@ -18,4 +18,6 @@ Pdef(\m_2, Pbind( \type, \midi, \midicmd, \noteOn, \midiout, ~m32_2)).play(quan
\ctlNum, 1, \control, Pexprand(72,127, inf), \dur, ~r1)).play(quant:4)); \ctlNum, 1, \control, Pexprand(72,127, inf), \dur, ~r1)).play(quant:4));
// CC Control Message 1 ---> BOTTOM Mother32 ASSIGN OUT // CC Control Message 1 ---> BOTTOM Mother32 ASSIGN OUT
Pdef(\m_2_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_2, \ctlNum, 1, \control, Pexprand(77,127, inf), \dur, 1/8 )).play(quant:4); Pdef(\m_2_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_2, \ctlNum, 1, \control, Pexprand(77,127, inf), \dur, 1/8 )).play(quant:4);

View File

@ -61,16 +61,6 @@
1/16, 1/16,
],1); ],1);
~r0 = Pseq([
1/8,
1/8,
1/8,
1/8,
1/8,
1/8,
1/8,
1/8,
],1);
~r01 = Pseq([ ~r01 = Pseq([
1/8, 1/8,

View File

@ -0,0 +1,45 @@
// quasi-extended serialism
Pbindef(\m_1, \scale,~s4,\degree,~d6,\octave,~o3,\dur,~phrase);
Pbindef(\m_2, \scale,~s4,\degree,~d6,\octave,~o1,\dur,~phrase);
// chiptune minmalismo in melodic minor /////////////////////////////// r 0,1,3
~s1 = Scale.melodicMinor;
//c = Place(#[0, 0, [0, 4, 7], [1, 5, 8], [2, 6, 9]], inf) + 67;
~op1 = Scale.new(#[4,5,1,3,0,2,8,9,10,6,7,11], name: "op27_I");
Pbindef(\m_1, \scale,~s1,\degree,~d4,\octave,7,\dur,~rrr );
Pbindef(\m_2, \scale,~s1,\degree,~d4,\octave,~o3,\dur,~rrr );
//////////////////////////////////
~d = Pseq((0..7), inf);
~r = Place([1/8, 1/4, 1/8, 1/8, [1/4,1,2]], inf);
~op1 = Scale.new(#[4,5,1,3,0,2,8,9,10,6,7,11], name: "op27_I");
Pbindef(\m_1, \scale,~op1,
\degree,~d,
\octave,7,
\dur, ~r
);
Pbindef(\m_2, \scale,~op1,
\degree,~d,
\octave,~o3,
\dur, ~r
);
//////////////////////////////////////

View File

@ -0,0 +1,40 @@
// variation for piano webern op27 mvt3
// sustain ON - decay full
//~row0 = [3, 11, 10, 2, 1, 0, 6, 4, 7, 5, 9, 8];
~s3 = Scale.whole;
~s4 = Scale.chromatic;
TempoClock.default.tempo = 60/60;
~op = Scale.new(#[3, 11, 10, 2, 1, 0, 6, 4, 7, 5, 9, 8], name: "op27_III");
~op1 = Scale.new(#[4,5,1,3,0,2,8,9,10,6,7,11], name: "op27_I");
~vfp3 = Pseq(~row0, 4);
~vfp3_reverse = Pseq(~row0.reverse, 4);
~vfp2 = Pseq((0..11), 1);
~vfp2_reverse = Pseq((11..0), 1);
~fib = Pseq([2,3.5,8,13,21], 4); // four interations of fibonnaci duration sequence
~fibr = Pseq([2,3.5,8,13,21].reverse, 4); // counterpoint rhythmic inversion
// change from dur 8 to ~fib
Pbindef(\m_1, \dur, ~fib, \octave, 7, \scale,~op1, \degree,~vfp2, inf);
Pbindef(\m_2, \dur, ~fibr, \octave, 2, \scale,~op1, \degree,~vfp2_reverse, inf);
( Pdef(\m_1_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_1,
\ctlNum, 1, \control, Pexprand(77,127, inf) ,\dur, 1/16)).play(quant:4));
Pdef(\m_2_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_2, \ctlNum, 1, \control, Pexprand(77,127, inf), \dur, 1/16 )).play(quant:4);
Pdef(\m_1).play(quant: 4); Pdef(\m_1_CC).play(quant:4); // TOP MOTHER
Pdef(\m_2).play(quant: 4); Pdef(\m_2_CC).play(quant:4); // BTM MOTHER NOTEON
Pdef(\m_1).stop; Pdef(\m_1_CC).stop;
Pdef(\m_2).stop; Pdef(\m_2_CC).stop;

View File

@ -0,0 +1,67 @@
//// MINIMAL BAROQUE GROOVE
~r0 = Pn(1/8, 16);
TempoClock.default.tempo = 60/60;
~rx0 = Pwrand([1/8, 1/4, 1/2, 4],[80,50,20,20].normalizeSum, 1);
~rx1 = Pwrand([1/8, 1/4, 1/2, 1],[80,50,20,20].normalizeSum, 1);
~rx2 = Pwrand([1/8, 1/4, 1/2],[80,50,20].normalizeSum, 1);
~rx3 = Pwrand([1/8, 1/4],[90,30].normalizeSum, 1);
~rs = Pseq([
/* Pconst(32, Pseq([~rx0],inf)),
Pconst(32, Pseq([~r3],inf)),
Pconst(32, Pseq([~r3],inf)),
Pconst(32, Pseq([~r04],inf)),*/
Pconst(64, Pseq([~r0],inf)),
/*Pconst(32, Pseq([~rx0],inf)),
Pseq([~rx2],32),
Pseq([~rx3],32),
Pseq([~r03],8),
Pseq([~r04],8),
Pseq([~r0],8),
Pseq([~r0],8),
Pseq([~r04],8),
//Pseq([~r16],8),
Pseq([~r0],inf),*/
],1);
~rb = Pseq([
/* Pconst(32, Pseq([~rx0],inf)),
Pconst(32, Pseq([~r0],inf)),
Pconst(32, Pseq([~r04],inf)),
Pconst(32, Pseq([~r03],inf)),*/
Pconst(64, Pseq([~r0],inf)),
//
// Pseq([~rx0],32),
// Pseq([~rx1],32),
// Pseq([~rx2],32),
// Pseq([~rx3],32),
//
// Pseq([~r03],8),
// Pseq([~r04],8),
// Pseq([~r0],8),
// Pseq([~r0],8),
// Pseq([~r04],8),
// //Pseq([~r16],8),
// Pseq([~r0],inf),
],1);
Pbindef(\m_1, \scale,~s0,\degree,~ddd,\octave, ~o3,\dur,~rs );
Pbindef(\m_2, \scale,~s0,\degree,~ddd,\octave, ~o1,\dur,~rb );
Pdef(\m_1).play(quant: 4); // TOP MOTHER
Pdef(\m_2).play(quant: 4); // BTM MOTHER NOTEON
// CC Control Message 1 ---> TOP Mother32 ASSIGN OUT
( Pdef(\m_1_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_1,
\ctlNum, 1, \control, Pexprand(50,127, inf),\dur, 1/16)).play(quant:4));
// CC Control Message 1 ---> BOTTOM Mother32 ASSIGN OUT
Pdef(\m_2_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_2, \ctlNum, 1, \control, Pexprand(77,127, inf), \dur, 1/8 )).play(quant:4);

View File

@ -0,0 +1,65 @@
// rhinosorous ///////////////////////////////////
TempoClock.default.tempo = 90/60;
~durs = [1/16,1/8, 3/16, 1/4, 1/3, 3/8, 1/2, 5/8, 2/3, 3/4, 7/8, 1, 5/4, 2]; //16 beats
~wdurs = Pwrand([1/8, 1/4, 1/3, 1/2, 2, 6, 10, Rest(1)],[50, 30, 20, 10, 35, 20 ,10, 30].normalizeSum, inf);
~wdurs1 = Pwrand([1/16, 1/8, 1/6, 1/4, 1],[50, 30, 20, 10, 20].normalizeSum, inf);
~drnd1 = Pconst(16, Pxrand(~durs, ~durs.size)); // 16 beats of rnd durs
~dgauss0 = Pfindur(16, Pgauss(0,1, inf) );
~op = Scale.new(#[3, 11, 10, 2, 1, 0, 6, 4, 7, 5, 9, 8], name: "op27_III");
~df = Pseq([1,1,3,1,1,1,5,1,2,1,8,1,13],1);
~durpat = Pseq([ // .sum to check
1,1,3,1,1,1,5,1,2,1,8,1,13,
Pconst(32, ~wdurs),
Pseq([Pn(1/16, 8), 4,3.5], 1), // 8
1,1,3,1,1,1,5,1,2,1,8,1,13,
Pseq([1/2, 1/2, 1/2, 1/6, 1/6, 1/6, 5], 4), // 28
Pseq([1/6,1/6,1/6,1/6,1/6,1/6, 3], 4), // 16
//Pseq([1/6,1/6,1/6,1/6,1/6,1/6], 4),
//Pseq([3/8, 1/8, 1/6, 1/6, 1/6, Rest(3), 2 ], 8),
Pconst(21, Pseq([5,3,5,8],1)),
Rest(32)
], 1);
~octptn = Pseq([
Pfin(13, Pn(4,inf)),
Pconst(32, Pn(7,inf)),
Pconst(8, Pn(3, inf)),
Pfin(13, Pn(4,inf)),
Pconst(28, Pn(7,inf)),
Pconst(16, Pn(5,inf)),
Pconst(21, Pn(4,inf)),
], inf);
//~deg = Pseq((0..11) ++ Pseq([8,9,10,11],3) ++ (11..0) ++ [\rest], 1);
//~deg = Pseq((0..11) ++ [\rest], 4);
~prime = Pseq( (0..11) , 1);
~retro = Pseq( (11..0) , 1);
~melodyA = Pseq([~prime, ~prime, ~retro], inf);
~melodyB = Pseq([~prime, ~retro, ~prime], inf);
Pbindef(\m_1, \dur, ~durpat, \octave, ~octptn, \scale, ~op, \degree,~melodyA);
Pbindef(\m_2, \dur, ~durpat, \octave, 3, \scale,~op, \degree,~melodyB, inf);
//Pchain
Pdef(\m_1).play(quant: 4); // TOP MOTHER
Pdef(\m_2).play(quant: 4); // TOP MOTHER
Pdef(\m_1).stop;
Pdef(\m_2).stop;
////////////////////////////////////

View File

@ -0,0 +1,31 @@
/// SERIAL NOISE INJECTION
// VCF MOD 11oc SUS ON DECAY 9oc
// NOISE MIX UP
~d = Place([0,0,0,0,0,0,0,1,2,3, [0,1,2,3], [2,3,4], 5,6,7, [8,9,10,11], 11,11,11,11,11 ], inf);
~r = Place([1/8, 1/8, 1/8, 1/8, [1/4,1/2, 1, Pn(1/8, 16) ], [1/6, 6] ], inf);
~op1 = Scale.new(#[4,5,1,3,0,2,8,9,10,6,7,11], name: "op27_I");
Pbindef(\m_1, \scale,~op1,
\degree,~d,
\octave, 6,
\dur, ~r
);
Pbindef(\m_2, \scale,~op1,
\degree, ~d,
\octave, Pseq([
Pconst(32, Pn(2,inf)),
Pconst(32, Pn(3,inf))], inf),
\dur, ~r
);
( Pdef(\m_1_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_1,
\ctlNum, 1, \control, Pexprand(77,127, inf) ,\dur, 1/16)).play(quant:4));
Pdef(\m_2_CC, Pbind( \type, \midi, \midicmd, \control, \midiout, ~m32_2, \ctlNum, 1, \control, Pexprand(90,127, inf), \dur, 1/16 )).play(quant:4);
//////////////////////////////////////

View File

@ -0,0 +1,67 @@
TempoClock.default.tempo = 30/60;
~drepeat = Pseq([
Pseq([0],16),
Pseq([7,8,9],4),
Pseq([9],16),
Pseq([1,3,5],5),
Pseq([2],16),
Pseq([8],16),
Pseq([10,9,4],6),
Pseq([10],16),
Pseq([10,11],8),
], 4);
~rp0 = 1/8;
~rp1 = Pseq([
1/8,
1/8,
1/16,
1/16,
1/16,
1/16,
1/8,
1/8,
1/16,
1/16,
1/16,
1/16 ], 1);
~rp2 = Pseq([
1/8,
1/8,
1/16,
1/16,
1/16,
1/16,
1/8,
1/8,
Rest(1)
],1);
~pr = Pseq([
Pseq([~rp0],16),
Pseq([~rp2],4),
Pseq([~rp0],16),
Pseq([~rp2],1),
Pseq([~rp1],4)],
4);
~pr2 = Pseq([
Pseq([~rp2],4),
Pseq([~rp0],16),
Pseq([~rp0],16),
Pseq([~rp2],1),
Pseq([~rp1],4)],
4);
Pbindef(\m_1, \scale,~s4,\degree,~drepeat,\octave, ~o1,\dur, ~pr );
Pbindef(\m_2, \scale,~s4,\degree,~drepeat,\octave, ~o3,\dur, ~pr2 );
Pbindef(\m_1, \octave, 4, \dur, ~r0 );
Pbindef(\m_2, \octave, 6, \dur, ~r0 );
/////////////////////////////////////////////////////