multigrain/main.scd

117 lines
1.9 KiB
Plaintext
Raw Normal View History

2022-04-02 06:51:06 +00:00
// Execute this before booting the server
(
2022-04-02 06:51:06 +00:00
Server.default.options.inDevice_("Scarlett 2i2 USB");
2023-04-02 06:10:23 +00:00
//Server.default.options.outDevice_("Scarlett 2i2 USB");
)
Server.killAll;
~frippbuffer.write("/Users/mike/Music/SuperCollider Recordings/slow.aiff");
2023-04-02 06:10:23 +00:00
~frippbuffer.isNil;
2022-04-02 06:51:06 +00:00
2023-04-09 02:12:36 +00:00
("./synths.scd").loadRelative;
("./control.scd").loadRelative;
("./effects.scd").loadRelative;
2022-04-02 06:51:06 +00:00
~modes = [
2023-04-09 01:46:05 +00:00
[ "saw", \pos_saw ],
[ "reverse", \pos_reverse ],
[ "sine", \pos_sine ],
[ "step", \pos_step ],
[ "random", \pos_rand ]
];
2022-04-02 06:51:06 +00:00
2023-04-09 01:46:05 +00:00
2023-04-07 06:16:05 +00:00
Granulator.init(s)
2023-04-07 06:16:05 +00:00
~g3 = Granulator.new(4, ~recordb, ~granulatorb, ~playbacklfob, ~triggerb, ~pitchb);
~g.recorder.set(\record, 1.0);
~makebuffers.value();
(
2023-04-02 06:31:52 +00:00
~bufrecorders = Array.new(~ntracks);
~frippbuffers.do({
| buffer, index |
~bufrecorders.add(Synth.new(
\fripp_record,
[
\in, ~recordb,
\record, 0.0,
\buffer, buffer
],
s,
\addToTail
))
});
2022-04-02 06:51:06 +00:00
2023-04-02 06:31:52 +00:00
~bufrecorder = ~bufrecorders[0];
2022-04-02 06:51:06 +00:00
// the granulators
2022-04-02 06:51:06 +00:00
~granulators = Array.new(~ntracks);
~grainmodes = Array.fill(~ntracks, 0);
2022-04-02 06:51:06 +00:00
~frippbuffers.do({
| buffer, index |
[ "Grain synth: ", buffer, index ].postln;
~granulators.add(Synth.new(
\grainsynth,
[
\out, ~granulatorb,
\buffer, buffer,
\blen, ~buflen,
\posb, ~playbacklfob,
\triggerb, ~triggerb,
\pitchb, ~pitchb,
\modb, ~lfob,
\size, 0.1
],
s
))
});
~granulator = ~granulators[0];
2022-04-02 06:51:06 +00:00
2022-04-09 07:38:18 +00:00
)
2022-04-02 06:51:06 +00:00
2022-04-18 22:29:26 +00:00
2022-04-09 07:38:18 +00:00
2023-04-02 06:10:23 +00:00
~frippbuffers[~currentfripp].write("/Users/mike/Music/SuperCollider Recordings/test.aiff");
(
~monitor = SynthDef(
\monitor_synth,
{
arg in=2, out=0;
Out.ar(out, In.ar(in, 2))
}
).play(s, [\in, ~fxb, \out, 0 ], \addToTail);
)
~monitor.set(\in, ~reverbb)
~monitor.free
~pitchb.scope()
2023-04-02 06:10:23 +00:00
~frippbuffers.plot;
~bufrecorder.set(\buffer, ~frippbuffers[1]);
~granulators[0].get(\buffer, {|v| v.postln});
(
~frippbuffers.do({
|b, i|
b.write("/Users/mike/Music/SuperCollider Recordings/buffer" ++ i.asString ++ ".aiff");
});
)