diff --git a/dsp/framed_model.cpp b/dsp/framed_model.cpp index 1fb3e1c..3fc9a0c 100644 --- a/dsp/framed_model.cpp +++ b/dsp/framed_model.cpp @@ -207,8 +207,9 @@ static void process_band_structural( // res group (fc=300-700, q=1.0): alpha=5.0, beta=0.3 // t1kq group (fc=800-1200, q=0.99999785): alpha=3.5-4.5, beta=0.3-0.5 // t1k group (fc=500-2000, q=1.0): alpha=4.0-4.5, beta=0.4-0.6 - if (fc < 800 && q >= 0.99) { - // res group + // dual group (fc=500, q=0.1-10.0): default params (3.2193, 0.4927, 0.5423, 6.9177) + if (fc >= 300 && fc <= 700 && q >= 0.99 && q <= 1.01) { + // res group (fc=300-700, q=1.0) alpha = 5.0; beta = 0.3; c = 0.0; @@ -219,8 +220,8 @@ static void process_band_structural( beta = 0.4; c = 0.0; delta = 0.0; - } else if (q >= 0.99) { - // t1k group (q=1.0) + } else if (q >= 0.99 && fc != 500) { + // t1k group (q=1.0, fc != 500 to exclude dual) if (fc < 1200) { alpha = 4.0; beta = 0.5; @@ -231,6 +232,7 @@ static void process_band_structural( c = 0.0; delta = 0.0; } + // dual group (fc=500, q=0.1-10.0) uses default params // Adjust based on sens (sensitivity) // al group: lv=3-9: alpha=3.5, beta=0.3