Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

AudioProcessingEvent: inputBuffer-Eigenschaft

Deprecated

Avoid using this feature in new projects. This feature may be a candidate for removal from web standards or browsers.

Die schreibgeschützte inputBuffer-Eigenschaft der AudioProcessingEvent-Schnittstelle repräsentiert den Eingabepuffer eines Audioverarbeitungsereignisses.

Der Eingabepuffer wird durch ein AudioBuffer-Objekt dargestellt, das eine Sammlung von Audiokanälen enthält. Jeder Kanal ist ein Array von Gleitkommawerten, das die Wellenform des Audiosignals darstellt, codiert als eine Reihe von Amplituden. Die Anzahl der Kanäle und die Länge jedes Kanals werden durch die Eigenschaften channel count und buffer size des AudioBuffer bestimmt.

Wert

Ein AudioBuffer-Objekt.

Beispiele

In diesem Beispiel wird ein ScriptProcessorNode mit einer Puffergröße von 256 Samples, 2 Eingangskanälen und 2 Ausgangskanälen erstellt. Wenn ein audioprocess-Ereignis ausgelöst wird, werden die Eingabe- und Ausgabepuffer aus dem Ereignisobjekt abgerufen. Die Audiodaten im Eingabepuffer werden verarbeitet und das Ergebnis in den Ausgabepuffer geschrieben. In diesem Fall werden die Audiodaten um den Faktor 0.5 skaliert.

js
const audioContext = new AudioContext();
const processor = audioContext.createScriptProcessor(256, 2, 2);

processor.addEventListener("audioprocess", (event) => {
  const inputBuffer = event.inputBuffer;
  const outputBuffer = event.outputBuffer;

  for (let channel = 0; channel < outputBuffer.numberOfChannels; channel++) {
    const inputData = inputBuffer.getChannelData(channel);
    const outputData = outputBuffer.getChannelData(channel);

    // Process the audio data here
    for (let i = 0; i < outputBuffer.length; i++) {
      outputData[i] = inputData[i] * 0.5;
    }
  }
});

processor.connect(audioContext.destination);

Spezifikationen

Spezifikation
Web Audio API
# dom-audioprocessingevent-inputbuffer

Browser-Kompatibilität

Siehe auch