first draft of score

main
Michael Winter 7 years ago
parent 536af04d47
commit 5d4a27981a

@ -9,7 +9,7 @@ SynthDef(\flicker, { |automate = 1, bufs = #[0, 1, 2, 3, 4, 5, 6, 7, 8],
// end times / fade outs (must be same length as fadeInTimes with fadeInTimes[i] < fadeOutTimes[i])
var fadeOutTimes = [47, 106] * 60;
// These are the times to wake up with a flourish of activity and the reading of an entry in the journal
var wakeTimes = [4, 9, 17, 24, 34, 44, 53, 57, 73, 97, 101, 106] * 60;
var wakeTimes = [4, 9, 17, 24, 34, 44, 53, 57, 73, 97, 101] * 60;
// These are the frequency ratios of the ensemble parts
var freqRatios = [2, 3/2, 5/4, 7/4, 11/8, 13/8, 17/16, 19/16, 23/16];
// Triggers
@ -34,7 +34,7 @@ SynthDef(\flicker, { |automate = 1, bufs = #[0, 1, 2, 3, 4, 5, 6, 7, 8],
// Triggers for wakeTimes
wakeUpTrigs = Select.kr(automate, [InTrig.kr(wakeTrigBusNum), timedTrigger.value(wakeTimes)]);
//~~~~~ Rich-get-richer Algorithm ~~~~~
//~~~~~ Rich-Get-Richer Algorithm ~~~~~
// Update resolution
pulse = Impulse.kr(30);
// State of consciousness: asleep or awake; a wake up lasts 60 seconds plus a bit of a tail
@ -55,7 +55,7 @@ SynthDef(\flicker, { |automate = 1, bufs = #[0, 1, 2, 3, 4, 5, 6, 7, 8],
// Feedback binary representation
LocalOut.kr({|i| (i <= selects) * (selects <= i) } ! 9);
//~~~~~ Control signals ~~~~~
//~~~~~ Control Signals ~~~~~
// The norms are basically the amount of energy to each element
energy = norms;
// In a toy model manner, this mimics voltage to the system
@ -87,10 +87,10 @@ SynthDef(\flicker, { |automate = 1, bufs = #[0, 1, 2, 3, 4, 5, 6, 7, 8],
// Final mix currently set to output stereo where the multiplier is the final output level
// Send to separate channel for more control of the indivuals sounds (e.g. with a mixer)
// The lamentations of a 50 / 50 chance of sounding at all
Out.ar([0,1], Mix.new(lamentations) * fadeInOutEnv * wakeEnv * 0.75 * TIRand.kr(0, 1, wakeUpTrigs));
Out.ar([0,1], Mix.new(lamentations) * fadeInOutEnv * wakeEnv * 0.8 * TIRand.kr(0, 1, wakeUpTrigs));
Out.ar([0,1], Mix.new(hums) * fadeInOutEnv * wakeEnv * 0.075);
Out.ar([0,1], Mix.new(ensemble) * fadeInOutEnv * wakeEnv * 0.125);
Out.ar([0,1], Mix.new(drone) * fadeInOutEnv * 0.25);
Out.ar([0,1], Mix.new(ensemble) * fadeInOutEnv * wakeEnv * 0.12);
Out.ar([0,1], Mix.new(drone) * fadeInOutEnv * 0.2);
//~~~~~ Visualization Control ~~~~~
// Send signals to visualizer (these could be sent and scaled appropriated to control real lights)

@ -43,7 +43,8 @@ projectionWin.drawFunc = {
Pen.addOval(innerSquare);
Pen.fillRadialGradient(innerSquare.center, innerSquare.center,
(innerSquare.width / 16), (innerSquare.width / 2),
Color.black.blend(Color.new255(255, 214, 170, 255), pow(blend[(i * 9) + j], 0.5)), Color.black);
Color.black.blend(Color.new255(255, 214, 170, 255), pow(blend[(i * 9) + j], 0.5)),
Color.black);
} ! 9 } ! 2
};
projectionWin.refresh;

Loading…
Cancel
Save