API reference
Every public class, method, and event in @codexo/exojs. Generated from source.
classPingPongDelayEffect
Stereo ping-pong delay effect using two cross-fed DelayNodes that bounce the signal alternately between left and right channels. The input feeds only the left delay; cross-feedback (L→R and R→L) then causes the signal to alternate channels on every tap, producing the characteristic L↔R slapback cascade. Each tap is routed through a StereoPannerNode panned hard left or right, maintaining hard-left / hard-right stereo separation throughout the feedback tail. Node graph: ``` input(GainNode) → dryGain ────────────────────────────────── output(GainNode) input → delayL → feedbackGainA → delayR ↑ delayR → feedbackGainB → delayL │ delayL → pannerL (pan = -1, hard left) → wetGain ─────────┘ delayR → pannerR (pan = +1, hard right) → wetGain ``` Gains: `dryGain.gain = 1 - wet`; `wetGain.gain = wet`.
import { PingPongDelayEffect } from '@codexo/exojs-audio-fx' Stereo ping-pong delay effect using two cross-fed DelayNodes that bounce the signal alternately between left and right channels. The input feeds only the left delay; cross-feedback (L→R and R→L) then causes the signal to alternate channels on every tap, producing the characteristic L↔R slapback cascade. Each tap is routed through a StereoPannerNode panned hard left or right, maintaining hard-left / hard-right stereo separation throughout the feedback tail.
Node graph: ``` input(GainNode) → dryGain ────────────────────────────────── output(GainNode) input → delayL → feedbackGainA → delayR ↑ delayR → feedbackGainB → delayL │ delayL → pannerL (pan = -1, hard left) → wetGain ─────────┘ delayR → pannerR (pan = +1, hard right) → wetGain ``` Gains: `dryGain.gain = 1 - wet`; `wetGain.gain = wet`.
new(options: PingPongDelayEffectOptions): PingPongDelayEffect destroy(): void delayTime: number feedback: number inputNode: AudioNode outputNode: AudioNode ready: Promise<void> wet: number