AudioBuffer.copyToChannel()

copyToChannel()AudioBuffer インターフェイスのメソッドで、元の配列から指定の AudioBuffer のチャンネルへとコピーします。

構文

js
copyToChannel(source, channelNumber, startInChannel);

引数

source

コピー元となるチャンネルデータの Float32Array です。

channelNumber

チャンネルデータのコピー先となる現在の AudioBuffer のチャンネル番号です。 channelNumberAudioBuffer.numberOfChannels 以上の場合は INDEX_SIZE_ERR 例外が発生します。

startInChannel 省略可

オプションで、データをコピーする先のオフセット位置です。 startInChannelAudioBuffer.length より大きければ、 INDEX_SIZE_ERR 例外が発生します。

js
var myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
var anotherArray = new Float32Array();
// myArrayBuffer の 2 番目のチャンネルからコピーする
myArrayBuffer.copyFromChannel(anotherArray, 1, 0);
// anotherArray から、 myArrayBuffer の 1 番目のチャンネルにコピーする。これで 2 つのチャンネルのデータは同じになる
myArrayBuffer.copyToChannel(anotherArray, 0, 0);

仕様書

Specification
Web Audio API
# dom-audiobuffer-copytochannel

ブラウザーの互換性

BCD tables only load in the browser

関連情報