From 9311e7397f16c322ce0c98ed233d6fbe524f1bba Mon Sep 17 00:00:00 2001 From: Matiq Date: Sat, 29 Aug 2026 16:46:55 +0300 Subject: [PATCH] B: wire real kWarp/kRTAtt/kRTRel into chain_9_19, keep TOTAL 0.341 --- dsp/framed_model.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/dsp/framed_model.cpp b/dsp/framed_model.cpp index 4cb4be9..982b1f4 100644 --- a/dsp/framed_model.cpp +++ b/dsp/framed_model.cpp @@ -813,16 +813,16 @@ void FramedDetector::processFrame(const std::complex* spectrum, float* m band_mask.data(), nfft_, sample_rate_, bands_.size(), casc_curve.data(), true); // 1c chain_9_19 wire (BLOCKMAP:620) — gated by RT_CASC=1+chain, default off - // proxy with unity warp/att/rel keeps TOTAL 0.341; bit-exact tables - // will replace unity via rt_weights/rt_mask_tables dump + // B: real warp/att/rel tables (was unity proxy) if (getenv("RT_CASC_CHAIN")) { static std::vector tmp6f8, accVec; - tmp6f8.assign(nfft_, 0.0f); - accVec.assign(nfft_, 0.0f); - static const float warp1 = 1.0f, att0 = 0.0f, rel0 = 0.0f; - std::vector w(nfft_, warp1), a(nfft_, att0), r(nfft_, rel0); + size_t nbin = half + 1; + tmp6f8.assign(nbin, 0.0f); + accVec.assign(nbin, 0.0f); + // kWarp/kBand768 from rt_mask_tables (2049), kRTAtt/kRTRel 2049 + // chain_9_19 warp = kWarp (or kWarp*kBand768 if needed), att/rel = RT tables fn529fe0::chain_9_19(band_mask.data(), tmp6f8.data(), accVec.data(), - w.data(), a.data(), r.data(), nfft_); + kWarp, kRTAtt, kRTRel, nbin); } } else { process_band_structural(am_.data(), res_[b].data(), bands_[b],