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 July 2015.
Die normalize
-Eigenschaft des ConvolverNode
-Interfaces
ist ein Boolean, der steuert, ob die Impulsantwort aus dem Puffer durch eine Gleichleistungs-Normalisierung skaliert wird, wenn das buffer
-Attribut gesetzt ist oder nicht.
Der Standardwert ist true
, um ein gleichmäßigeres Ausgangsniveau des Convolvers zu erreichen, wenn dieser mit unterschiedlichen Impulsantworten geladen wird. Wenn normalize
auf false
gesetzt wird, wird die Faltung ohne Vorverarbeitung/Skalierung der Impulsantwort wiedergegeben. Änderungen an diesem Wert wirken sich erst das nächste Mal aus, wenn das buffer
-Attribut gesetzt wird.
Wert
Ein Boolean.
Beispiele
Normalisierung ausschalten
Das folgende Beispiel erstellt einen Convolver-Node und weist ihm einen AudioBuffer
zu. Bevor der Audio-Puffer zugewiesen wird, 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 |