IIRFilterNode
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.
Das IIRFilterNode
-Interface der Web Audio API ist ein AudioNode
-Prozessor, der eine allgemeine Infinite Impulse Response (IIR) Filter implementiert; diese Art von Filter kann auch für die Implementierung von Klangregelgeräten und grafischen Equalizern verwendet werden. Es ermöglicht die Spezifikation der Parameter der Filterantwort, sodass diese nach Bedarf angepasst werden kann.
Anzahl der Eingänge | 1 |
---|---|
Anzahl der Ausgänge | 1 |
Channel Count Mode | "max" |
Channel Count | Gleich wie beim Eingang |
Channel Interpretation | "speakers" |
Typischerweise ist es am besten, das BiquadFilterNode
-Interface für die Implementierung von Filtern höherer Ordnung zu verwenden. Es gibt mehrere Gründe dafür:
- Biquad-Filter sind typischerweise weniger empfindlich gegenüber numerischen Eigenheiten.
- Die Filterparameter von Biquad-Filtern können automatisiert werden.
- Alle geraden IIR-Filter können mit
BiquadFilterNode
erstellt werden.
Wenn Sie jedoch einen ungeraden IIR-Filter erstellen müssen, sollten Sie IIRFilterNode
verwenden. Diese Schnittstelle kann auch nützlich sein, wenn Sie keine Automatisierung benötigen oder aus anderen Gründen.
Hinweis: Sobald der Node erstellt wurde, können die Koeffizienten nicht mehr geändert werden.
IIRFilterNode
s haben eine Nachlaufzeitreferenz; sie geben weiterhin nicht-stille Audiodaten mit Null-Eingabe aus. Als IIR-Filter bleibt die Nicht-Null-Eingabe für immer bestehen, aber dies kann in der Praxis nach einiger endlicher Zeit begrenzt werden, wenn sich die Ausgabe dem Nullpunkt ausreichend angenähert hat. Die tatsächliche Zeit hängt von den bereitgestellten Filterkoeffizienten ab.
Konstruktor
IIRFilterNode()
-
Erstellt eine neue Instanz eines IIRFilterNode-Objekts.
Instanz-Eigenschaften
Diese Schnittstelle hat keine eigenen Eigenschaften; sie erbt jedoch Eigenschaften von ihrem Eltern-Interface, AudioNode
.
Instanz-Methoden
Erbt Methoden von ihrem Eltern-Interface, AudioNode
. Sie hat auch die folgenden zusätzlichen Methoden:
getFrequencyResponse()
-
Verwendet die aktuellen Parametereinstellungen des Filters, um die Antwort für die in dem bereitgestellten Frequenz-Array angegebenen Frequenzen zu berechnen.
Beispiele
Ein einfaches IIR-Filter-Demo finden Sie bei Codepen. Siehe auch den Quellcode auf GitHub. Es enthält verschiedene Koeffizientenwerte für unterschiedliche Tiefpassfrequenzen — Sie können den Wert der Konstanten filterNumber
auf einen Wert zwischen 0 und 3 ändern, um die verschiedenen verfügbaren Effekte auszuprobieren.
Siehe auch unseren IIR-Filter verwenden-Leitfaden für eine vollständige Erklärung.
Spezifikationen
Specification |
---|
Web Audio API # IIRFilterNode |
Browser-Kompatibilität
BCD tables only load in the browser