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.
| 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> |