The stop() method on AudioScheduledSourceNode schedules a sound to cease playback at the specified time. If no time is specified, then the sound stops playing immediately.

Each time you call stop() on the same node, the specified time replaces any previously-scheduled stop time that hasn't occurred yet. If the node has already stopped, this method has no effect.

Note: If a scheduled stop time occurs before the node's scheduled start time, the node never starts to play.




when Optional
The time, in seconds, at which the sound should stop playing. This value is specified in the same time coordinate system as the AudioContext is using for its currentTime attribute. Omitting this parameter, specifying a value of 0, or passing a negative value causes the sound to stop playback immediately.

Return value



The node has not been started by calling start().
The value specified for when is negative.


This example demonstrates starting an oscillator node, scheduled to begin playing at once and to stop playing in one second. The stop time is determined by taking the audio context's current time from AudioContext.currentTime and adding 1 second.

context = new AudioContext();
osc = context.createOscillator();

/* Let's play a sine wave for one second. */

osc.stop(context.currentTime + 1);


Specification Status Comment
Web Audio API
The definition of 'stop()' in that specification.
Working Draft

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
stopChrome Full support 14Edge Full support 79Firefox Full support 53IE No support NoOpera Full support 15Safari Full support 14WebView Android Full support YesChrome Android Full support 18Firefox Android Full support 25Opera Android Full support 14Safari iOS Full support 14Samsung Internet Android Full support 1.0


Full support  
Full support
No support  
No support

See also