AudioBufferSourceNode.AudioBufferSourceNode()

The AudioBufferSourceNode() constructor creates a new AudioBufferSourceNode object instance.

Syntax

var audioBufferSourceNode = new AudioBufferSourceNode(context, options)

Parameters

Inherits parameters from the AudioNodeOptions dictionary.

context
A reference to an AudioContext.
options Optional
Options are as follows:
  • buffer: An instance of AudioBuffer to be played.
  • detune: A value in cents to modulate the speed of audio stream rendering. Its nominal range is (-∞, ∞). The default is 0.
  • loop: A boolean indicating whether the audio should play in a loop. The default is false. 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 is true. The default is 0. Its value is exclusive to the content of the loop. The sample frames, comprising the loop, run from the values loopStart to loopEnd-(1/sampleRate). It's sensible to set this to a value between 0 and the duration of the buffer. If loopEnd is less than 0, looping will end at 0. If loopEnd 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 the playbackRate parameter.
  • loopStart: An optional value in seconds, where looping should end if the loop attribute is true. The default is 0. It's sensible to set this to a value between 0 and the duration of the buffer. If loopStart is less than 0, looping will begin at 0. If loopStart 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 the playbackRate parameter.
  • playbackRate: The speed at which to render the audio stream. Its default value is 1. This parameter is k-rate. This is a compound parameter with detune. Its nominal range is (-infinity; to +infinity;).

Return value

A new AudioBufferSourceNode object instance.

Specifications

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

Browser Compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung Internet
Basic supportChrome Full support 55
Notes
Full support 55
Notes
Notes Before version 59, the default values were not supported.
Edge ? Firefox Full support 53IE No support NoOpera Full support 42Safari ? WebView Android Full support 55
Notes
Full support 55
Notes
Notes Before version 59, the default values were not supported.
Chrome Android Full support 55
Notes
Full support 55
Notes
Notes Before version 59, the default values were not supported.
Edge Mobile ? Firefox Android Full support 53Opera Android Full support 42Safari iOS ? Samsung Internet Android Full support 6.0

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
See implementation notes.
See implementation notes.

Document Tags and Contributors

Contributors to this page: chrisdavidmills, fscholz, jpmedley, david_ross
Last updated by: chrisdavidmills,