AudioBuffer: copyFromChannel() メソッド
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2021年4月.
copyFromChannel() は AudioBuffer インターフェイスのメソッドで、 AudioBuffer の指定されたチャンネルから音声サンプルデータを指定された Float32Array へコピーします。
構文
js
copyFromChannel(destination, channelNumber, startInChannel)
引数
destination-
チャンネルのサンプルのコピー先となる
Float32Arrayです。 channelNumber-
チャンネルデータをコピーする現在の
AudioBufferのチャンネル数です。 startInChannel省略可-
オプションで、ソースチャンネルバッファー内でサンプルのコピーを始める位置のオフセットです。指定されていない場合は、既定で 0 の値(バッファーの先頭)とみなされます。
返値
なし (undefined)。
例外
indexSizeError-
入力引数のうちの一つが、受付可能な範囲の外にある場合。
channelNumberの値が存在しないチャンネル番号を指定している場合(つまり、チャンネルのnumberOfChannels以上である場合)。startInChannelの値がソースバッファーの中に既に存在するサンプルの現在の範囲の外にある場合。つまり、現在のlengthより大きい場合。
例
この例では新しい音声バッファーを生成し、他のチャンネルからサンプルをコピーします。
js
const myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
const anotherArray = new Float32Array(length);
myArrayBuffer.copyFromChannel(anotherArray, 1, 0);
仕様書
| Specification |
|---|
| Web Audio API> # dom-audiobuffer-copyfromchannel> |
ブラウザーの互換性
Loading…