AudioBufferSourceNode: buffer Eigenschaft

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 buffer Eigenschaft des AudioBufferSourceNode Schnittstelle ermöglicht die Wiedergabe von Audio unter Verwendung eines AudioBuffer als Quelle der Klangdaten.

Wenn die buffer Eigenschaft auf den Wert null gesetzt ist, generiert der Knoten einen einzelnen Kanal, der nur Stille enthält (das heißt, jeder Samplewert ist 0).

Wert

Ein AudioBuffer, der die Daten enthält, die den Klang darstellen, den der Knoten abspielen wird.

Beispiele

Hinweis: Für ein vollständiges funktionierendes Beispiel, sehen Sie sich diesen live laufenden Code an oder betrachten Sie den Quellcode.

js
const myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);

button.onclick = () => {
  // Fill the buffer with white noise;
  //just random values between -1.0 and 1.0
  for (let channel = 0; channel < channels; channel++) {
    // This gives us the actual ArrayBuffer that contains the data
    const nowBuffering = myArrayBuffer.getChannelData(channel);
    for (let i = 0; i < frameCount; i++) {
      // Math.random() is in [0; 1.0]
      // audio needs to be in [-1.0; 1.0]
      nowBuffering[i] = Math.random() * 2 - 1;
    }
  }

  // Get an AudioBufferSourceNode.
  // This is the AudioNode to use when we want to play an AudioBuffer
  const source = audioCtx.createBufferSource();
  // set the buffer in the AudioBufferSourceNode
  source.buffer = myArrayBuffer;
};

Spezifikationen

Specification
Web Audio API
# dom-audiobuffersourcenode-buffer

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch