This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The DelayNode interface represents a delay-line; an AudioNode audio-processing module that causes a delay between the arrival of an input data and its propagation to the output.
A DelayNode always has exactly one input and one output, both with the same amount of channels.
When creating a graph that has a cycle, it is mandatory to have at least one DelayNode in the cycle, or the nodes taking part in the cycle will be muted.
| Number of inputs | 1 |
|---|---|
| Number of outputs | 1 |
| Channel count mode | "max" |
| Channel count |
2 (not used in the default count mode) |
| Channel interpretation | "speakers" |
DelayNode()Creates a new instance of an DelayNode object instance. As an alternative, you can use the BaseAudioContext.createDelay() factory method; see Creating an AudioNode.
Inherits properties from its parent, AudioNode.
DelayNode.delayTime Read only
An a-rate AudioParam representing the amount of delay to apply, specified in seconds.
No specific methods; inherits methods from its parent, AudioNode.
See BaseAudioContext.createDelay() for example code.
| Specification |
|---|
| Web Audio API> # DelayNode> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
DelayNode |
55 | 79 | 53 | 42 | 14.1 | 55 | 53 | 42 | 14.5 | 6.0 | 55 | 14.5 |
DelayNode |
24 | 12 | 25 | 15 | 7 | 25 | 25 | 14 | 7 | 1.5 | 4.4 | 7 |
delayTime |
24 | 12 | 25 | 15 | 7 | 25 | 25 | 14 | 7 | 1.5 | 4.4 | 7 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/DelayNode