AudioData: copyTo() method
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Note: This feature is available in Dedicated Web Workers.
The copyTo() method of the AudioData interface copies a plane of an AudioData object to a destination buffer.
Syntax
copyTo(destination, options)
Parameters
destination-
An
ArrayBuffer, aTypedArray, or aDataViewto copy the plane to. options-
An object containing the following:
planeIndex-
The index of the plane to copy from.
frameOffsetOptional-
An integer giving the offset of the first frame to copy within the plane. Defaults to
0. frameCountOptional-
An integer giving the number of frames to copy. If omitted, all frames from
frameOffsetto the end of the plane are copied. formatOptional-
A string indicating the audio format that the source samples should be converted to when copied to the destination. This can be any of the values:
"u8","s16","s32","f32","u8-planar","s16-planar","s32-planar", and"f32-planar"(seeAudioData.formatfor more information). Note that"f32-planar"must be supported. If omitted, the samples are copied in theAudioData's own format.
Return value
Undefined.
Exceptions
InvalidStateErrorDOMException-
Thrown if the
AudioDataobject has been transferred. RangeError-
Thrown if one of the following conditions is met:
- The length of the sample is longer than the destination length.
- The format of the
AudioDataobject describes a planar format, butoptions.planeIndexis outside of the number of planes available. - The format of the
AudioDataobject describes an interleaved format, butoptions.planeIndexis greater than0.
NotSupportedErrorDOMException-
Thrown if the specified
formatto convert the data to is not supported.
Examples
The following example copies the plane at index 1 to a destination buffer.
AudioData.copyTo(AudioBuffer, { planeIndex: 1 });
Specifications
| Specification |
|---|
| WebCodecs> # dom-audiodata-copyto> |