Safeguard against EQ bandwidth low values

This commit is contained in:
Jean Pierre Cimalando 2021-03-12 15:12:19 +01:00
parent 3fcb0a234e
commit 9a2f91f5ef
3 changed files with 3 additions and 3 deletions

View file

@ -94,7 +94,7 @@ sfzPeq = fm.rbjPeakingEqSmooth(smoothCoefs,cutoff,pkShGain,Q);
// the SFZ equalizer band
sfzEqPeak = fm.rbjPeakingEqSmooth(smoothCoefs,cutoff,pkShGain,Q) with {
Q = 1./(2.*ma.sinh(0.5*log(2)*bandwidth*w0/sin(w0)));
Q = 1./(2.*ma.sinh(0.5*log(2)*max(1e-3, bandwidth)*w0/sin(w0)));
w0 = 2*ma.PI*max(0,cutoff)/ma.SR;
};

View file

@ -174,7 +174,7 @@ class faust2chEqPeak : public sfzFilterDsp {
double fSlow2 = (fConst2 * fSlow1);
double fSlow3 = std::sin(fSlow2);
double fSlow4 = std::pow(10.0, (0.025000000000000001 * double(fVslider0)));
double fSlow5 = std::max<double>(0.001, (0.5 / double(sinh(double((fConst3 * ((fSlow1 * double(fVslider1)) / fSlow3)))))));
double fSlow5 = std::max<double>(0.001, (0.5 / double(sinh(double((fConst3 * ((fSlow1 * std::max<double>(0.001, double(fVslider1))) / fSlow3)))))));
double fSlow6 = (0.5 * (fSlow3 / (fSlow4 * fSlow5)));
double fSlow7 = (fSlow6 + 1.0);
double fSlow8 = (1.0 - fSlow0);

View file

@ -152,7 +152,7 @@ class faustEqPeak : public sfzFilterDsp {
double fSlow2 = (fConst2 * fSlow1);
double fSlow3 = std::sin(fSlow2);
double fSlow4 = std::pow(10.0, (0.025000000000000001 * double(fVslider0)));
double fSlow5 = std::max<double>(0.001, (0.5 / double(sinh(double((fConst3 * ((fSlow1 * double(fVslider1)) / fSlow3)))))));
double fSlow5 = std::max<double>(0.001, (0.5 / double(sinh(double((fConst3 * ((fSlow1 * std::max<double>(0.001, double(fVslider1))) / fSlow3)))))));
double fSlow6 = (0.5 * (fSlow3 / (fSlow4 * fSlow5)));
double fSlow7 = (fSlow6 + 1.0);
double fSlow8 = (1.0 - fSlow0);