BiquadFilterNode
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.
The BiquadFilterNode
interface represents a simple low-order filter, and is created using the AudioContext.createBiquadFilter()
method. It is an AudioNode
that can represent different kinds of filters, tone control devices, and graphic equalizers. A BiquadFilterNode
always has exactly one input and one output.
Number of inputs | 1 |
---|---|
Number of outputs | 1 |
Channel count mode | "max" |
Channel count | 2 (not used in the default count mode) |
Channel interpretation | "speakers" |
Constructor
BiquadFilterNode()
-
Creates a new instance of an
BiquadFilterNode
object.
Properties
Inherits properties from its parent, AudioNode
.
BiquadFilterNode.frequency
-
Is an a-rate
AudioParam
, a double representing a frequency in the current filtering algorithm measured in hertz (Hz). BiquadFilterNode.detune
-
Is an a-rate
AudioParam
representing detuning of the frequency in cents. BiquadFilterNode.Q
-
Is an a-rate
AudioParam
, a double representing a Q factor, or quality factor. BiquadFilterNode.gain
์ฝ๊ธฐ ์ ์ฉ-
Is an a-rate
AudioParam
, a double representing the gain used in the current filtering algorithm. BiquadFilterNode.type
-
Is a string value defining the kind of filtering algorithm the node is implementing.
The meaning of the different parameters depending of the type of the filter (detune has the same meaning regardless, so isn't listed below) type
Description frequency
Q
gain
lowpass
12dB/octave์ ๋กค์คํ๋ฅผ ๊ฐ์ง ํ์ค 2์ฐจ ๊ณต์ง ๋ก์ฐํจ์ค ํํฐ์ ๋๋ค. ์ปท์คํ ์ดํ์ ์ฃผํ์๋ ํต๊ณผํ๋ฉฐ ๊ทธ ์ด์์ ์ฃผํ์๋ ๊ฐ์ ํฉ๋๋ค. ์ปท์คํ ์ฃผํ์ ์ปท์คํ ๋ถ๊ทผ์์ ์ฃผํ์์ ํผํฌ๊ฐ ์ผ๋ง๋ ํฐ์ง ๋ํ๋ ๋๋ค. ๊ฐ์ด ํด์๋ก ํผํฌ๊ฐ ์ปค์ง๋๋ค. Not used highpass
12dB/octave์ ๋กค์คํ๋ฅผ ๊ฐ์ง ํ์ค 2์ฐจ ๊ณต์ง ํ์ดํจ์ค ํํฐ์ ๋๋ค. ์ปท์คํ ์ดํ์ ์ฃผํ์๋ ๊ฐ์ ํ๋ฉฐ ๊ทธ ์ด์์ ์ฃผํ์๋ ํต๊ณผํฉ๋๋ค. ์ปท์คํ ์ฃผํ์ ์ปท์คํ ๋ถ๊ทผ์์ ์ฃผํ์์ ํผํฌ๊ฐ ์ผ๋ง๋ ํฐ์ง ๋ํ๋ ๋๋ค. ๊ฐ์ด ํด์๋ก ํผํฌ๊ฐ ์ปค์ง๋๋ค. Not used bandpass
ํ์ค 2์ฐจ ๋ฐด๋ํจ์ค ํํฐ์ ๋๋ค. ์ฃผ์ด์ง ์ฃผํ์ ๋์ญ ๋ฐ๊นฅ์ ์ฃผํ์๋ ๊ฐ์ ๋๋ฉฐ, ์ด๋ด์ ์ฃผํ์๋ ํต๊ณผํฉ๋๋ค. ์ฃผํ์ ๋์ญ์ ์ค์ ์ฃผํ์ ๋์ญ์ ํญ์ ์กฐ์ ํฉ๋๋ค. Q๊ฐ์ด ํด์๋ก ์ฃผํ์ ๋์ญ์ ์์์ง๋๋ค. Not used lowshelf
ํ์ค 2์ฐจ ๋ก์ฐ์ํ ํํฐ์ ๋๋ค. ๊ธฐ์ค ์ฃผํ์๋ณด๋ค ๋ฎ์ ์ฃผํ์๋ ์ฆํญ๋๊ฑฐ๋ ๊ฐ์ ๋ฉ๋๋ค. ๊ทธ ์ด์์ ์ฃผํ์๋ ๋ณํ์ง ์์ต๋๋ค. ์ฆํญ์ด๋ ๊ฐ์ ๋ฅผ ์ป๋ ์ฃผํ์์ ์ํ๊ฐ Not used ์ ์ฉํ ์ฆํญ(๋จ์ : dB), ์์์ด๋ฉด ๊ฐ์ ๋ฉ๋๋ค. highshelf
ํ์ค 2์ฐจ ํ์ด์ํ ํํฐ์ ๋๋ค. ๊ธฐ์ค ์ฃผํ์๋ณด๋ค ํฐ ์ฃผํ์๋ ์ฆํญ๋๊ฑฐ๋ ๊ฐ์ ๋ฉ๋๋ค. ๊ทธ ์ดํ์ ์ฃผํ์๋ ๋ณํ์ง ์์ต๋๋ค. ์ฆํญ์ด๋ ๊ฐ์ ๋ฅผ ์ป๋ ์ฃผํ์์ ํํ๊ฐ Not used ์ ์ฉํ ์ฆํญ(๋จ์ : dB), ์์์ด๋ฉด ๊ฐ์ ๋ฉ๋๋ค. peaking
๋์ญ ๋ด์ ์ฃผํ์๋ ์ฆํญ๋๊ฑฐ๋ ๊ฐ์ ๋ฉ๋๋ค. ๋ฐ๊นฅ์ ์ฃผํ์๋ ๋ณํ์ง ์์ต๋๋ค. ์ฆํญ์ด๋ ๊ฐ์ ๋ฅผ ์ป๋ ์ฃผํ์ ๋์ญ์ ์ค์ ์ฃผํ์ ๋์ญ์ ํญ์ ์กฐ์ ํฉ๋๋ค. Q๊ฐ์ด ํด์๋ก ์ฃผํ์ ๋์ญ์ ์์์ง๋๋ค. ์ ์ฉํ ์ฆํญ(๋จ์ : dB), ์์์ด๋ฉด ๊ฐ์ ๋ฉ๋๋ค. notch
๋ฐด๋ ์คํฑ, ํน์ ๋ฐด๋ ๋ฆฌ์ ์ ์ผ๋ก ๋ถ๋ฆฌ๋ ํ์ค notch ํํฐ์ ๋๋ค. ์ด๋ ๋ฐด๋ํจ์ค ํํฐ์ ๋ฐ๋์ ๋๋ค. ์ฃผ์ด์ง ๋์ญํญ ๋ฐ๊นฅ์ ์ฃผํ์๋ ํต๊ณผํ๋ฉฐ, ์์ชฝ์ ์ฃผํ์๋ ๊ฐ์ ํฉ๋๋ค. ์ฃผํ์ ๋์ญ์ ์ค์ ์ฃผํ์ ๋์ญ์ ํญ์ ์กฐ์ ํฉ๋๋ค. Q๊ฐ์ด ํด์๋ก ์ฃผํ์ ๋์ญ์ ์์์ง๋๋ค. Not used allpass
ํ์ค 2์ฐจ allpass ํํฐ์ ๋๋ค. ์ด๋ ๋ชจ๋ ์ฃผํ์๋ฅผ ํต๊ณผ์ํค์ง๋ง, ๊ฐ๋ณ ์ฃผํ์ ์ฌ์ด์ ์์ ๊ด๊ณ๋ฅผ ๋ณํ์ํต๋๋ค. ์ต๋ group delay๋ฅผ ๊ฐ๋ ์ฃผํ์, ์ฆ ์์ ์ ์ด ๋ฐ์์ ์ค์ฌ์ ์๋ ์ฃผํ์์ ๋๋ค. ์ค๊ฐ ์ฃผํ์์์ ์ ํ์ด ์ผ๋ง๋ ์ ๋ช ํ๊ฐ๋ฅผ ์ ์ดํฉ๋๋ค. ์ด ๋งค๊ฐ ๋ณ์๊ฐ ํด์๋ก ๋ ์ ๋ช ํ๊ณ ํฌ๊ฒ ์ ํ๋ฉ๋๋ค. Not used
Methods
AudioNode
๋ก๋ถํฐ ๋ฉ์๋๋ฅผ ์์๋ฐ์ต๋๋ค.
BiquadFilterNode.getFrequencyResponse()
-
์ด ๋ฉ์๋๋ ํ์ฌ ํํฐ ํ๋ผ๋ฏธํฐ ์ค์ ์ผ๋ก๋ถํฐ ์ ๊ณต๋ ์ฃผํ์ ๋ฐฐ์ด์ ์ง์ ๋ ์ฃผํ์์ ๋ํ ์ฃผํ์ ์๋ต์ ๊ณ์ฐํฉ๋๋ค
Example
See AudioContext.createBiquadFilter
for example code that shows how to use an AudioContext
to create a Biquad filter node.
๋ช ์ธ์
Specification |
---|
Web Audio API # BiquadFilterNode |