This is a slightly modified version of SuperDirt. This is the setup I use to play with Sardine. The documentation for the original SuperDirt still applies. I'm just adding synthesizers, effects and so on when the need arises.
There are a few optional dependencies that you might need to run this fork:
- MIUgens : port of Mutable Instruments Eurorack modules for SuperCollider
- PortedPlugins: An awesome collection from Mads Kjeldgaard of various UGens ported to SuperCollider
Simulates the secondary filter found on the Elektron Digitakt. Can act as a first filter to clean a part of the spectrum before applying other effects. This filter is always active.
- base: (in hertz) Adjusts the base frequency for the filter. Anything below is high-passed.
- width: (in hertz) Anything above base + width will be low-passed.
d1 $ sound "bd sn" # base 200 # width 500
Filter envelopes dynamically shape the sound by modulating the filter's cutoff frequency over time. This mechanism utilizes three key parameters: fattack
, fdecay
, and sweep
.
-
fattack (Attack Time)
- Range: Seconds.
- Controls how quickly the filter reaches its maximum effect level. Shorter values result in a more immediate impact, while longer values allow for a gradual build-up.
-
fdecay (Decay Time)
- Range: Seconds.
- Determines the time taken for the filter effect to diminish after peaking. Shorter decay times lead to a rapid return to the baseline, whereas longer times extend the effect's presence.
-
sweep (Frequency Modulation Range)
- Range: -1 to 1.
- Dictates the extent and direction of the cutoff frequency modulation. Positive values raise the frequency, negative values lower it, and zero indicates no modulation.
d1 $ sound "bd*4" # lpf 500 # resonance 0.5 # fattack 0.05 # fdecay 0.2 # sweep 0.5
This applies an LPF filter, where the cutoff frequency quickly ramps up to the effect level and then gradually falls back, with a noticeable sweep in the cutoff frequency.
These filters leverage the Vadim Filters from PortedPlugins.
These filters attenuate frequencies above a certain cutoff frequency, allowing lower frequencies to pass through. The 2-pole version offers a gentler slope compared to the 4-pole version, which provides a steeper cutoff.
Note that the freq
parameter should be replaced by the filter name (e.g
vlpf2
, vlpf4
, etc). This applies for all new filters.
Parameters:
freq
: Cutoff frequency (in Hz). Determines the frequency above which the signal will be attenuated.resonance
: Controls the resonance (or Q factor) at the cutoff frequency. Range: 0.0 to 1.0.sweep
: Modulates the cutoff frequency over time, based on the fattack and fdecay envelope.fattack
: Attack time (in seconds) for the frequency modulation envelope.fdecay
: Decay time (in seconds) for the frequency modulation envelope.
Same parameters, but this filter type is a band-pass filter, which allows frequencies within a certain range to pass through.
Same parameters, but this filter type is a high-pass filter, which attenuates frequencies below a certain cutoff frequency.
To use these filters in your TidalCycles setup, you must specify the desired filter and its parameters in your TidalCycles code. For example, to apply a Vadim LPF 2-pole filter with a cutoff frequency of 500 Hz and a resonance of 0.8, you would write:
d1 $ sound "bd sn" # vlpf2 500 # resonance 0.8
Simulates analog tape characteristics including warmth, saturation, and dynamic compression.
- bias: (
0.0 to 1.0
) Adjusts tape bias, affecting frequency response and distortion. - tape: (
0.0 to 1.0+
) Controls tape saturation level for harmonic distortion. - tapeDrive: (
0.0 to 1.0+
) Sets tape drive, influencing dynamic compression and distortion. - oversample: (
0
to4
) Determines oversampling level (0
= None,4
= x16) for quality enhancement.
d1 $ sound "bd sn" # tape 0.7 # tapeDrive 0.8 # bias 0.5 # oversample 1
This applies analog tape effects with moderate saturation and drive, a balanced bias setting, and basic oversampling.
Some synth definitions taken from here.
Adds a lush, modulated reverb effect to the audio signal, simulating various environments from small rooms to vast spaces.
- miroom: (
0.0 to 1.0
) Controls the reverb time, from short to long reverberation. - misize: (
0.0 to 1.0
) Adjusts the size of the simulated space. - midry: (
0.0 to 1.0
) Balances between the dry and wet signal. - midamp: (
0.0 to 1.0
) Sets the damping amount, affecting high frequency rolloff. - mihp: (
0.0 to 1.0
) Controls the high-pass filter frequency in the reverb's feedback path. - mifreeze: (
0 or 1
) Freezes the reverb for an infinite sustain effect. - midiff: (
0.0 to 1.0
) Adjusts the diffusion amount, influencing the smoothness of the reverb tail.
d1 $ s "drum*4" # miroom 0.5 # misize 0.1 # midry 0.5 # midamp 0.5 # mihp 0.05 # mifreeze 0 # midiff 0.625
This applies MiVerb with moderate room size and reverb time, balanced dry/wet mix, and some damping and diffusion.