From c6c5c95685884c3011bde02f69102f01ca13f16d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Forment?= Date: Thu, 6 Jun 2024 11:59:42 +0200 Subject: [PATCH] adding a few goodies --- Classes/BuboNodeProxyEffects.sc | 26 ++++++++++++++++++++++++++ Classes/PseudoUgen/Segment.sc | 19 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 Classes/PseudoUgen/Segment.sc diff --git a/Classes/BuboNodeProxyEffects.sc b/Classes/BuboNodeProxyEffects.sc index 28a55c1..970ae4f 100644 --- a/Classes/BuboNodeProxyEffects.sc +++ b/Classes/BuboNodeProxyEffects.sc @@ -50,6 +50,32 @@ }) } + crackle { + arg pos=950, wet=1, crackles=4, cutoff=5000; + this.fx(pos, wet, { + arg in; + in + LPF.ar(Dust2.ar(crackles), cutoff) + }); + } + + dj { + // NOTE: taken from SuperDirt (https://github.com/musikinformatik/SuperDirt) + arg pos=950, wet=1, cutoff=4000; + this.fx(pos, wet, { + arg in; + var lpfCutoffFreq = cutoff.linexp(0, 0.5, 20, 10000); + var hpfCutoffFreq = cutoff.linexp(0.5, 1, 20, 10000); + var signal = RHPF.ar( + RLPF.ar( + in, + lpfCutoffFreq + ), + hpfCutoffFreq + ); + signal + }) + } + flanger { arg pos=950, wet=1, maxdelay=0.013, maxrate=10.0, delay=0.1, depth=0.08, rate=0.06, fdbk=0.0, decay=0.0; this.fx(pos, wet, { diff --git a/Classes/PseudoUgen/Segment.sc b/Classes/PseudoUgen/Segment.sc new file mode 100644 index 0000000..5771a9c --- /dev/null +++ b/Classes/PseudoUgen/Segment.sc @@ -0,0 +1,19 @@ +Segment { + *ar { + arg start = 0, end = 1, time = 1, curve = \lin, trig = 1, doneAction = 0; + ^EnvGen.ar( + Env([start, start, end], [0, time], curve), + trig, + doneAction: doneAction + ) + } + *kr { + arg start = 0, end = 1, time = 1, curve = \lin, trig = 1, doneAction = 0; + ^EnvGen.kr( + Env([start, start, end], [0, time], curve), + trig, + doneAction: doneAction + ) + } +} +