API reference

Every public class, method, and event in @codexo/exojs. Generated from source.

C

classPingPongDelayEffect

@codexo/exojs-audio-fx / audio / stable

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`.

6
props
1
methods
0
events
Import
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`.

Constructors1
Methods1
destroy(): void
Disconnects all audio nodes and releases resources. Must be called when the effect is no longer needed.
Properties6
delayTime: number
Delay time per tap in seconds. Both the left and right delay nodes share the same delay time. Range 0.01..2, default 0.25. Changes are ramped smoothly via setTargetAtTime.
feedback: number
Cross-channel feedback fraction. Each delayed tap feeds this fraction of its signal into the opposite channel's delay, sustaining the L↔R bounce. Range 0..0.9, default 0.4. Changes are ramped smoothly via setTargetAtTime.
inputNode: AudioNode
The node where audio enters this effect. Throws if the audio context is not yet initialized.
outputNode: AudioNode
The node where audio exits this effect. Throws if the audio context is not yet initialized.
ready: Promise<void>
Resolves when the effect is fully initialized. Defaults to immediately-resolved for sync effects.
wet: number
Wet (ping-pong) mix level, 0..1. The dry level is automatically 1 - wet. Changes are ramped smoothly via setTargetAtTime. Default 0.4.
Source