This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.
The AudioBufferSourceNode()
constructor creates a new AudioBufferSourceNode
object.
Syntax
var audioBufferSourceNode = new AudioBufferSourceNode(context, options)
Parameters
- context
- A reference to an
AudioContext
. - options Optional
- Options are as follows:
buffer
: An instance ofAudioBuffer
to be played.detune
: A value in cents to modulate the speed of audio stream rendering. Its nominal range is (-∞, ∞). The default is0
.loop
: A boolean indicating whether the audio should play in a loop. The default isfalse
. If the loop is dynamically modified during playback, the new value will take effect on the next processing block of audio.loopEnd
: An optional value, in seconds, where looping should end if the loop attribute istrue
. The default is0
. Its value is exclusive to the content of the loop. The sample frames, comprising the loop, run from the valuesloopStart
toloopEnd
-(1/sampleRate
). It's sensible to set this to a value between 0 and the duration of the buffer. IfloopEnd
is less than 0, looping will end at 0. IfloopEnd
is greater than the duration of the buffer, looping will end at the end of the buffer. This attribute is converted to an exact sample frame offset within the buffer, by multiplying by the buffer's sample rate and rounding to the nearest integer value. Thus, its behavior is independent of the value of theplaybackRate
parameter.
loopStart
: An optional value in seconds, where looping should end if the loop attribute istrue
. The default is0
. It's sensible to set this to a value between 0 and the duration of the buffer. IfloopStart
is less than 0, looping will begin at 0. IfloopStart
is greater than the duration of the buffer, looping will begin at the end of the buffer. This attribute is converted to an exact sample frame offset within the buffer, by multiplying by the buffer's sample rate and rounding to the nearest integer value. Thus, its behavior is independent of the value of theplaybackRate
parameter.playbackRate
: The speed at which to render the audio stream. Its default value is1
. This parameter is k-rate. This is a compound parameter with detune. Its nominal range is (-∞, ∞).
Specifications
Specification | Status | Comment |
---|---|---|
Web Audio API The definition of 'AudioBufferSourceNode()' in that specification. |
Working Draft | Initial definition. |
Browser Compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | 55[1] | ? | ? | 42 | ? |
Feature | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | 55[1] | 55[1] | ? | ? | ? | 42 | ? |
[1] Before Chrome 59, the default values were not supported.
Document Tags and Contributors
Tags:
Contributors to this page:
jpmedley,
bunnybooboo
Last updated by:
jpmedley,