SuperCollider utilities to ease the job of the everyday coder.
Clone this repository in the Extension
directory.
The path can be found by evaluating Platform.userExtensionDir
or Platform.systemExtensionDir
.
A simple aconnect
front end. Useful when you need to connect other MIDI clients.
a = Aconnect.new;
a.in.postln;
a.out.postln;
i = a.inByName("midi through");
o = a.outByName("amsynth");
a.connect(i.port, o.port);
a.disconnect(i.port, o.port);
A very simple jack_lsp
, jack_connect
and jack_disconnect
interface for SuperCollider.
j = JackConnect.new;
j.listClients(_.postln);
j.connectClients("PulseAudio JACK Sink:front-left", "system:playback_1");
j.connectClients("PulseAudio JACK Sink:front-right", "system:playback_2");
A class for the lazy-coder.
var sni = (
\gg: "GG WP",
\hf: "HF GL",
);
TinySnippets.enable("y", sni);
-> TinySnippets enabled with hotkey Ctrl+t
TinySnippets.disable;
-> TinySnippets disabled
Another TidalCycles interface.
Tidal.start;
Tidal.send(":module Sound.Tidal.Context");
Tidal.send("(cps, getNow) <- bpsUtils");
Tidal.send("(d1,t1) <- superDirtSetters getNow");
Tidal.send(":set prompt ".format("tidal> ".quote));
Tidal.send("d1 $ sound % # release 0.25".format("kick".quote));
Tidal.send("d1 silence");
Tidal.stop;
Similar to Scales / Tuning classes but for Drum Loops.
// Create a new "DrumLoop"
DrumLoop.all.put(\kick, DrumLoop((bd: [1,0,0,0]), tempo: 160/60, name: "Kick"))
-> IdentityDictionary[ (kick -> DrumLoop.kick) ]
DrumLoop.kick;
-> DrumLoop(( 'bd': [ 1, 0, 0, 0 ] ), 2.6666666666667, "Kick")
DrumLoop.jungle.flop;
-> [ [ bd, r, ch, r ], [ r, r, ch, r ], [ r, r, ch, sn ], [ r, oh, ch, r ], [ r, r, ch, r ], [ bd, r, ch, r ], [ r, oh, ch, sn ], [ r, r, ch, r ], [ bd, r, ch, r ], [ r, r, ch, sn ], [ r, r, ch, r ], [ bd, oh, ch, r ], [ r, r, ch, r ], [ r, r, ch, sn ], [ r, oh, ch, r ], [ r, r, ch, sn ] ]
DrumLoop.names;
-> [ afro1a, afro1b, afro1c, afro2a, afro2b, afro2c, afro3a, afro3b, afro3c, afro4a, afro4b, afro4c, afro5a, afro5b, afro5c, afro6a, afro6b, afro6c, amen, amenbrother, ashleysroachclip, ballad1a, ballad1b, ballad1c, ballad2a, ballad2b, ballad2c, ballad3a, ballad3b, ballad3c, ballad4a, ballad4b, ballad4c, ballad5a, ballad5b, ballad5c, bigbeat, billyjean, blues1a, blues2a, bookofmoses, bossa1a, bossa1b, bossa1c, bossa2a, bossa2b, bossa2c, bossanova, cha1a, cha1b, cha1c, chugchugchugalug, cissystrut, cissystrut1,...etc...
DrumLoop.directory;
-> Afro 1a: afro1a -> 16 steps
Afro 1b: afro1b -> 16 steps
Afro 1c: afro1c -> 16 steps
Afro 2a: afro2a -> 16 steps
Afro 2b: afro2b -> 16 steps
Afro 2c: afro2c -> 16 steps
...
See LICENSE