Close Encounters - SuperCollider



Raggiunto il torrente, però, rimasi quasi impietrito per lo spettacolo che si presentò ai miei occhi: nel prato dall'altra parte del rigagnolo c'era un oggetto che assomigliava ad un grande piatto rovesciato. Rimasi per un attimo attonito a guardare, quando mi sentii sollevare da robuste braccia.

(
    Routine.run {
        var s, synth, release;
        s = Server.default;

        SynthDef(\drone, {
            |out = 0, freq = 440, amp = 0.1, gate = 1, attack = 0.3, release = 0.3|
            var snd, ffreq, res;
            snd = { Gendy1.ar(1, 1, 1, 1, freq * 0.99, freq * 1.01) }!5;
            snd = Splay.ar(snd);
            ffreq = LFNoise2.kr(1).exprange(100, 3000);
            res = LFNoise2.kr(3).range(1.0, 0.3);
            snd = RLPF.ar(snd, ffreq, res);
  snd = Mix.fill(37, {snd * amp * Env.asr(attack, 1, release).ar(2, gate)});
            Out.ar(out, snd);
        }).add;

        s.sync;

        s.record(path: "~/out.wav".standardizePath);

        release = 0.3;
        synth = Synth(\drone, [freq: 30.midicps, release: release]);
        30.wait;
        synth.set(\gate, 0);

        // Wait for the Synth to release before stopping the recording.
        release.wait;
        s.stopRecording;
    };
 )

Leave a Reply