files/en-us/web/api/audiobuffer/copyfromchannel/index.md
{{APIRef("Web Audio API")}}
The
copyFromChannel() method of the
{{domxref("AudioBuffer")}} interface copies the audio sample data from the specified
channel of the AudioBuffer to a specified
{{jsxref("Float32Array")}}.
copyFromChannel(destination, channelNumber, startInChannel)
destination
channelNumber
AudioBuffer to copy the channel data
from.startInChannel {{optional_inline}}
None ({{jsxref("undefined")}}).
indexSizeError
channelNumber specifies a channel number
which doesn't exist (that is, it's greater than or equal to the value of
{{domxref("AudioBuffer.numberOfChannels", "numberOfChannels")}} on the channel).startInChannel is outside the current range
of samples that already exist in the source buffer; that is, it's greater than its
current {{domxref("AudioBuffer.length", "length")}}.This example creates a new audio buffer, then copies the samples from another channel into it.
const myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
const anotherArray = new Float32Array(length);
myArrayBuffer.copyFromChannel(anotherArray, 1, 0);
{{Specifications}}
{{Compat}}