AudioBuffer: AudioBuffer() constructor

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.

The AudioBuffer constructor of the Web Audio API creates a new AudioBuffer object.

Syntax

js
new AudioBuffer(options)

Parameters

options

Options are as follows:

length

The size of the audio buffer in sample-frames. To determine the length to use for a specific number of seconds of audio, use numSeconds * sampleRate.

numberOfChannels

The number of channels for the buffer. The default is 1, and all user agents are required to support at least 32 channels.

sampleRate

The sample rate in Hz for the buffer. The default is the sample rate of the context used in constructing this object. User agents are required to support sample rates from 8,000 Hz to 96,000 Hz (but are allowed to go farther outside this range).

Exceptions

NotSupportedError DOMException

Thrown if one or more of the options are negative or otherwise has an invalid value (such as numberOfChannels being higher than supported, or a sampleRate outside the nominal range).

RangeError

Thrown if there isn't enough memory available to allocate the buffer.

Specifications

Specification
Web Audio API
# dom-audiobuffer-audiobuffer

Browser compatibility

desktop mobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
AudioBuffer() constructor
Chrome – Full support
Chrome 55 (Release date: 2016-12-01)
footnote
footnote The context parameter was supported up until version 57, but has now been removed.
Edge – Full support
Edge 79 (Release date: 2020-01-15)
footnote Full support
Firefox – Full support
Firefox 53 (Release date: 2017-04-19)
footnote Full support
Opera – Full support
Opera 42 (Release date: 2016-12-13)
footnote
footnote The context parameter was supported up until version 44, but has now been removed.
Safari – Full support
Safari 14.1 (Release date: 2021-04-26)
footnote Full support
Chrome Android – Full support
Chrome Android 55 (Release date: 2016-12-06)
footnote
footnote The context parameter was supported up until version 57, but has now been removed.
Firefox for Android – Full support
Firefox for Android 53 (Release date: 2017-04-19)
footnote Full support
Opera Android – Full support
Opera Android 42 (Release date: 2017-01-21)
footnote
footnote The context parameter was supported up until version 44, but has now been removed.
Safari on iOS – Full support
Safari on iOS 14.5 (Release date: 2021-04-26)
footnote Full support
Samsung Internet – Full support
Samsung Internet 6 (Release date: 2017-08-23)
footnote
footnote The context parameter was supported up until Samsung Internet 7.0, but has now been removed.
WebView Android – Full support
WebView Android 55 (Release date: 2016-12-06)
footnote
footnote The context parameter was supported up until version 57, but has now been removed.
WebView on iOS – Full support
WebView on iOS 14.5 (Release date: 2021-04-26)
footnote Full support

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
See implementation notes.