16 const double G = 3.99984385397;
17 const double Q = 0.7071752369554193;
18 const double fc = 1681.9744509555319;
20 const double K = std::tanh(
M_PI * fc / rate);
21 const double Vh = std::pow(10.0, G / 20.0);
22 const double Vb = std::pow(Vh, 0.499666774155);
23 const double a0_ = 1.0 + K / Q + K * K;
25 b0 =
static_cast<float>((Vh + Vb * K / Q + K * K) / a0_);
26 b1 =
static_cast<float>(2.0 * (K * K - Vh) / a0_);
27 b2 =
static_cast<float>((Vh - Vb * K / Q + K * K) / a0_);
29 a1 =
static_cast<float>(2.0 * (K * K - 1.0) / a0_);
30 a2 =
static_cast<float>((1.0 - K / Q + K * K) / a0_);
37 const double Q = 0.5003270373253953;
38 const double fc = 38.13547087613982;
40 const double K = std::tanh(
M_PI * fc / rate);
46 a1 =
static_cast<float>(2.0 * (K * K - 1.0) / (1.0 + K / Q + K * K));
47 a2 =
static_cast<float>((1.0 - K / Q + K * K) / (1.0 + K / Q + K * K));