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
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, usenumSeconds * 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). channelCount
-
Represents an integer used to determine how many channels are used when up-mixing and down-mixing connections to any inputs to the node. (See
AudioNode.channelCount
for more information.) Its usage and precise definition depend on the value ofchannelCountMode
. channelCountMode
-
Represents an enumerated value describing the way channels must be matched between the node's inputs and outputs. (See
AudioNode.channelCountMode
for more information including default values.) channelInterpretation
-
Represents an enumerated value describing the meaning of the channels. This interpretation will define how audio up-mixing and down-mixing will happen. The possible values are
"speakers"
or"discrete"
. (SeeAudioNode.channelCountMode
for more information including default values.)
Deprecated parameters
context
Deprecated-
A reference to an
AudioContext
. This parameter was removed from the spec.
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 asampleRate
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
BCD tables only load in the browser