This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
The disconnect() method of the AudioNode interface lets you disconnect one or more nodes from the node on which the method is called.
disconnect()
There are several versions of the disconnect() method, which accept different combinations of parameters to control which nodes to disconnect from. If no parameters are provided, all outgoing connections are disconnected.
destination OptionalAn AudioNode or AudioParam specifying the node or nodes to disconnect from. If this value is an AudioNode, a single node is disconnected from, with any other, optional, parameters (output and/or input) further limiting which inputs and/or outputs should be disconnected. If this value is an AudioParam, then the connection to that AudioParam is terminated, and the node's contributions to that computed parameter become 0 going forward once the change takes effect.
output OptionalAn index describing which output from the current AudioNode is to be disconnected. The index numbers are defined according to the number of output channels (see Audio channels).
input OptionalAn index describing which input into the specified destination AudioNode is to be disconnected. The index numbers are defined according to the number of input channels (see Audio channels).
None (undefined).
IndexSizeError DOMException
Thrown if the value specified as input or output is invalid, referring to a node which doesn't exist or is outside the permitted range.
InvalidAccessError DOMException
Thrown if the node on which disconnect() is called isn't connected to the specified destination node.
const audioCtx = new AudioContext(); const oscillator = audioCtx.createOscillator(); const gainNode = audioCtx.createGain(); oscillator.connect(gainNode); gainNode.connect(audioCtx.destination); gainNode.disconnect();
| Specification |
|---|
| Web Audio API> # dom-audionode-disconnect> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
disconnect |
14 | 12 | 25 | 15 | 6 | 18 | 25 | 14 | 6 | 1.0 | 4.4.3 | 6 |
destination_parameter |
43 | ≤18 | No | 30 | No | 43 | No | 30 | No | 4.0 | 43 | No |
input_parameter |
43 | ≤18 | No | 30 | No | 43 | No | 30 | No | 4.0 | 43 | No |
© 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/AudioNode/disconnect