ConvolverNode: normalize-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 normalize-Eigenschaft des ConvolverNode-Interfaces ist ein boolescher Wert, der steuert, ob die Impulsantwort aus dem Puffer durch eine Gleichleistungsnormalisierung skaliert wird, wenn das buffer-Attribut gesetzt ist, oder nicht.

Der Standardwert ist true, um bei der Verwendung verschiedener Impulsantworten ein gleichmäßigeres Ausgangspegel aus dem Convolver zu erreichen. Wenn normalize auf false gesetzt wird, wird die Faltung ohne Vorverarbeitung/Skalierung der Impulsantwort gerendert. Änderungen an diesem Wert werden erst beim nächsten Setzen des buffer-Attributs wirksam.

Wert

Ein boolescher Wert.

Beispiele

Deaktivierung der Normalisierung

Das folgende Beispiel erstellt einen Convolver-Knoten und weist ihm einen AudioBuffer zu. Vor dem Zuweisen des Audiopuffers wird normalize auf false gesetzt.

js
const audioCtx = new AudioContext();
// ...

const convolver = audioCtx.createConvolver();
// ...

// Grab audio track via fetch() for convolver node
try {
  const response = await fetch(
    "https://mdn.github.io/voice-change-o-matic/audio/concert-crowd.ogg",
  );
  const arrayBuffer = await response.arrayBuffer();
  const decodedAudio = await audioCtx.decodeAudioData(arrayBuffer);
  convolver.normalize = false; // must be set before the buffer, to take effect
  convolver.buffer = decodedAudio;
} catch (error) {
  console.error(
    `Unable to fetch the audio file: ${name} Error: ${err.message}`,
  );
}

Spezifikationen

Specification
Web Audio API
# dom-convolvernode-normalize

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch