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.

Giao diện IIRFilterNode của Web Audio API là một bộ xử lý AudioNode thực hiện bộ lọc infinite impulse response (IIR) tổng quát; loại bộ lọc này có thể được dùng để triển khai các thiết bị điều chỉnh âm thanh và bộ cân bằng đồ họa. Nó cho phép chỉ định các tham số phản hồi của bộ lọc để có thể điều chỉnh theo nhu cầu.

EventTarget AudioNode IIRFilterNode
Number of inputs 1
Number of outputs 1
Channel count mode "max"
Channel count Same as on the input
Channel interpretation "speakers"

Thông thường, tốt hơn là sử dụng giao diện BiquadFilterNode để triển khai các bộ lọc bậc cao hơn vì một số lý do:

  • Bộ lọc Biquad thường ít nhạy cảm hơn với các vấn đề số học.
  • Các tham số bộ lọc của bộ lọc Biquad có thể được tự động hóa.
  • Tất cả các bộ lọc IIR bậc chẵn đều có thể được tạo bằng BiquadFilterNode.

Tuy nhiên, nếu bạn cần tạo bộ lọc IIR bậc lẻ, bạn sẽ cần dùng IIRFilterNode. Bạn cũng có thể thấy giao diện này hữu ích nếu không cần tự động hóa, hoặc vì các lý do khác.

Note: Sau khi nút được tạo, bạn không thể thay đổi các hệ số của nó.

IIRFilterNode có tham chiếu tail-time; chúng tiếp tục xuất âm thanh không im lặng với đầu vào bằng không. Là bộ lọc IIR, đầu vào khác không tiếp tục mãi mãi, nhưng điều này có thể bị giới hạn sau một khoảng thời gian hữu hạn trong thực tế, khi đầu ra tiến gần đủ đến không. Thời gian thực tế phụ thuộc vào các hệ số bộ lọc được cung cấp.

Hàm khởi tạo

IIRFilterNode()

Tạo một phiên bản mới của đối tượng IIRFilterNode.

Thuộc tính phiên bản

Giao diện này không có thuộc tính riêng; tuy nhiên, nó kế thừa các thuộc tính từ thực thể cha, AudioNode.

Phương thức phiên bản

Kế thừa các phương thức từ thực thể cha, AudioNode. Nó cũng có các phương thức bổ sung sau:

getFrequencyResponse()

Sử dụng các cài đặt tham số hiện tại của bộ lọc để tính toán phản hồi cho các tần số được chỉ định trong mảng tần số được cung cấp.

Ví dụ

Bạn có thể xem simple IIR filter demo live. Xem thêm source code on GitHub. Nó bao gồm một số giá trị hệ số khác nhau cho các tần số lowpass khác nhau, bạn có thể thay đổi giá trị của hằng số filterNumber từ 0 đến 3 để xem các hiệu ứng khác nhau.

Xem thêm hướng dẫn Using IIR filters để biết giải thích đầy đủ.

Thông số kỹ thuật

Thông số kỹ thuật
Web Audio API
# IIRFilterNode

Tương thích trình duyệt

Xem thêm