|
|
|
(
|
|
|
|
// MAIN LAUNCH (loads necessary files and definitions)
|
|
|
|
|
|
|
|
var appEnvironment;
|
|
|
|
|
|
|
|
//push new environment
|
|
|
|
appEnvironment = Environment.make;
|
|
|
|
appEnvironment.push;
|
|
|
|
|
|
|
|
s.waitForBoot({
|
|
|
|
|
|
|
|
~hash = Date.getDate.hash.asString;
|
|
|
|
|
|
|
|
// load all files
|
|
|
|
"tkam_musical_data_generator.scd".loadRelative;
|
|
|
|
"tkam_sonifier.scd".loadRelative;
|
|
|
|
"tkam_gui.scd".loadRelative;
|
|
|
|
"tkam_transcriber.scd".loadRelative;
|
|
|
|
|
|
|
|
~genAll = {arg seed;
|
|
|
|
~dUnit = 8.reciprocal;
|
|
|
|
~musicData = ~genMusicData.value(seed);
|
|
|
|
~scoreData = ~genScoreData.value(~musicData[0]);
|
|
|
|
~sectionData = ~musicData[2];
|
|
|
|
~patterns = ~genPatterns.value(~musicData[0], ~musicData[1], ~musicData[3], ~sectionData);
|
|
|
|
~sectionNavDict = ~musicData[4].postln;
|
|
|
|
~isPlaying = false;
|
|
|
|
};
|
|
|
|
|
|
|
|
~patternProxy = EventPatternProxy.new;
|
|
|
|
|
|
|
|
~tempoClock = TempoClock.new(1);
|
|
|
|
~dir = thisProcess.nowExecutingPath.dirname;
|
|
|
|
"loading app".postln;
|
|
|
|
~genAll.value(19800725);
|
|
|
|
~play = Synth.new(\masterPlayerControl_ ++ ~hash);
|
|
|
|
4.collect({arg p; Synth.new(\clip_ ++ ~hash, [\bin, p + 6, \bus, ~busses[5].index])});
|
|
|
|
~generateGUI.value;
|
|
|
|
"ready".postln;
|
|
|
|
|
|
|
|
// generate all the data
|
|
|
|
/*
|
|
|
|
~genAll = {arg seed;
|
|
|
|
~allMusicData = ~genMusicData.value(seed);
|
|
|
|
~patterns = ~allMusicData[0];
|
|
|
|
|
|
|
|
~scoreData = ~allMusicData[1];
|
|
|
|
~sectionOffsets = ~allMusicData[2];
|
|
|
|
~currentSection = 0;
|
|
|
|
~currentSubsection = 0;
|
|
|
|
~isPlaying = false;
|
|
|
|
};
|
|
|
|
|
|
|
|
// set the global variables
|
|
|
|
~tempoClock = TempoClock.new(60);
|
|
|
|
~dir = thisProcess.nowExecutingPath.dirname;
|
|
|
|
"loading app".postln;
|
|
|
|
~genAll.value(20200525);
|
|
|
|
~play = Synth.new(\masterPlayerControl ++ ~hash);
|
|
|
|
|
|
|
|
~sectionOrder = ~patterns.size.collect({arg sec; sec});
|
|
|
|
~generateGUI.value;
|
|
|
|
"ready".postln;
|
|
|
|
*/
|
|
|
|
|
|
|
|
});
|
|
|
|
appEnvironment.pop;
|
|
|
|
)
|