Interface ModulatedDelayOptions

Construction-time configuration for a ModulatedDelayEffect, mirroring the modulated-delay AudioWorkletProcessor's AudioParam set (see import('./processors/modulated-delay').ModulatedDelayWorkletProcessor). 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 Dattorro's unified modulated-delay circuit (JAES 1997, Fig. 36) with Lagrange FIR fractional-delay interpolation (Laakso 1996). One topology — dry (blend) + a modulated wet tap (feedforward) + feedback on a FIXED center tap — yields delay/echo, chorus, flanger, vibrato and doubling from knob presets (Table 6). The createDelay/createChorus/createFlanger/ createVibrato/createDoubling factories are presets over these params.

interface ModulatedDelayOptions {
    blend?: number;
    delayTime?: number;
    depth?: number;
    feedback?: number;
    feedforward?: number;
    interpolation?: number | "linear" | "cubic";
    rate?: number;
}

Properties

blend?: number

Dry path gain (blend). Default 1. Range 0..1.

delayTime?: number

Nominal (center) delay in ms — the fixed feedback tap center. Default 5. Range 0..1000.

depth?: number

Peak LFO delay excursion in ms (CHORUS_WIDTH); 0 = pure delay. Default 0. Range 0..50.

feedback?: number

Feedback gain on the fixed center tap. Default 0. Range -0.9999999..0.9999999.

feedforward?: number

Wet (modulated tap) gain (feedforward). Default 0.7071. Range 0..1.

interpolation?: number | "linear" | "cubic"

Interpolation: 0 = cubic (4-tap Lagrange N=3), 1 = linear (2-tap N=1). Default 0. Accepts either the integer index or the matching string alias ("cubic" = 0, "linear" = 1), translated to the index in build().

rate?: number

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