--- 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 ---
{{APIRef("Web Audio API")}}

{{domxref("AudioBuffer")}} インターフェイスの copyFromChannel() メソッドは、 AudioBuffer の指定されたチャンネルから音声サンプルデータを指定された {{domxref("Float32Array")}} へコピーします。

構文

myArrayBuffer.copyFromChannel(destination, channelNumber, startInChannel);

引数

destination
チャンネルのサンプルのコピー先となる {{domxref("Float32Array")}} です。
channelNumber
チャンネルデータをコピーする現在の AudioBuffer のチャンネル数です。
startInChannel {{optional_inline}}
(任意) ソースチャンネルバッファー内でサンプルのコピーを始める位置のオフセットです。指定されていない場合は、既定で0の値 (バッファーの先頭) とみなされます。

返値

undefined です。

例外

indexSizeError
入力引数のうちの一つが、受付可能な範囲の外にある場合。

この例では新しい音声バッファーを生成し、他のチャンネルからサンプルをコピーします。

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")}}

関連情報