Session slack_1772060701894559

Practice Journal

// 1. Define SynthDef and write to disk
SynthDef(\drone, { |freq = 110, amp = 0.3, gate = 1|
    var env = EnvGen.ar(Env.perc(0.1, 1), gate, doneAction: 2);
    var sig = Saw.ar(freq, 0.2) * env * amp;
    var reverb = FreeVerb.ar(sig, 0.8, 0.8, 0.8);
    Out.ar(0, reverb ! 2);
}).writeDefFile;

// 2. Build Score with ONLY explicit [time, message] pairs
Score([
    [0.0, [\s_new, \drone, 1001, 0, 0, \freq, 110, \amp, 0.3]],
    [4.0, [\n_set, 1001, \gate, 0]],
    [8.0, [\c_set, 0, 0]]
]).recordNRT(
    outputFilePath: "~/output.wav".standardizePath,
    headerFormat: "WAV",
    sampleFormat: "int16",
    sampleRate: 44100,
    options: ServerOptions.new.numOutputBusChannels_(2),
    duration: 8,
    action: { 0.exit }
);
// 1. Define SynthDef and write to disk
SynthDef(\dronePattern, { |freq = 110, amp = 0.3, gate = 1|
    var env = EnvGen.ar(Env.perc(0.1, 1), gate, doneAction: 2);
    var sig = Saw.ar(freq, 0.2) * env * amp;
    var reverb = FreeVerb.ar(sig, 0.8, 0.8, 0.8);
    Out.ar(0, reverb ! 2);
}).writeDefFile;

// 2. Build Score with ONLY explicit [time, message] pairs
Score([
    [0.0, [\s_new, \dronePattern, 1001, 0, 0, \freq, 110, \amp, 0.3]],
    [1.0, [\s_new, \dronePattern, 1002, 0, 0, \freq, 164.81, \amp, 0.3]],
    [2.0, [\s_new, \dronePattern, 1003, 0, 0, \freq, 220, \amp, 0.3]],
    [3.0, [\s_new, \dronePattern, 1004, 0, 0, \freq, 277.18, \amp, 0.3]],
    [4.0, [\n_set, 1001, \gate, 0]],
    [4.0, [\n_set, 1002, \gate, 0]],
    [4.0, [\n_set, 1003, \gate, 0]],
    [4.0, [\n_set, 1004, \gate, 0]],
    [4.0, [\s_new, \dronePattern, 1005, 0, 0, \freq, 110, \amp, 0.3]],
    [5.0, [\s_new, \dronePattern, 1006, 0, 0, \freq, 164.81, \amp, 0.3]],
    [6.0, [\s_new, \dronePattern, 1007, 0, 0, \freq, 220, \amp, 0.3]],
    [7.0, [\s_new, \dronePattern, 1008, 0, 0, \freq, 277.18, \amp, 0.3]],
    [8.0, [\n_set, 1005, \gate, 0]],
    [8.0, [\n_set, 1006, \gate, 0]],
    [8.0, [\n_set, 1007, \gate, 0]],
    [8.0, [\n_set, 1008, \gate, 0]],
    [8.0, [\c_set, 0, 0]]
]).recordNRT(
    outputFilePath: "~/output.wav".standardizePath,
    headerFormat: "WAV",
    sampleFormat: "int16",
    sampleRate: 44100,
    options: ServerOptions.new.numOutputBusChannels_(2),
    duration: 8,
    action: { 0.exit }
);

[Generated SC code based on request]

[Rendered audio]