P4: port framed_render.py model to C++ (FramedDetector: twin-res -> level -> Pchip LUT -> warp -> res^rp gain), replace empirical Detector; tt_base 49.93%->61.45% (single-band); multi-band refs still 100% (model is single-band)

This commit is contained in:
2026-08-20 10:31:43 +03:00
parent 45dfe2b8c2
commit 0cdc57972c
6 changed files with 190 additions and 9 deletions
+3 -3
View File
@@ -4,7 +4,7 @@
#include <complex>
#include <vector>
#include "fft.hpp"
#include "detect.hpp"
#include "framed_model.hpp"
constexpr size_t DEFAULT_NFFT = 2048;
constexpr size_t DEFAULT_HOP = 512;
@@ -14,7 +14,7 @@ public:
SpectralProcessor(size_t nfft = DEFAULT_NFFT, size_t hop = DEFAULT_HOP);
~SpectralProcessor();
void setDetectorParams(float sharpness, float selectivity, float depth);
void setDetectorParams(float fc, float q);
void processBlock(float* in, float* out, size_t num_samples, size_t num_channels = 1);
private:
@@ -26,7 +26,7 @@ private:
std::complex<double>* tmp_buf_;
std::vector<float> overlap_;
std::vector<float> mask_;
Detector detector_;
FramedDetector detector_;
size_t frame_count_;
size_t output_pos_;