Skip to content

Effects Catalog

Effect constructors for use with track.load_effect(...). Import with use "std/effects";.

fn Allpass(cutoff: Number, resonance: Number, name: String) -> Effect

Creates an allpass filter effect (SVF topology).

Passes all frequencies at equal amplitude but shifts phase. Useful for phaser-style effects when modulated.

drums.load_effect(Allpass(1000, 2.0));

Parameters:

  • cutoff (Number, optional) — center frequency in Hz (default: 1000.0, range: 20–20000)
  • resonance (Number, optional) — filter resonance / Q (default: 0.707 Butterworth, range: 0.1–30)
  • name (String, optional) — slot name for idempotent loading (default: “Allpass”)

Returns: Effect — a built-in DSP allpass filter

fn Bandpass(cutoff: Number, resonance: Number, name: String) -> Effect

Creates a bandpass filter effect (SVF topology).

drums.load_effect(Bandpass(500, 2.0));

Parameters:

  • cutoff (Number, optional) — center frequency in Hz (default: 1000.0, range: 20–20000)
  • resonance (Number, optional) — filter resonance / Q (default: 0.707 Butterworth, range: 0.1–30)
  • name (String, optional) — slot name for idempotent loading (default: “Bandpass”)

Returns: Effect — a built-in DSP bandpass filter

fn Delay(time: Number, feedback: Number, name: String) -> Effect

Creates a delay effect with feedback.

drums.load_effect(Delay(0.25, 0.5));
drums.load_effect(Delay(0.125).param_set("Mix", 0.3));

Parameters:

  • time (Number, optional) — delay time in seconds (default: 0.25, range: 0.001–2.0)
  • feedback (Number, optional) — feedback amount (default: 0.5, range: 0.0–0.99)
  • name (String, optional) — slot name for idempotent loading (default: “Delay”)

Returns: Effect — a built-in DSP delay effect Additional parameters (set via param_set()): “Mix” — dry/wet mix 0.0–1.0 (default: 1.0)

fn Distortion(drive: Number, tone: Number, name: String) -> Effect

Creates a distortion effect (asymmetrical/transistor-style clipping).

Uses tanh for positive half-cycles and soft clipping for negative, producing odd and even harmonics. Includes DC blocker and tone filter.

bass.load_effect(Distortion(0.6, 0.4));

Parameters:

  • drive (Number, optional) — distortion intensity (default: 0.5, range: 0.0–1.0)
  • tone (Number, optional) — post-distortion brightness (default: 0.7, range: 0.0–1.0)
  • name (String, optional) — slot name for idempotent loading (default: “Distortion”)

Returns: Effect — a built-in DSP distortion effect Additional parameters (set via param_set()): “Level” — output level 0.0–1.0 (default: 0.5) “Mix” — dry/wet mix 0.0–1.0 (default: 1.0)

fn Highpass(cutoff: Number, resonance: Number, name: String) -> Effect

Creates a highpass filter effect (SVF topology).

bass.load_effect(Highpass(80));

Parameters:

  • cutoff (Number, optional) — cutoff frequency in Hz (default: 1000.0, range: 20–20000)
  • resonance (Number, optional) — filter resonance / Q (default: 0.707 Butterworth, range: 0.1–30)
  • name (String, optional) — slot name for idempotent loading (default: “Highpass”)

Returns: Effect — a built-in DSP highpass filter

fn Lowpass(cutoff: Number, resonance: Number, name: String) -> Effect

Creates a lowpass filter effect (SVF topology).

drums.load_effect(Lowpass(800));
drums.load_effect(Lowpass(2000, 4.0));

Parameters:

  • cutoff (Number, optional) — cutoff frequency in Hz (default: 1000.0, range: 20–20000)
  • resonance (Number, optional) — filter resonance / Q (default: 0.707 Butterworth, range: 0.1–30)
  • name (String, optional) — slot name for idempotent loading (default: “Lowpass”)

