Commit 031b56f2 authored by Kenneth Flak's avatar Kenneth Flak

kullophone

parent 10721b7b
/home/kf/mySamples/kullophone
\ No newline at end of file
(
~root = "/home/kf/sc/100-sketches";
// ~root = "/home/kf/sc/100-sketches";
~root = PathName(thisProcess.nowExecutingPath).pathOnly;
~sketchdir = ~root+/+"sketches";
~sk = Dictionary.new;
~skGain = Dictionary.new;
......@@ -97,3 +99,4 @@ s.waitForBoot({
// s.record("/home/kf/Videos/100-sketches-March/audio/angelSketchSuperCollider" ++ Date.getDate.stamp ++".wav");
// s.stopRecording;
# Potential sketches and their usage
## Tree
mbFM (brass-like sounds, works well together with mbWalkGravel)
mbWalkGravel
mbShh
mbTreeperculator
stormulator (into the depths kind of a thing, distorted whispers)
## Balancing Act on Water - on a stone, very still
focus Külli no 3
## Sand - Thinking Space On the Knees
mbBreath (granular, semi-percussive breath sounds) Külli no 1
## Water
mbArpeggiator
mbFlutter Külli no 4
mbFM (brass-like sounds)
mbFMdrone (steppy)
mbSineFB
metals
runningWater (clean water sound, no processing)
unisonoBubbles
## Grassy/bushy something
mbLeavulator
stormulator (into the depths kind of a thing, distorted whispers)
velcrolator
## In the darkness, maybe in the water between high grass
mbScary
## Close-up handstand
mbTwinkle
trumpetulator
## Forresty
coronaWhisperGrain (elvish whispers) Külli no 2
rainRingModGrain
mbFlutter (fast, squirrely)
## General background sound
rainulator
## Other stuff
velcroClean
## Deprecated, needs rewriting
mbTalkulator
guitardeltasingle
guitarDreams
fmDirection
sea
seaForest
......@@ -8,7 +8,7 @@ hport = 57120
[serial]
baudrate = 57600
serial = /dev/ttyUSB1
serial = /dev/ttyUSB0
apimode = True
[hive]
......
(
~cuelist = CuePlayer.new();
~cuelist.add({"juuuust checking".postln});
~cuelist.add(timeline:
[
// 0, {s.record("~/sc-rec/tbo-run"+/+Date.localtime.stamp++".wav")},
0, {this.executeFile(~sketchdir+/+"klliMicBreath.scd")},
200, {"water starts".postln},
260, {
"breathulator".postln;
~klliMicBreath !? {~klliMicBreath[\fx].free};
~klliMicBreath !? {~klliMicBreath[\water].stop};
// ~klliMicBreath !? {~klliMicBreath[\osc].clear};
// ~klliMicBreath !? {~klliMicBreath[\amp].free};
~klliMicBreath !? {~klliMicBreath[\timeline].stop};
this.executeFile(~sketchdir+/+"breathulator.scd");
~breathulatorFx.level = -12.dbamp;
~breathulatorFx.fadeInTime = 45;
~breathulatorFx.fadeOutTime = 95;
~breathulatorFx.play;
~breathulator[4..7].do(_.play);
},
320, {
"trumpetulator".postln;
this.executeFile(~sketchdir+/+"trumpetulator.scd");
~trumpetulatorFx.level = -6.dbamp;
~trumpetulatorFx.fadeInTime = 240;
~trumpetulatorFx.fadeOutTime = 120;
~trumpetulatorFx.play;
~trumpetulator[4..5].do(_.play);
},
350, {~breathulator !? {~breathulator[4..5].do(_.free)}},
380, {~trumpetulator !? {~trumpetulator[6..7].do(_.play)}},
410, {
"breathulator free".postln;
~breathulatorFx !? {~breathulatorFx.free}
},
500, {
~breathulator !? {~breathulator[6..7].do(_.free)};
"metals".postln;
this.executeFile(~sketchdir+/+"metals.scd");
~metalsFx.do(_.play);
~metals[4..5].do(_.play);
},
645, {
"cellulator".postln;
this.executeFile(~sketchdir+/+"cellulator.scd");
~cellulatorFx.do(_.play);
~cellulator[6..7].do(_.play);
}
],
function: {
~cuelist.hook = {|cl|
~cuelist.timelineRegister[cl.current.asSymbol].stop;
~klliMicBreath !? {~klliMicBreath[\fx].free};
// ~klliMicBreath !? {~klliMicBreath[\water].stop};
// ~klliMicBreath !? {~klliMicBreath[\osc].clear};
~klliMicBreath !? {~klliMicBreath[\amp].free};
~klliMicBreath !? {~klliMicBreath[\timeline].stop};
~breathulatorFx !? {~breathulatorFx.free};
~breathulator !? {~breathulator.do(_.free)};
}
~cuelist = CuePlayer.new();
~cuelist.add(
timeline: [
// 0, {s.record("~/sc-rec/tbo-run"+/+Date.localtime.stamp++".wav")},
0, {this.executeFile(~sketchdir+/+"klliMicBreath.scd")},
200, {"water starts".postln},
260, {
"breathulator".postln;
~klliMicBreath !? {~klliMicBreath[\fx].free};
~klliMicBreath !? {~klliMicBreath[\water].stop};
// ~klliMicBreath !? {~klliMicBreath[\osc].clear};
// ~klliMicBreath !? {~klliMicBreath[\amp].free};
~klliMicBreath !? {~klliMicBreath[\timeline].stop};
this.executeFile(~sketchdir+/+"breathulator.scd");
~breathulatorFx.level = -12.dbamp;
~breathulatorFx.fadeInTime = 45;
~breathulatorFx.fadeOutTime = 95;
~breathulatorFx.play;
~breathulator[4..7].do(_.play);
},
320, {
"trumpetulator".postln;
this.executeFile(~sketchdir+/+"trumpetulator.scd");
~trumpetulatorFx.level = -6.dbamp;
~trumpetulatorFx.fadeInTime = 240;
~trumpetulatorFx.fadeOutTime = 120;
~trumpetulatorFx.play;
~trumpetulator[4..5].do(_.play);
},
350, {~breathulator !? {~breathulator[4..5].do(_.free)}},
380, {~trumpetulator !? {~trumpetulator[6..7].do(_.play)}},
410, {
"breathulator free".postln;
~breathulatorFx !? {~breathulatorFx.free}
},
500, {
~breathulator !? {~breathulator[6..7].do(_.free)};
"metals".postln;
this.executeFile(~sketchdir+/+"metals.scd");
~metalsFx.do(_.play);
~metals[4..5].do(_.play);
},
645, {
"cellulator".postln;
this.executeFile(~sketchdir+/+"cellulator.scd");
~cellulatorFx.do(_.play);
~cellulator[6..7].do(_.play);
}
);
~cuelist.add({"juuuust checking again".postln});
~cuelist.add(timeline:
[
// 0, {s.record("~/sc-rec/tbo-run"+/+Date.localtime.stamp++".wav")},
0, {this.executeFile(~sketchdir+/+"klliMicBreath.scd")},
300, {"water starts".postln},
360, {
"breathulator".postln;
~klliMicBreath !? {~klliMicBreath[\fx].free};
~klliMicBreath !? {~klliMicBreath[\water].stop};
// ~klliMicBreath !? {~klliMicBreath[\osc].clear};
// ~klliMicBreath !? {~klliMicBreath[\amp].free};
~klliMicBreath !? {~klliMicBreath[\timeline].stop};
this.executeFile(~sketchdir+/+"breathulator.scd");
~breathulatorFx.level = -12.dbamp;
~breathulatorFx.fadeInTime = 45;
~breathulatorFx.fadeOutTime = 95;
~breathulatorFx.play;
~breathulator[4..7].do(_.play);
},
420, {
"trumpetulator".postln;
this.executeFile(~sketchdir+/+"trumpetulator.scd");
~trumpetulatorFx.level = -6.dbamp;
~trumpetulatorFx.fadeInTime = 240;
~trumpetulatorFx.fadeOutTime = 120;
~trumpetulatorFx.play;
~trumpetulator[4..5].do(_.play);
},
450, {~breathulator !? {~breathulator[4..5].do(_.free)}},
480, {~trumpetulator !? {~trumpetulator[6..7].do(_.play)}},
510, {
"breathulator free".postln;
~breathulatorFx !? {~breathulatorFx.free}
},
600, {
~breathulator !? {~breathulator[6..7].do(_.free)};
"metals".postln;
this.executeFile(~sketchdir+/+"metals.scd");
~metalsFx.do(_.play);
~metals[4..5].do(_.play);
},
645, {
"cellulator".postln;
this.executeFile(~sketchdir+/+"cellulator.scd");
~cellulatorFx.do(_.play);
~cellulator[6..7].do(_.play);
}
],
function: {
~cuelist.hook = {|cl|
~cuelist.timelineRegister[cl.current.asSymbol].stop;
~klliMicBreath !? {~klliMicBreath[\fx].free};
~klliMicBreath !? {~klliMicBreath[\water].stop};
~klliMicBreath !? {~klliMicBreath[\osc].clear};
~klliMicBreath !? {~klliMicBreath[\amp].free};
~klliMicBreath !? {~klliMicBreath[\timeline].stop};
~breathulatorFx !? {~breathulatorFx.free};
~breathulator !? {~breathulator.do(_.free)};
}
],
function: {
~cuelist.hook = {|cl|
~cuelist.timelineRegister[cl.current.asSymbol].stop;
~klliMicBreath !? {~klliMicBreath[\fx].free};
// ~klliMicBreath !? {~klliMicBreath[\water].stop};
// ~klliMicBreath !? {~klliMicBreath[\osc].clear};
~klliMicBreath !? {~klliMicBreath[\amp].free};
~klliMicBreath !? {~klliMicBreath[\timeline].stop};
~breathulatorFx !? {~breathulatorFx.free};
~breathulator !? {~breathulator.do(_.free)};
}
);
}
);
// ~cuelist.add({
// // cleanup
// // cue
// ~kulliEnter = Routine{
// "corona focus, Külli enter".postln;
// this.executeFile(~sketchdir+/+"coronaWhisperGrain.scd");
// ~coronaWhisperGrainFx.do(_.fadeOutTime_(60));
// 45.wait;
// ~coronaWhisperGrainFx !? {~coronaWhisperGrainFx.do(_.play)};
// ~coronaWhisperGrain !? {~coronaWhisperGrain[1..3].do(_.play)};
// 60.wait;
// this.executeFile(~sketchdir+/+"focus.scd");
// ~focusFx.do(_.fadeOutTime_(60));
// ~focusFx.do(_.play);
// ~focus[0].play;
// ~trumpetulatorFx !? {~trumpetulatorFx.free};
// ~trumpetulator !? {~trumpetulator[4..7].do(_.free)};
// 45.wait;
// this.executeFile(~sketchdir+/+"mbTreeperculator.scd");
// ~mbTreeperculatorFx.play;
// ~mbTreeperculator[1].play;
// 10.wait;
// ~mbTreeperculator[2].play;
// 10.wait;
// this.executeFile(~sketchdir+/+"bd.scd");
// ~bdFx.play;
// ~bd[3].play;
// }.play;
// });
~cuelist.add(
timeline: [
// 0, {s.record("~/sc-rec/tbo-run"+/+Date.localtime.stamp++".wav")},
0, {this.executeFile(~sketchdir+/+"klliMicBreath.scd")},
300, {"water starts".postln},
360, {
"breathulator".postln;
~klliMicBreath !? {~klliMicBreath[\fx].free};
~klliMicBreath !? {~klliMicBreath[\water].stop};
// ~klliMicBreath !? {~klliMicBreath[\osc].clear};
// ~klliMicBreath !? {~klliMicBreath[\amp].free};
~klliMicBreath !? {~klliMicBreath[\timeline].stop};
this.executeFile(~sketchdir+/+"breathulator.scd");
~breathulatorFx.level = -12.dbamp;
~breathulatorFx.fadeInTime = 45;
~breathulatorFx.fadeOutTime = 95;
~breathulatorFx.play;
~breathulator[4..7].do(_.play);
},
420, {
"trumpetulator".postln;
this.executeFile(~sketchdir+/+"trumpetulator.scd");
~trumpetulatorFx.level = -6.dbamp;
~trumpetulatorFx.fadeInTime = 240;
~trumpetulatorFx.fadeOutTime = 120;
~trumpetulatorFx.play;
~trumpetulator[4..5].do(_.play);
},
450, {~breathulator !? {~breathulator[4..5].do(_.free)}},
480, {~trumpetulator !? {~trumpetulator[6..7].do(_.play)}},
510, {
"breathulator free".postln;
~breathulatorFx !? {~breathulatorFx.free}
},
600, {
~breathulator !? {~breathulator[6..7].do(_.free)};
"metals".postln;
this.executeFile(~sketchdir+/+"metals.scd");
~metalsFx.do(_.play);
~metals[4..5].do(_.play);
},
645, {
"cellulator".postln;
this.executeFile(~sketchdir+/+"cellulator.scd");
~cellulatorFx.do(_.play);
~cellulator[6..7].do(_.play);
}
],
function: {
~cuelist.hook = {|cl|
~cuelist.timelineRegister[cl.current.asSymbol].stop;
~klliMicBreath !? {~klliMicBreath[\fx].free};
~klliMicBreath !? {~klliMicBreath[\water].stop};
~klliMicBreath !? {~klliMicBreath[\osc].clear};
~klliMicBreath !? {~klliMicBreath[\amp].free};
~klliMicBreath !? {~klliMicBreath[\timeline].stop};
~breathulatorFx !? {~breathulatorFx.free};
~breathulator !? {~breathulator.do(_.free)};
}
}
);
// ~cuelist.add({
// // cleanup
// ~kulliEnter.stop;
// ~trumpetulatorFx !? {~trumpetulatorFx.free};
// ~trumpetulator !? {~trumpetulator[4..7].do(_.free)};
// ~cellulatorFx !? {~cellulatorFx.do(_.free)};
// ~cellulator !? {~cellulator[6..7].do(_.free)};
// ~metalsFx !? {~metalsFx.do(_.free)};
// ~metals !? {~metals[4..5].do(_.free)};
// ~mbTreeperculatorFx !? {~mbTreeperculatorFx.free};
// ~mbTreeperculator !? {~mbTreeperculator.do(_.free)};
// ~bdFx !? {~bdFx.free};
// ~bd !? {~bd[3].free};
// // cue
// ~whisperToThinkingSpace = Routine{
// "kenneth exit, kulli whisper solo".postln;
// this.executeFile(~sketchdir+/+"mbLooper.scd");
// ~coronaWhisperGrainFx !? {~coronaWhisperGrainFx.do(_.free)};
// ~focusFx !? {~focusFx.do(_.free)};
// 60.wait;
// ~coronaWhisperGrain !? {~coronaWhisperGrain[1..3].do(_.free)};
// ~focus !? {~focus[0].free};
// }.play;
// });
// ~cuelist.add({
// // cleanup
// // cue
// ~kulliEnter = Routine{
// "corona focus, Külli enter".postln;
// this.executeFile(~sketchdir+/+"coronaWhisperGrain.scd");
// ~coronaWhisperGrainFx.do(_.fadeOutTime_(60));
// 45.wait;
// ~coronaWhisperGrainFx !? {~coronaWhisperGrainFx.do(_.play)};
// ~coronaWhisperGrain !? {~coronaWhisperGrain[1..3].do(_.play)};
// 60.wait;
// this.executeFile(~sketchdir+/+"focus.scd");
// ~focusFx.do(_.fadeOutTime_(60));
// ~focusFx.do(_.play);
// ~focus[0].play;
// ~trumpetulatorFx !? {~trumpetulatorFx.free};
// ~trumpetulator !? {~trumpetulator[4..7].do(_.free)};
// 45.wait;
// this.executeFile(~sketchdir+/+"mbTreeperculator.scd");
// ~mbTreeperculatorFx.play;
// ~mbTreeperculator[1].play;
// 10.wait;
// ~mbTreeperculator[2].play;
// 10.wait;
// this.executeFile(~sketchdir+/+"bd.scd");
// ~bdFx.play;
// ~bd[3].play;
// }.play;
// });
// ~cuelist.add({
// // cleanup
// ~whisperToThinkingSpace.stop;
// ~coronaWhisperGrainFx !? {~coronaWhisperGrainFx.do(_.free)};
// ~coronaWhisperGrain !? {~coronaWhisperGrain[1..3].do(_.free)};
// ~focusFx !? {~focusFx.do(_.free)};
// ~focus !? {~focus[0].free};
// // cue
// ~duets = Routine{
// "kenneth enter into duet".postln;
// 30.wait;
// this.executeFile(~sketchdir+/+"mbFM.scd");
// ~mbFMFx.play;
// ~mbFM.do(_.play);
// 45.wait;
// ~mbLooperFx !? {~mbLooperFx.free};
// ~mbLooper !? {~mbLooper[0..3].do(_.free)};
// 105.wait;
// this.executeFile(~sketchdir+/+"mbEarthulator.scd");
// ~mbEarthulatorFx.level = -26.dbamp;
// ~mbEarthulatorFx.fadeInTime = 20;
// ~mbEarthulatorFx.fadeOutTime = 40;
// ~mbEarthulatorFx.play;
// ~mbEarthulator.do(_.play);
// 40.wait;
// this.executeFile(~sketchdir+/+"angelReverb.scd");
// ~angelReverbFx.do(_.fadeInTime(45));
// ~angelReverbFx.do(_.fadeOutTime(60));
// ~angelReverbFx.do(_.level( -60.dbamp ));
// ~angelReverbFx.do(_.play);
// ~angelReverb[0].play;
// ~mbEarthulatorFx !? {x.free};
// ~mbEarthulator !? {~mbEarthulator.do(_.free)};
// 80.wait;
// ~angelReverbFx !? {~angelReverbFx.do(_.free)};
// ~angelReverb !? {~angelReverb[0..1].do(_.free)};
// this.executeFile(~sketchdir+/+"mbEarthulator.scd");
// ~mbEarthulatorFx.level = 0.dbamp;
// ~mbEarthulatorFx.fadeInTime = 30;
// ~mbEarthulatorFx.fadeOutTime = 90;
// ~mbEarthulatorFx.play;
// ~mbEarthulator.do(_.play);
// 60.wait;
// ~mbFMFx !? {~mbFMFx.free};
// ~mbFM !? {~mbFM.do(_.free)};
// 90.wait;
// ~mbEarthulatorFx !? {~mbEarthulatorFx.free};
// "stomach duet".postln;
// this.executeFile(~sketchdir+/+"mbLeavulator.scd");
// ~mbLeavulatorFx.do(_.fadeOutTime_(60));
// ~mbLeavulatorFx.do(_.play);
// ~mbLeavulator.do(_.play);
// 90.wait;
// ~mbEarthulator !? {~mbEarthulator.do(_.free)};
// 170.wait;
// "birdgirl".postln;
// this.executeFile(~sketchdir+/+"birdGirl.scd");
// ~birdGirlFx.do(_.fadeInTime_(150));
// ~birdGirlFx.do(_.level_(0.dbamp));
// ~birdGirlFx.do(_.play);
// ~birdGirl[0..1].do(_.play);
// ~mbLeavulator !? {~mbLeavulator[0..1].do(_.free)};
// 120.wait;
// ~mbLeavulatorFx !? {~mbLeavulatorFx.do(_.free)};
// 60.wait;
// ~mbLeavulator !? {~mbLeavulator[2..7].do(_.free)};
// }.play;
// });
// ~cuelist.add({
// // cleanup
// ~kulliEnter.stop;
// ~trumpetulatorFx !? {~trumpetulatorFx.free};
// ~trumpetulator !? {~trumpetulator[4..7].do(_.free)};
// ~cellulatorFx !? {~cellulatorFx.do(_.free)};
// ~cellulator !? {~cellulator[6..7].do(_.free)};
// ~metalsFx !? {~metalsFx.do(_.free)};
// ~metals !? {~metals[4..5].do(_.free)};
// ~mbTreeperculatorFx !? {~mbTreeperculatorFx.free};
// ~mbTreeperculator !? {~mbTreeperculator.do(_.free)};
// ~bdFx !? {~bdFx.free};
// ~bd !? {~bd[3].free};
// // cue
// ~whisperToThinkingSpace = Routine{
// "kenneth exit, kulli whisper solo".postln;
// this.executeFile(~sketchdir+/+"mbLooper.scd");
// ~coronaWhisperGrainFx !? {~coronaWhisperGrainFx.do(_.free)};
// ~focusFx !? {~focusFx.do(_.free)};
// 60.wait;
// ~coronaWhisperGrain !? {~coronaWhisperGrain[1..3].do(_.free)};
// ~focus !? {~focus[0].free};
// }.play;
// });
// ~cuelist.add({
// // cleanup
// ~duets.stop;
// ~mbLooperFx !? {x.free};
// ~mbLooper !? {~mbLooper[0..3].do(_.free)};
// ~mbEarthulatorFx !? {x.free};
// ~mbEarthulator !? {~mbEarthulator.do(_.free)};
// ~angelReverbFx !? {~angelReverbFx.do(_.free)};
// ~angelReverb !? {~angelReverb[0..1].do(_.free)};
// // cue
// ~doubling = Routine {
// "doubling happening".postln;
// ~birdGirlFx !? {~birdGirlFx.do(_.free)};
// ~birdGirl !? {~birdGirl[0..1].do(_.free)};
// 60.wait;
// this.executeFile(~sketchdir+/+"unisonoBubbles.scd");
// ~unisonoBubblesFx.play;
// ~unisonoBubbles[2..3].do(_.play);
// ~unisonoBubbles[6..7].do(_.play);
// 30.wait;
// this.executeFile(~sketchdir+/+"patBubbles.scd");
// 40.wait;
// this.executeFile(~sketchdir+/+"mbShh.scd");
// ~mbShhFx.play;
// ~mbShh[0].play;
// ~mbShh[4].play;
// 30.wait;
// this.executeFile(~sketchdir+/+"numbers.scd");
// ~numbersFx.level = -12.dbamp;
// ~numbersFx.fadeInTime = 60;
// ~numbersFx.fadeInTime = 90;
// ~numbersFx.play;
// ~numbers[5].play;
// this.executeFile(~sketchdir+/+"talkulator.scd");
// ~talkulatorFx.play;
// ~talkulator[1].play;
// this.executeFile(~sketchdir+/+"bd.scd");
// ~bdFx.play;
// ~bd[2].play;
// ~bd[6].play;
// }.play;
// });
// ~cuelist.add({
// // cleanup
// ~whisperToThinkingSpace.stop;
// ~coronaWhisperGrainFx !? {~coronaWhisperGrainFx.do(_.free)};
// ~coronaWhisperGrain !? {~coronaWhisperGrain[1..3].do(_.free)};
// ~focusFx !? {~focusFx.do(_.free)};
// ~focus !? {~focus[0].free};
// // cue
// ~duets = Routine{
// "kenneth enter into duet".postln;
// 30.wait;
// this.executeFile(~sketchdir+/+"mbFM.scd");
// ~mbFMFx.play;
// ~mbFM.do(_.play);
// 45.wait;
// ~mbLooperFx !? {~mbLooperFx.free};
// ~mbLooper !? {~mbLooper[0..3].do(_.free)};
// 105.wait;
// this.executeFile(~sketchdir+/+"mbEarthulator.scd");
// ~mbEarthulatorFx.level = -26.dbamp;
// ~mbEarthulatorFx.fadeInTime = 20;
// ~mbEarthulatorFx.fadeOutTime = 40;
// ~mbEarthulatorFx.play;
// ~mbEarthulator.do(_.play);
// 40.wait;
// this.executeFile(~sketchdir+/+"angelReverb.scd");
// ~angelReverbFx.do(_.fadeInTime(45));
// ~angelReverbFx.do(_.fadeOutTime(60));
// ~angelReverbFx.do(_.level( -60.dbamp ));