IIRFilterNode 接口在 Web 音频 API AudioNode processor which implements a general infinite impulse response (IIR)  filter; this type of filter can be used to implement tone control devices and graphic equalizers as well. It lets the parameters of the filter response be specified, so that it can be tuned as needed.

输入数 1
输出数 1
通道计数模式 "max"
通道计数 如同输入
通道解释 "speakers"

Typically, it's best to use the BiquadFilterNode interface to implement higher-order filters. There are several reasons why:

  • Biquad filters are typically less sensitive to numeric quirks.
  • The filter parameters of biquad filters can be automated.
  • All even-ordered IIR filters can be created using BiquadFilterNode .

However, if you need to create an odd-ordered IIR filter, you'll need to use IIRFilterNode . You may also find this interface useful if you don't need automation, or for other reasons.

Once the node has been created, you can't change its coefficients.

IIRFilterNode s have a tail-time reference; they continue to output non-silent audio with zero input. As an IIR filter, the non-zero input continues forever, but this can be limited after some finite time in practice, when the output has approached zero closely enough. The actual time that takes depends on the filter coefficients provided.

构造函数

IIRFilterNode()

Creates a new instance of an IIRFilterNode object.

特性

This interface has no properties of its own; however, it inherits properties from its parent, AudioNode .

方法

继承方法来自其父级 AudioNode . It also has the following additional methods:

getFrequencyResponse()

Uses the filter's current parameter settings to calculate the response for frequencies specified in the provided array of frequencies.

范例

You can find a simple IIR filter demo live on Codepen . Also see the source code on GitHub . It includes some different coefficient values for different lowpass frequencies — you can change the value of the filterNumber constant to a value between 0 and 3 to check out the different available effects.

Also see our Using IIR filters guide for a full explanation.

规范

规范 状态 注释
Web 音频 API
The definition of 'IIRFilterNode' in that specification.
工作草案 Initial Definition

浏览器兼容性

The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request. 更新 GitHub 上的兼容性数据
桌面 移动
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
IIRFilterNode Chrome 49 Edge ≤18 Firefox 50 IE 不支持 No Opera 36 Safari ? WebView Android 49 Chrome Android 49 Firefox Android 50 Opera Android 36 Safari iOS ? Samsung Internet Android 5.0
IIRFilterNode() 构造函数 Chrome 55 注意事项
55 注意事项
Before version 59, the default values were not supported.
Edge ≤79 Firefox 53 IE 不支持 No Opera 42 Safari ? WebView Android 55 注意事项
55 注意事项
Before version 59, the default values were not supported.
Chrome Android 55 Firefox Android 53 Opera Android 42 Safari iOS ? Samsung Internet Android 6.0 注意事项
6.0 注意事项
Before Samsung Internet 7.0, the default values were not supported.
getFrequencyResponse Chrome 49 Edge 14 Firefox 50 IE 不支持 No Opera 36 Safari ? WebView Android 49 Chrome Android 49 Firefox Android 50 Opera Android 36 Safari iOS ? Samsung Internet Android 5.0

图例

完整支持

完整支持

不支持

不支持

兼容性未知 ?

兼容性未知

见实现注意事项。

另请参阅

元数据

  • 最后修改: