Commit Graph
72 Commits
Author SHA1 Message Date
Matiq 0d262461ea P4: lock bigkernel semantics (exp2(-mask)*blend) + calibrate scale
Read the 0x26b820 SIMD loop: the exp2 result is multiplied by the blend buffer
(vmulpd at 0x18026bba0 with ymm11=blend) => mask = exp2(-level)*blend, sign
inverted for attenuation. framed_model.cpp corrected to exp2(-scratch)*0.8.
Calibrated level_scale=600 -> t1kq err -0.06 dB (ref -14.98). comb per-tone
errors reduced (max ~7.8 dB); warp/FFT-conv smoothing still approximated.
2026-08-20 15:25:49 +03:00
Matiq f23bbfa1f6 P4: decode FUN_180529fe0 mono-path exactly + extract live mask tables
Full decomp of the per-band mask-apply loop (scale -> IIR1/2/3 leaky ->
blend -> exp2 bigkernel -> combine/accumulate -> dual warp -> dry/wet -> FFT-conv).
Extracted runtime tables to rt_mask_tables.{hpp,cpp}: IIR A1/B1,A2/B2,A3/B3
(leaky y=A*acc+B*x, B=1-A), warp 0x5406a8, per-band 0x540768, PRNG LUT 0x5408b0.
bigkernel 0x26b820 = vectorized exp2 (log2e/floor/mantissa tables). Fixed the
broken warp line in framed_model.cpp (compiles again).
2026-08-20 15:00:53 +03:00
Matiq fc48a9fee4 P4: real mask chain in FramedDetector (level-tracker + accumulator + live-calibrated LUT), t1kq err 0.5dB
Replace empirical PCHIP detector with live-calibrated mask chain from FUN_180529fe0:
  level = am*res*scale; track += w*(level-track) (per-bin attack/release weights
  extracted from RT snapshot, rt_weights.hpp); acc = (level-track)+level; mask =
  (1/(1+K*acc))^n (K=9.8026 n=0.25966 fitted to live mask band0). min-combine.

Results (N=2048 hop=512): t1kq single-band err +0.51 dB (-14.47 vs -14.98 dB ref);
comb 4-band per-tone -3.4..+5.8 dB (old PCHIP over-cut comb ~6 dB). Adds framed_test
harness for C++ FramedDetector eval on tone1kq/comb.
2026-08-20 13:11:27 +03:00
Matiq 45dfe2b8c2 P4: full decomp FUN_18052e260 frame driver (twin side-chain per band, LUT+mask+FFT-conv run per drained frame); wire order documented 2026-08-20 09:28:12 +03:00
Matiq 22e4599e0a P2: decode mask-accumulator combine kernels from raw bytes — combine3(0x8d60)=sub, acc_add(0x5a20)=dst+=src, acc_fma(0x3c40)=dst+=a·b; implement + levelpath_check ALL OK 2026-08-20 01:30:33 +03:00
Matiq d3db772121 P2.5: decode twin-mask factory (FUN_18056e3e0 = constant fill 2π/(count·SR)) + band LUT apply (FUN_180563a60: level->gain t^γ/power-law); implement in levelpath.cpp, levelpath_check ALL OK 2026-08-20 01:23:22 +03:00
Matiq 433a0026e6 P2: level-tracker UPDATE-loop located (inline bidirectional IIR in FUN_180529fe0), structural module leveltrack (iir_first_order/bidirectional/unrolled4); scalar==unrolled verified; remaining = live A[] coeffs 2026-08-19 23:53:01 +03:00
Matiq cff28a605c P1.4: full FUN_180529fe0 decomp confirms mask-canon (scale->IIR->blend->combine+weights->warp->dry/wet->FFT-conv); documented remaining live scalars for bit-exact 2026-08-19 23:34:02 +03:00
Matiq 42316efa71 P1.2: confirm f_52d990 memcpy via decomp (FUN_18052d990(lVar22, window+N/2, N/2)); infer N=4096 from freq-axis spacing + window sape; step-5 low-pass near-flat ramp 2026-08-19 23:20:38 +03:00
Matiq 241957bced P1.2: f_52d990 = memmove/memcpy thunk, NOT a multiply; corrected step-3/5 FIR window semantics (copy window tail + const fill); xmm9/xmm13 remain 2026-08-19 23:17:31 +03:00
Matiq 02dd6e8aa7 docs: exact structural LUT curve formulas (FUN_180563440 linear/power-law), consts from PE; roadmap Q1 static side closed 2026-08-19 20:45:45 +03:00
Matiq 9c1516171e docs: runtime capture settled — registry heartbeat decodes live 0x540658 window & freq-axis (internal SR=48000); vptr-scan route closed 2026-08-19 20:10:22 +03:00
Matiq 28cd3b7c62 Q-dep rp + honest TRIMMED metric: mean=0.175 (was misleading 0.144 artifact)
- Exposed artifact: earlier fits measured tone_cmp on untracked-length output
  (nfr*HOP+N); framed_render.synthe trims to len(x). Honest scalar-rp=0.0169
  baseline is 0.280, not 0.160 as previously recorded.
- New model: rp(Q)=rp0*Q^drp, G/W/A/rp0/drp=0.9963/0.3335/0.9807/0.0275/0.2159.
  Trimmed errs: q0.1 0.000/0.001, q1 -0.256/-0.707, q10 +0.086/+0.001.
  q0.1+q10 perfect; bottleneck q1@2000 (structural warp mismatch).
2026-08-19 15:48:56 +03:00
Matiq 627e8373e6 res_power breakthrough: 500Hz residual solved (q0.1 err +0.00), decomp inventory, FUN_180563440 decoded 2026-08-19 09:56:19 +03:00
Matiq 1a57c48318 runtime capture pt2: vst3 loads AT ImageBase 0x180000000; 0x540658 = field [ctx+0x540658] not RVA; beacon->ctx script (racy) 2026-08-18 21:11:29 +03:00
Matiq 41fc402b05 Handoff: multi-band combination measured - depth not split by count, sens=0 band contributes 0, band1+band2=+0.53dB over max (not product/additive) => displacement-sum+saturation; single-band B.12 off 1.4dB at 1778 2026-08-18 20:33:48 +03:00
Matiq bc46f039de Handoff: joint dual+al LUT refit fails (al rmse 0.89) - level-pickoff mechanism not statically recoverable; needs runtime mask/level capture 2026-08-18 20:27:53 +03:00
Matiq 6b1e690247 Handoff: RPP base64-XML parameter decoder; b1f_* are MULTI-band (poisoned for B.12); t1kq_only1_* true single-band; FFT-amp calibration; clean dataset = dual_b1q+al_ 2026-08-18 20:26:29 +03:00
Matiq ae380c93c8 Phase5/step5b: full frame-render pilot works (STFT+per-bin LUT mask+OLA); al_* level-sweep exposes steeper real LUT leg vs B.12 frozen knots; fc-scan premise conflict flagged 2026-08-18 19:43:26 +03:00
Matiq 3b8095cee7 Handoff: step4 partial - attack<=20ms measured on renders; 0x1ac=oversample{2,4,8,16}; coeff tables undecodable 2026-08-18 19:34:46 +03:00
Matiq 60bf3a2394 Phase5/step3 partial: FFT-conv loop mapped; freq-axis const offline; 0x540658 static-invisible 2026-08-18 18:34:52 +03:00
Matiq c8f97e4ea3 Phase5/step2: B.12 model live (rmse 0.236) + freq-axis builder correction (offline const) 2026-08-18 18:08:57 +03:00