add files to the repo

This commit is contained in:
2023-12-27 15:03:23 +01:00
parent 397e31d438
commit 9b3c1afd38
10 changed files with 164 additions and 0 deletions

18
Bubo.quark Normal file
View File

@ -0,0 +1,18 @@
(
name: "BuboQuark",
summary: "My setup for livecoding with SuperCollider",
path: "BuboQuark",
author: "BuboBubo",
version: "0.0.1",
since: "2023",
schelp: "",
dependencies: [
"https://github.com/scztt/Singleton.quark",
"https://github.com/scztt/Require.quark",
"https://github.com/supercollider-quarks/BatLib",
"https://github.com/supercollider-quarks/Bjorklund",
],
url: "https://raphaelforment.fr",
version: 1.0,
isCompatible: {Main.versionAtLeast(3, 1)}
)

37
Classes/BuboArray.sc Normal file
View File

@ -0,0 +1,37 @@
+ Array {
pat {
arg node_proxy, quant=4, fade=0.05;
node_proxy.quant_(quant);
node_proxy.fadeTime = fade;
node_proxy[0] = Pbind(*this);
^node_proxy;
}
pbind {
^Pbind(*this)
}
pseq { arg repeats=inf, offset=0;
^Pseq(this, repeats, offset);
}
pshuf { arg repeats=1;
^Pshuf(this, repeats);
}
prand { arg repeats=inf;
^Prand(this, repeats);
}
pxrand { arg repeats=inf;
^Pxrand(this, repeats);
}
pwrand { arg weights, repeats=1;
^Pwrand(this, weights, repeats);
}
pwhite { arg repeats=inf;
^Pwhite(this[0], this[1], repeats);
}
}

25
Classes/BuboBoot.sc Normal file
View File

@ -0,0 +1,25 @@
Boot {
*new {
arg path = "/Users/bubo/.config/livecoding";
var s = Server.default;
var p;
s.options.numBuffers = 1024 * 128; // Nombre de buffers disponibles pour stocker des samples
s.options.memSize = 8192 * 64; // Mémoire disponible pour le serveur
s.options.numWireBufs = 2048; // Augmenter ce nombre si "exceeded number of interconnect buffers"
s.options.maxNodes = 1024 * 32; // Changer cette valeur si le son saute avec le message "too many nodes"
s.options.device = "BlackHole 16ch"; // Choix de l'interface audio à utiliser
s.options.numOutputBusChannels = 16; // Indiquer le nombre de sorties de son interface audio
s.options.numInputBusChannels = 16; // Indiquer le nombre d'entrées de son interface audio
p = ProxySpace.push(Server.default.boot);
p.makeTempoClock; // Gestion du tempo
p.clock.tempo = 120/60;
Bank.root = path +/+ "samples"; // Chemin vers les samples
Bank.lazyLoading = True; // Lazy loading des samples
Server.default.waitForBoot({
(path +/+ "Synthdefs.scd").load; // Chargement des synthétiseurs
StageLimiter.activate; // StageLimiter pour les oreilles
"== 💻 LIVE CODING PRÊT 💻 == ".postln;
});
}
}

6
Classes/BuboFreqScope.sc Normal file
View File

@ -0,0 +1,6 @@
FScope {
*new {
^Server.default.freqscope.window.alwaysOnTop_(true);
}
}

5
Classes/BuboGui.sc Normal file
View File

@ -0,0 +1,5 @@
Gui {
*new {
^Server.default.makeGui.window.alwaysOnTop_(true);
}
}

3
Classes/BuboNdef.sc Normal file
View File

@ -0,0 +1,3 @@
+ Ndef {
}

36
Classes/BuboNodeProxy.sc Normal file
View File

@ -0,0 +1,36 @@
+ NodeProxy {
fx {
arg number=1, wet=1, function = {|in| in};
this[number] = \filter -> function;
this.set(("wet" ++ number).asSymbol, wet);
^this;
}
fx1 { arg wet, function; this.fx(\wet100, wet, function); }
fx2 { arg wet, function; this.fx(\wet200, wet, function); }
fx3 { arg wet, function; this.fx(\wet300, wet, function); }
fx4 { arg wet, function; this.fx(\wet400, wet, function); }
fx5 { arg wet, function; this.fx(\wet500, wet, function); }
fx6 { arg wet, function; this.fx(\wet600, wet, function); }
fx7 { arg wet, function; this.fx(\wet700, wet, function); }
fx8 { arg wet, function; this.fx(\wet800, wet, function); }
fx9 { arg wet, function; this.fx(\wet900, wet, function); }
wet { arg number=1, wet=1;
this.set(("wet" ++ number).asSymbol, wet);
^this;
}
xwet { arg number=1, wet=1;
this.xset(("wet" ++ number).asSymbol, wet);
^this;
}
fxin {
arg number=1, wet=1, function = {|in| in};
this[number] = \filterIn -> function;
this.set(("wet" ++ number).asSymbol, wet);
^this;
}
}

5
Classes/BuboObject.sc Normal file
View File

@ -0,0 +1,5 @@
Panic {
*new {
CmdPeriod.run;
}
}

23
Classes/BuboPbind.sc Normal file
View File

@ -0,0 +1,23 @@
+ Pbind {
fastest { ^this.set(\dur, 1/8) }
faster { ^this.set(\dur, 1/4) }
fast { ^this.set(\dur, 1/2) }
slow { ^this.set(\dur, 2) }
slower { ^this.set(\dur, 4) }
slowest { ^this.set(\dur, 8) }
lowest { ^this.set(\octave, 2) }
lower { ^this.set(\octave, 3) }
low { ^this.set(\octave, 4) }
high { ^this.set(\octave, 6) }
higher { ^this.set(\octave, 7) }
highest { ^this.set(\octave, 8) }
fff { ^this.set(\amp, 2) }
ff { ^this.set(\amp, 1) }
f { ^this.set(\amp, 0.5) }
p { ^this.set(\amp, 0.3) }
pp { ^this.set(\amp, 0.2) }
ppp { ^this.set(\amp, 0.1) }
}

6
Classes/BuboScope.sc Normal file
View File

@ -0,0 +1,6 @@
Scope {
*new {
^Server.default.scope.window.alwaysOnTop_(true);
}
}