The stop method of the OscillatorNode interface specifies the time to stop playing the tone. Its parameter is optional and defaults to 0.


oscillator.stop(when); // stop playing oscillator at when


An optional double representing the audio context time when the oscillator should stop. If a value is not included, it defaults to 0. If the time is equal to or before the current audio context time, the oscillator will stop playing immediately.


The following example shows basic usage of an AudioContext to create an oscillator node. For an applied example, check out our Violent Theremin demo (see app.js for relevant code).

// create web audio api context
var audioCtx = new (window.AudioContext || window.webkitAudioContext)();

// create Oscillator node
var oscillator = audioCtx.createOscillator();


oscillator.stop(audioCtx.currentTime + 2); // stop 2 seconds after the current time


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

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 14 webkit 23 [1] Not supported 15 webkit
22 (unprefixed)
6 webkit
Feature Android Chrome Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile
Basic support Not supported 28 webkit 25 [1] 1.2 Not supported Not supported webkit

[1] The parameter wasn't optional until Firefox 30.

See also


© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.