AudioBuffer: copyToChannel() method

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 copyToChannel() method of the AudioBuffer interface copies the samples to the specified channel of the AudioBuffer, from the source array.

Syntax

js
copyToChannel(source, channelNumber)
copyToChannel(source, channelNumber, startInChannel)

Parameters

source

A Float32Array that the channel data will be copied from.

channelNumber

The channel number of the current AudioBuffer to copy the channel data to. If channelNumber is greater than or equal to AudioBuffer.numberOfChannels, an INDEX_SIZE_ERR will be thrown.

startInChannel Optional

An optional offset to copy the data to. If startInChannel is greater than AudioBuffer.length, an INDEX_SIZE_ERR will be thrown.

Return value

None (undefined).

Examples

js
const myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
const anotherArray = new Float32Array();
// Copy channel data from second channel of myArrayBuffer.
myArrayBuffer.copyFromChannel(anotherArray, 1, 0);
// Copy data from anotherArray to first channel of myArrayBuffer. Both channels have the same data now.
myArrayBuffer.copyToChannel(anotherArray, 0, 0);

Specifications

Specification
Web Audio API
# dom-audiobuffer-copytochannel

Browser compatibility

BCD tables only load in the browser

See also