Interface PhaserOptions

Construction-time configuration for a PhaserEffect, mirroring the phaser AudioWorkletProcessor's AudioParam set (see import('./processors/phaser').PhaserWorkletProcessor). All fields are optional; the worklet clamps to its documented ranges downstream. Field NAMES match the AudioParam names exactly (they flow straight through as parameterData).

The effect is a classic MXR/Univibe-style phaser: a cascade of first-order allpass sections at a common LFO-swept break frequency, summed additively with the dry signal to sweep notches through the spectrum (Smith STAN-M-21; PASP §8.9). Two allpass sections make one notch.

interface PhaserOptions {
    depth?: number;
    feedback?: number;
    frequency?: number;
    mix?: number;
    rate?: number;
    stages?: number;
}

Properties

depth?: number

Log sweep depth in octaves (break freq = 2^(depthlfo)). Default 1.5. Range 0..4.

feedback?: number

Feedback (regeneration/resonance). Default 0. Range -0.95..0.95.

frequency?: number

Center break frequency of the allpass sections, in Hz. Default 500. Range 20..10000.

mix?: number

Additive wet gain (notch depth); y = x + mix*cascade. Default 0.5. Range 0..1.

rate?: number

LFO rate in Hz. Default 0.5. Range 0..20.

stages?: number

Number of first-order allpass sections (2 per notch). Default 4. Range 2..12.