The start()
method on AudioScheduledSourceNode
schedules a sound to begin playback at the specified time. If no time is specified, then the sound begins playing immediately.
Syntax
AudioScheduledSourceNode.start([when [, offset [, duration]]]);
Parameters
when
Optional- The time, in seconds, at which the sound should begin to play. This value is specified in the same time coordinate system as the
AudioContext
is using for itscurrentTime
attribute. A value of 0 (or omitting thewhen
parameter entirely) causes the sound to start playback immediately. offset
Optional- A floating-point number indicating the offset, in seconds, into the audio buffer where playback should begin. If 0 is passed then the playback will start from the beginning.
duration
Optional- A floating-point number indicating the duration, in seconds, to be played. If no value is passed then the duration will be equal to the length of the audio buffer minus the offset value
Return value
Exceptions
InvalidStateNode
- The node has already been started. This error occurs even if the node is no longer running because of a prior call to
stop()
. RangeError
- The value specified for
when
is negative.
Example
This example demonstrates how to create an OscillatorNode
which is scheduled to start playing in 2 seconds and stop playing 1 second after that. The times are calculated by adding the desired number of seconds to the context's current time stamp returned by AudioContext.currentTime
.
context = new AudioContext(); osc = context.createOscillator(); osc.connect(context.destination); /* Schedule the start and stop times for the oscillator */ osc.start(context.currentTime + 2); osc.stop(context.currentTime + 3);
Specifications
Specification | Status | Comment |
---|---|---|
Web Audio API The definition of 'start()' in that specification. |
Working Draft |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
start | Chrome Full support 14 | Edge Full support ≤79 | Firefox Full support 53 | IE No support No | Opera Full support 15 | Safari ? | WebView Android Full support Yes | Chrome Android Full support 18 | Firefox Android Full support 25 | Opera Android Full support 14 | Safari iOS ? | Samsung Internet Android Full support 1.0 |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown