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.
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