Baseline Widely available
Die createDynamicsCompressor()
-Methode der BaseAudioContext
-Schnittstelle wird verwendet, um einen DynamicsCompressorNode
zu erstellen, der zur Anwendung von Kompression auf ein Audiosignal genutzt werden kann.
Die Kompression verringert die Lautstärke der lautesten Teile des Signals und erhöht die Lautstärke der leisesten Teile. Insgesamt kann ein lauteres, reichhaltigeres und volleres Klangbild erzielt werden. Dies ist besonders wichtig in Spielen und Musik-Anwendungen, bei denen eine groÃe Anzahl einzelner Klänge gleichzeitig abgespielt wird und Sie den Gesamtpegel des Signals kontrollieren und helfen möchten, das Ãbersteuern (Verzerren) der Audioausgabe zu vermeiden.
Hinweis: Der DynamicsCompressorNode()
-Konstruktor ist die empfohlene Methode, um einen DynamicsCompressorNode
zu erstellen; siehe Erstellen eines AudioNode.
createDynamicsCompressor()
Parameter
Keine.
Rückgabewert BeispieleDer folgende Code zeigt, wie createDynamicsCompressor()
verwendet wird, um Kompression zu einem Audiotrack hinzuzufügen. Für ein vollständigeres Beispiel sehen Sie sich unser Grundlegendes Compressor-Beispiel (Quellcode anzeigen) an.
// Create a MediaElementAudioSourceNode
// Feed the HTMLMediaElement into it
const source = audioCtx.createMediaElementSource(myAudio);
// Create a compressor node
const compressor = audioCtx.createDynamicsCompressor();
compressor.threshold.setValueAtTime(-50, audioCtx.currentTime);
compressor.knee.setValueAtTime(40, audioCtx.currentTime);
compressor.ratio.setValueAtTime(12, audioCtx.currentTime);
compressor.attack.setValueAtTime(0, audioCtx.currentTime);
compressor.release.setValueAtTime(0.25, audioCtx.currentTime);
// connect the AudioBufferSourceNode to the destination
source.connect(audioCtx.destination);
button.onclick = () => {
const active = button.getAttribute("data-active");
if (active === "false") {
button.setAttribute("data-active", "true");
button.textContent = "Remove compression";
source.disconnect(audioCtx.destination);
source.connect(compressor);
compressor.connect(audioCtx.destination);
} else if (active === "true") {
button.setAttribute("data-active", "false");
button.textContent = "Add compression";
source.disconnect(compressor);
compressor.disconnect(audioCtx.destination);
source.connect(audioCtx.destination);
}
};
Spezifikationen Browser-Kompatibilität Siehe auch MDN-Feedback-Box War diese Ãbersetzung hilfreich?
Diese Seite wurde automatisch aus dem Englischen übersetzt.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4