Returns: Effect — a built-in DSP lowpass filter

fn Notch(cutoff: Number, resonance: Number, name: String) -> Effect

Creates a notch (band-reject) filter effect (SVF topology).

drums.load_effect(Notch(3000, 8.0));

Parameters:

  • cutoff (Number, optional) — center frequency in Hz (default: 1000.0, range: 20–20000)
  • resonance (Number, optional) — filter resonance / Q (default: 0.707 Butterworth, range: 0.1–30)
  • name (String, optional) — slot name for idempotent loading (default: “Notch”)

Returns: Effect — a built-in DSP notch filter

fn Overdrive(drive: Number, tone: Number, name: String) -> Effect

Creates an overdrive effect (symmetrical/tube-style tanh clipping).

Includes a DC-blocking filter before clipping and a one-pole tone filter after.

bass.load_effect(Overdrive(0.3, 0.5));

Parameters:

  • drive (Number, optional) — distortion intensity (default: 0.5, range: 0.0–1.0)
  • tone (Number, optional) — post-distortion brightness (default: 0.7, range: 0.0–1.0)
  • name (String, optional) — slot name for idempotent loading (default: “Overdrive”)

Returns: Effect — a built-in DSP overdrive effect Additional parameters (set via param_set()): “Level” — output level 0.0–1.0 (default: 0.5) “Mix” — dry/wet mix 0.0–1.0 (default: 1.0)

fn Peak(cutoff: Number, resonance: Number, name: String) -> Effect

Creates a peak (bell) filter effect (SVF topology).

Boosts or cuts a narrow band of frequencies around the center frequency.

drums.load_effect(Peak(5000, 4.0));

Parameters:

  • cutoff (Number, optional) — center frequency in Hz (default: 1000.0, range: 20–20000)
  • resonance (Number, optional) — filter resonance / Q (default: 0.707 Butterworth, range: 0.1–30)
  • name (String, optional) — slot name for idempotent loading (default: “Peak”)

Returns: Effect — a built-in DSP peak filter

fn PlateReverb(size: Number, damping: Number, diffusion: Number, predelay: Number, mix: Number, name: String) -> Effect

Creates a plate reverb effect (Dattorro algorithm).

Implemented as a CLAP plugin (resonon-reverb-plate), not a dsp effect block.

drums.load_effect(PlateReverb(0.7, 0.3, 0.8));

Parameters:

  • size (Number, optional) — tank size (default: 0.5, range: 0.0–1.0)
  • damping (Number, optional) — high-frequency damping (default: 0.5, range: 0.0–1.0)
  • diffusion (Number, optional) — diffusion amount (default: 0.7, range: 0.0–1.0)
  • predelay (Number, optional) — pre-delay amount (default: 0.0, range: 0.0–1.0)
  • mix (Number, optional) — dry/wet mix (default: 0.33, range: 0.0–1.0)
  • name (String, optional) — slot name for idempotent loading (default: “PlateReverb”)

Returns: Effect — a CLAP-backed plate reverb effect

fn Reverb(room: Number, damp: Number, width: Number, mix: Number, name: String) -> Effect

Creates a reverb effect (Freeverb algorithm).

Implemented as a CLAP plugin (resonon-reverb), not a dsp effect block.

drums.load_effect(Reverb(0.7, 0.3));
drums.load_effect(Reverb(0.5, 0.5, 1.0, 0.2, "ShortVerb"));

Parameters:

  • room (Number, optional) — room size 0.0–1.0 (default: 0.5)
  • damp (Number, optional) — high-frequency damping 0.0–1.0 (default: 0.5)
  • width (Number, optional) — stereo width 0.0–1.0 (default: 1.0)
  • mix (Number, optional) — dry/wet mix 0.0–1.0 (default: 0.33)
  • name (String, optional) — slot name for idempotent loading (default: “Reverb”)

Returns: Effect — a CLAP-backed reverb effect