AudioBuffer.copyFromChannel()

The copyFromChannel() method of the AudioBuffer interface copies the audio sample data from the specified channel of the AudioBuffer to a specified Float32Array.

Syntax

myArrayBuffer.copyFromChannel(destination, channelNumber, startInChannel);

Parameters

destination
A Float32Array to copy the channel's samples to.
channelNumber
The channel number of the current AudioBuffer to copy the channel data from.
startInChannel Optional
An optional offset into the source channel's buffer from which to begin copying samples. If not specified, a value of 0 (the beginning of the buffer) is assumed by default.

Return value

undefined.

Exceptions

indexSizeError
One of the input parameters has a value that is outside the accepted range:
  • The value of channelNumber specifies a channel number which doesn't exist (that is, it's greater than or equal to the value of numberOfChannels on the channel).
  • The value of startInChannel is outside the current range of samples that already exist in the source buffer; that is, it's greater than its current length.

Example

This example creates a new audio buffer, then copies the samples from another channel into it.

var myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
var anotherArray = new Float32Array(length);
myArrayBuffer.copyFromChannel(anotherArray, 1, 0);

Specification

Specification Status Comment
Web Audio API
The definition of 'copyFromChannel' in that specification.
Working Draft

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
copyFromChannelChrome Full support 14Edge Full support 13Firefox Full support 25IE No support NoOpera Full support 15Safari Full support 6WebView Android Full support YesChrome Android Full support 18Firefox Android Full support 26Opera Android Full support 14Safari iOS ? Samsung Internet Android Full support 1.0

Legend

Full support
Full support
No support
No support
Compatibility unknown
Compatibility unknown

See also