Mono Biquad filter
Standard 5 coefficient Biquad filter that operates on mono data. The module uses a Transposed Direct Form 2 implementation using the difference equation:
wN = a1*wNm1 + a2*wNm2 + x[n] y[n] = b0*wN + b1*wNm1 + b2*wNm2 wNm2 = wNm1 wNm1 = wN
This module is an example to be used with the documentation.
typedef struct _ModuleTutorialBiquadMono
{
    ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure
    FLOAT32 b0; // First numerator coefficient
    FLOAT32 b1; // Second numerator coefficient
    FLOAT32 b2; // Third numerator coefficient
    FLOAT32 a1; // Second denominator coefficient
    FLOAT32 a2; // Third denominator coefficient
    FLOAT32 wNm1; // First state variable
    FLOAT32 wNm2; // Second state variable
} ModuleTutorialBiquadMonoClass;
Name |
Type |
Usage |
isHidden |
Default value |
Range |
Units |
b0 |
float |
parameter |
0 |
1 |
Unrestricted |
|
b1 |
float |
parameter |
0 |
0 |
Unrestricted |
|
b2 |
float |
parameter |
0 |
0 |
Unrestricted |
|
a1 |
float |
parameter |
0 |
0 |
Unrestricted |
|
a2 |
float |
parameter |
0 |
0 |
Unrestricted |
|
wNm1 |
float |
state |
0 |
0 |
Unrestricted |
|
wNm2 |
float |
state |
0 |
0 |
Unrestricted |
|
Name: in
Description: Input signal
Data type: float
Channel range: 1
Block size range: Unrestricted
Sample rate range: Unrestricted
Complex support: Real
Name: out
Description: Output signal
Data type: float
File Name: tutorial_biquad_mono_module.m
M = tutorial_biquad_mono_module(NAME)
Example showing how to implement a mono Biquad filter in Audio Weaver.
Arguments:
NAME - name of the module.
© DSP Concepts - 2019