#include <dsp_filter.h>
|
| enum | Type {
LowPass
, HighPass
, BandPassSkirt
, BandPass0dB
,
Notch
, AllPass
, Peaking
, LowShelf
,
HighShelf
, MatchedLowPass
, MatchedHighPass
, MatchedBandPass0dB
,
MatchedPeaking
} |
| |
|
| | Biquad (double samplerate) |
| |
| | Biquad (const Biquad &other) |
| |
| void | run (float *data, const uint32_t n_samples) |
| |
| void | compute (Type t, double freq, double Q, double gain) |
| |
| void | configure (double a1, double a2, double b0, double b1, double b2) |
| |
| void | configure (Biquad const &) |
| |
| float | dB_at_freq (float freq) const |
| |
| void | reset () |
| |
| void | coefficients (double &a1, double &a2, double &b0, double &b1, double &b2) const |
| |
|
| void | set_vicanek_poles (const double W0, const double Q, const double A=1.0) |
| |
| void | calc_vicanek (const double W0, double &A0, double &A1, double &A2, double &phi0, double &phi1, double &phi2) |
| |
Biquad Filter
Definition at line 222 of file dsp_filter.h.
◆ Type
| Enumerator |
|---|
| LowPass | |
| HighPass | |
| BandPassSkirt | |
| BandPass0dB | |
| Notch | |
| AllPass | |
| Peaking | |
| LowShelf | |
| HighShelf | |
| MatchedLowPass | |
| MatchedHighPass | |
| MatchedBandPass0dB | |
| MatchedPeaking | |
Definition at line 224 of file dsp_filter.h.
◆ Biquad() [1/2]
| ARDOUR::DSP::Biquad::Biquad |
( |
double |
samplerate | ) |
|
◆ Biquad() [2/2]
| ARDOUR::DSP::Biquad::Biquad |
( |
const Biquad & |
other | ) |
|
◆ calc_vicanek()
| void ARDOUR::DSP::Biquad::calc_vicanek |
( |
const double |
W0, |
|
|
double & |
A0, |
|
|
double & |
A1, |
|
|
double & |
A2, |
|
|
double & |
phi0, |
|
|
double & |
phi1, |
|
|
double & |
phi2 |
|
) |
| |
|
private |
◆ coefficients()
| void ARDOUR::DSP::Biquad::coefficients |
( |
double & |
a1, |
|
|
double & |
a2, |
|
|
double & |
b0, |
|
|
double & |
b1, |
|
|
double & |
b2 |
|
) |
| const |
◆ compute()
| void ARDOUR::DSP::Biquad::compute |
( |
Type |
t, |
|
|
double |
freq, |
|
|
double |
Q, |
|
|
double |
gain |
|
) |
| |
setup filter, compute coefficients
- Parameters
-
| t | filter type (LowPass, HighPass, etc) |
| freq | filter frequency |
| Q | filter quality |
| gain | filter gain |
◆ configure() [1/2]
| void ARDOUR::DSP::Biquad::configure |
( |
Biquad const & |
| ) |
|
◆ configure() [2/2]
| void ARDOUR::DSP::Biquad::configure |
( |
double |
a1, |
|
|
double |
a2, |
|
|
double |
b0, |
|
|
double |
b1, |
|
|
double |
b2 |
|
) |
| |
setup filter, set coefficients directly
◆ dB_at_freq()
| float ARDOUR::DSP::Biquad::dB_at_freq |
( |
float |
freq | ) |
const |
filter transfer function (filter response for spectrum visualization)
- Parameters
-
- Returns
- gain at given frequency in dB (clamped to -120..+120)
◆ reset()
| void ARDOUR::DSP::Biquad::reset |
( |
| ) |
|
|
inline |
◆ run()
| void ARDOUR::DSP::Biquad::run |
( |
float * |
data, |
|
|
const uint32_t |
n_samples |
|
) |
| |
process audio data
- Parameters
-
| data | pointer to audio-data |
| n_samples | number of samples to process |
◆ set_vicanek_poles()
| void ARDOUR::DSP::Biquad::set_vicanek_poles |
( |
const double |
W0, |
|
|
const double |
Q, |
|
|
const double |
A = 1.0 |
|
) |
| |
|
private |
◆ _a1
| double ARDOUR::DSP::Biquad::_a1 |
|
private |
◆ _a2
| double ARDOUR::DSP::Biquad::_a2 |
|
private |
◆ _b0
| double ARDOUR::DSP::Biquad::_b0 |
|
private |
◆ _b1
| double ARDOUR::DSP::Biquad::_b1 |
|
private |
◆ _b2
| double ARDOUR::DSP::Biquad::_b2 |
|
private |
◆ _rate
| double ARDOUR::DSP::Biquad::_rate |
|
private |
◆ _z1
| float ARDOUR::DSP::Biquad::_z1 |
|
private |
◆ _z2
| float ARDOUR::DSP::Biquad::_z2 |
|
private |
The documentation for this class was generated from the following file: