--- title: AudioBuffer.copyFromChannel() slug: Web/API/AudioBuffer/copyFromChannel tags: - API - Audio - AudioBuffer - Copying - Frames - Method - Reference - Samples - Web Audio - Web Audio API - copy - copyFromChannel - sound translation_of: Web/API/AudioBuffer/copyFromChannel ---
{{domxref("AudioBuffer")}} インターフェイスの copyFromChannel()
メソッドは、 AudioBuffer
の指定されたチャンネルから音声サンプルデータを指定された {{domxref("Float32Array")}} へコピーします。
myArrayBuffer.copyFromChannel(destination, channelNumber, startInChannel);
destination
channelNumber
AudioBuffer
のチャンネル数です。startInChannel
{{optional_inline}}undefined
です。
indexSizeError
channelNumber
の値が存在しないチャンネル番号を指定している場合 (つまり、チャンネルの {{domxref("AudioBuffer.numberOfChannels", "numberOfChannels")}} 以上である場合)。startInChannel
の値がソースバッファーの中に既に存在するサンプルの現在の範囲の外にある場合。つまり、現在の {{domxref("AudioBuffer.length", "length")}} より大きい場合。この例では新しい音声バッファーを生成し、他のチャンネルからサンプルをコピーします。
var myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate); var anotherArray = new Float32Array(length); myArrayBuffer.copyFromChannel(anotherArray, 1, 0);
仕様 | 状態 | 備考 |
---|---|---|
{{SpecName('Web Audio API', '#widl-AudioBuffer-copyFromChannel-void-Float32Array-destination-long-channelNumber-unsigned-long-startInChannel', 'copyFromChannel')}} | {{Spec2('Web Audio API')}} |
{{Compat("api.AudioBuffer.copyFromChannel")}}