feat(dsp): render48k pipeline + structural chain on 48000/4096 grid

- render48k: resample 44100→48000, process via SpectralProcessor(4096,1024,48000),
  resample 44100, write 24-bit stereo WAV
- FramedDetector: structural chain (fn529fe0 sequence) runs on 48000/4096 grid,
  bridge path unchanged for 44100/2048
- Structural chain: scale→IIR1→copy→IIR2→mirror→blend→exp2→combine→warp→dry/wet
  using live tables (kIIR_A1/B1, kIIR_A2/B2, kBand768, kWarp, kRTAtt/kRTRel)
- Bridge baseline intact (0.000 dB degradation)
- 48k tone test: -20.73 dB vs ref -27.23 dB (6.5 dB error, scale factor not yet
  calibrated to match bridge domain)
This commit is contained in:
2026-08-21 04:46:51 +03:00
parent 7659eb0362
commit 6924e539e0
3 changed files with 231 additions and 33 deletions
+3
View File
@@ -5,6 +5,7 @@ set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Threads REQUIRED)
find_library(SAMPLERATE samplerate)
add_library(soothe2_dsp SHARED
fft_plan.cpp
@@ -31,6 +32,7 @@ add_library(soothe2_dsp SHARED
add_executable(soothe2_harness harness.cpp)
add_executable(framed_test framed_test.cpp)
add_executable(render48k render48k.cpp)
add_executable(twin_check twin_check.cpp)
add_executable(tables_check tables_check.cpp)
add_executable(fftconv_check fftconv_check.cpp)
@@ -41,6 +43,7 @@ add_executable(exp2_check exp2_check.cpp)
add_executable(fn529fe0_check fn529fe0_check.cpp)
target_link_libraries(twin_check soothe2_dsp)
target_link_libraries(framed_test soothe2_dsp)
target_link_libraries(render48k soothe2_dsp ${SAMPLERATE})
target_link_libraries(exp2_check soothe2_dsp)
target_link_libraries(fn529fe0_check soothe2_dsp)
target_link_libraries(tables_check soothe2_dsp)