AudioBuffer: copyFromChannel()-Methode

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.

Die copyFromChannel()-Methode des AudioBuffer-Interfaces kopiert die Audiodatenproben vom angegebenen Kanal des AudioBuffer in ein angegebenes Float32Array.

Syntax

js
copyFromChannel(destination, channelNumber, startInChannel)

Parameter

destination

Ein Float32Array, in das die Proben des Kanals kopiert werden.

channelNumber

Die Kanalnummer des aktuellen AudioBuffer, aus dem die Kanaldaten kopiert werden sollen.

startInChannel Optional

Ein optionaler Versatz in den Puffer des Quellkanals, von dem aus mit dem Kopieren der Proben begonnen werden soll. Wenn nicht angegeben, wird standardmäßig ein Wert von 0 (der Beginn des Puffers) angenommen.

Rückgabewert

Keiner (undefined).

Ausnahmen

indexSizeError

Einer der Eingabewerte hat einen Wert, der außerhalb des akzeptierten Bereichs liegt:

  • Der Wert von channelNumber gibt eine Kanalnummer an, die nicht existiert (d. h. er ist größer oder gleich dem Wert von numberOfChannels auf dem Kanal).
  • Der Wert von startInChannel liegt außerhalb des aktuellen Bereichs der bereits im Quellpuffer vorhandenen Proben; das heißt, er ist größer als dessen aktuelle length.

Beispiele

Dieses Beispiel erstellt einen neuen Audiopuffer und kopiert die Proben aus einem anderen Kanal hinein.

js
const myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
const anotherArray = new Float32Array(length);
myArrayBuffer.copyFromChannel(anotherArray, 1, 0);

Spezifikationen

Specification
Web Audio API
# dom-audiobuffer-copyfromchannel

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch