Commit Graph
59 Commits
Author SHA1 Message Date
Matiq 359aaeb7cb baseline 0.314 live q0.80022 FIR enabled (was 0.341) 2026-08-30 16:38:04 +03:00
Matiq 6bf2363c1a DIVIDE poly: fix truncated poly_0 0.207*8 -> 9 coeff 0.207/-0.241/0.288/-0.36/0.48/0.24/0.055, Q 0.80022 2026-08-30 16:05:32 +03:00
Matiq 04c51e5be0 cascade_sim 1b: exact exp/div stubs for C++ port, keep structural proxy 2026-08-29 15:31:01 +03:00
Matiq ab9334f8ab baseline: VLAW+EQ 0.341 as new canon (was 1.594 bridge) 2026-08-29 15:11:19 +03:00
Matiq b4d75f4d22 Version 1.0: VLAW parameterization + detector cascade
- Implemented exact ln/exp2 infrastructure (log2_ln.hpp/cpp)
- Parameterized VLAW α/β/c by (fc, q, sens) configuration
- Implemented real RFFT for FIR construction
- Fixed VLAW parameterization for dual group (3.455 → 0.764 dB)
- Added detector cascade 529c60 (Haar smoothing, magnitude, peak processing)
- TOTAL error: 0.870 dB (vs bridge baseline 1.594 dB)

Results:
- t1kq: 0.618 dB (bridge: 0.226 dB)
- t1k: 0.938 dB (bridge: 1.801 dB) ✓ better
- al: 0.727 dB (bridge: 0.638 dB)
- res: 0.284 dB (bridge: 0.628 dB) ✓ better
- dual: 0.764 dB (bridge: 0.726 dB)
- comb: 3.000 dB (bridge: 10.149 dB) ✓ better
2026-08-27 20:49:35 +03:00
Matiq b6e7fdc289 24mm13-add3: live per-stage dumps (CIN/COUT/AIN/AOUT); op-A confirmed b=|z| pairs; cascade input is accumulated signed state, NOT exp(scr) 2026-08-26 15:46:31 +03:00
Matiq 943e781720 24mm12: detector cascade FOUND = vtable stage vt+0x28 = 180529c60 (0x281 bytes, mixes bands@678 + prev track, x0.5, vec6f8 helpers); vtable pipeline map; fn529fe0 only builds kernel from ready tracks 2026-08-26 14:53:44 +03:00
Matiq 60421c32c9 24mm11: wine ptrace tracer works; FIR chain verified BIT-EXACT live (ratio=1.0, q=1 exact); df0 complex-mul confirmed; NEW: track_i != exp(scr) -> gamma born in detector cascade (Stage B target) 2026-08-26 14:15:03 +03:00
Matiq 50d7ab0d05 24mm9-wip: EXP kernel fully decoded = exact complex exp (no scale); fwd/inv normalizations pinned raw; swap-variant rejected (82dB); q!=1 contradiction sharpens -> suspected unordered-FFT layout / missed reorder op 2026-08-26 12:18:04 +03:00
Matiq 3c5e276fc5 24mm9: FIR-chain decoded = min-phase cepstral sandwich; opB/opC are RFFT twins (plan@548), df0 = complex-mul dst=track; validated 0.0065 dB median over 60 clean frames; gamma = 1+s_F(q), q~0.8 source open 2026-08-26 11:49:48 +03:00
Matiq a79c8f4934 24mm4: cascade_sim.py skeleton + clean-frame picker (gamma/identity phases), power law validated to 0.0006dB; pointwise detector laws refuted on 447 bins - scr is spectral-cascade product 2026-08-26 02:33:11 +03:00
Matiq dcfe7774f3 : 24 , 2026-08-26 01:40:00 +03:00
Matiq 87f00ce181 24kk3: SLOT 540668 IS POLYMORPHIC — holds two float scalars (~0.43,2.0) between processing phases, pointer-to-FIR during callbacks; explains missing 668 in all new captures; GUI-curve slot 540678 matches audio ±5% 2026-08-25 14:35:10 +03:00
Matiq d2f67016ab 24ll3: per-bin am/res paradigm REFUTED for off-center peaks — unified res^p fit hits lower bound (wants NO res dependence), yet cuts grow monotonically with res at equal am; two-argument structure or full cascade required; multi6 dataset is the validation target 2026-08-25 12:57:18 +03:00
Matiq b85b344e23 24ll2: multi6 dataset — SIX notches one run (self-consistent); cut GROWS with res (2.33->7.18), independent of am (first four tones equal am!); rejected floor/power models; perfect validation target for cascade simulator 2026-08-25 12:54:25 +03:00
Matiq def7cea522 24nn: SESSION FINALE — per-peak softplus laws ultra-clean (pk2 rms 0.0006!), shared alpha~3.3, beta2 10x smaller than beta1, level-scale x11.6 const; CROSS-RUN absolute comparisons UNRELIABLE (state selection) — within-run series only; campaign tools complete 2026-08-25 12:32:23 +03:00
Matiq 77c02c8f9d 24mm: distance series captured (cuts depend on 2nd-tone distance, confirming local mixing); w(d) inversion needs cleaner methodology (peak-window/domain issues documented); raw data preserved 2026-08-25 11:39:10 +03:00
Matiq 0dfff22efb 24ll: alpha(content) LOCALIZED — far second tone (@4000, both 0dB and -12dB) does NOT affect alpha (1.075-1.110 vs 1.153); mixing is template-local via res-weighted freq-IIRs; distance-kernel series is the next campaign cell 2026-08-25 11:22:45 +03:00
Matiq 4f79f83c11 24kk: Q-INDEPENDENCE PROVEN — law constants identical for q=1.0 and q=0.5 at fc1000 (alpha/beta/c match to 3 decimals); g_s12 anomaly = louder input file (tone1k 2.28x); campaign tool added; remaining axes: content-tones (alpha doubling) and fc 2026-08-25 10:53:00 +03:00
Matiq bf3faab660 24hh2: gate set to BIT EXACT (user decision); g_s12 datapoint captured (fc1000 q1 s12: audio=scratch+(-0.11dB) confirms direct-mask at fc1000 too); parameterization campaign table drafted 2026-08-25 10:48:05 +03:00
Matiq c33212c21b 24jj: BIGKERNEL BODIES FOUND via runtime IAT resolve — 1803a06a0/180296c80/180323f20/1802dc0e0, real math functions with x87 transcendental pair (exp family); iat_name.py v2 with double-deref+PE exports 2026-08-25 10:29:06 +03:00
Matiq 483f52f296 24hh-2: runtime dispatch tables STABLE (=static); bigkernels resolve to IMPORTS (outside dump); iat_name.py PE-export parser drafted (needs SIGSTOP race fix); once named, full cascade simulator becomes implementable 2026-08-25 10:16:48 +03:00
Matiq 0fbff6dc6e 24ee: variables SEPARATED — softplus form universal (3 independent calibrations rms<=0.016), alpha grows with tone count (1.15->3.22 for 1->2 tones: freq-mixing in steps 9-19); audio=deepest-scratch+const across ALL families; dual two-stage was two-tone artifact 2026-08-25 09:21:44 +03:00
Matiq 10d8c1cf5a 24cc: exact coef-gen formula pinned — exp_arg=|c|*g/n with n=2049 ([state+8] live-verified all three states); saturating form; default down-coefs 0.003-0.19 (gentle, cascade-only effect) 2026-08-25 08:42:00 +03:00
Matiq 2fb0e640e0 24ab: opB dispatcher structure documented (subtag kernels + Hermitian repack); ops A-D PARKED as buffer-level-only (audio=exp(scratch) proven; VLAW real-mask corpus 0.193); session consolidation 24j..24ab 2026-08-25 02:31:22 +03:00
Matiq 47c5360ac2 24aa: 563a60 confirmed GUI-branch (detector-LUT params absent from audio-instance memory — full rw-scan); audio-path level compression lives in step 1-19 op semantics (bigkernels/fma/combine); memory-scan tools added 2026-08-25 01:42:16 +03:00
Matiq 65ee61d540 24z-2: rendersnap2 v6 attempts band-object LUT capture (A/B/gamma) — ctx+0x540678 is curve data not object ptr; band-object array discovery is next session opener 2026-08-25 01:28:26 +03:00
Matiq 5bd60cfefd 24t: exact semantics th2030=mul / th2270=add (with special cases); FUN_180563a60 identified as init-time dB-domain table builder (log x 8.68589); LUT-form vs softplus both fit drive series — decomp required to discriminate; disasm_func.py tool 2026-08-24 22:13:01 +03:00
Matiq a309ca3e31 24r: track slot static (not the 2nd stage); DTFT test — deep kernel matches ref at center (10.63 vs 10.32) but fails at skirt => consumption packing via ops A-D is the last undecoded piece; patchparam param-map obtained 2026-08-24 21:52:33 +03:00
Matiq 508b24125f 24l-2: live (scratch,FIR) pair proves FIR=exp(log(bands)) pointwise (+1%); log support LIMITED to bins 6..623 -> unity passband mechanism; applied = 1.019*B^1.8345 with B=band curve; detector M->B is the only remaining gap 2026-08-24 19:17:59 +03:00
Matiq 3a611cff35 24l: exact FIR-loop decode from asm — pre-exp sign inversion (div by -1, xmm13) + upper-half zeroing (xmm9=0); step-1 multiplier is NO-OP (xmm8=1.0); exp kernel behind IAT; ops A-D = descriptor-typed twiddle-FMA stages; disasm.py tool 2026-08-24 19:13:49 +03:00
Matiq 65fb983d57 24k-4: RT_FIRCONV=3 (application law 1.019*M^1.8345); rendersnap2 wav-path hazard fixed (RENDER_FILE parse, was destroying refs — dual_b1q_1.0.wav restored); corpus TOTAL 2.286 2026-08-24 18:37:30 +03:00
Matiq cc8ba34577 24k: application law EXACT — cutA=1.8345*cutV+0.1615dB (rms 0.0025dB, 8 drive levels); x1.805 = exponent product 0.984x1.8345; single instance confirmed; R-slots static; probe-multitone method 2026-08-24 18:02:28 +03:00
Matiq 6629e8bbf2 24j: applied response == live FIR per-bin (x1.805 revoked as stale-kernel phantom); R-slots static twin template; rendersnap2 soft snapper + probe-multitone method 2026-08-24 17:35:27 +03:00
Matiq 475b1958d5 fix: corpus 24-bit loader + LUT calibration env var
- Fix reshape error in corpus.py 24-bit WAV loader (misaligned data)
- Add RT_LUT_CAL env var for LUT output calibration
- Corpus results: TOTAL 2.397 (bridge 1.594), comb improved (-4.032)
- Structural chain regresses on t1kq/t1k/al/dual due to LUT curve mismatch
- The LUT produces different frequency response than plugin's FIR construction
2026-08-24 15:18:39 +03:00
Matiq 2c99a4fc96 feat: consumer identified (th_b3c0), scan3.py, RT_FIRCONV/RT_FIRPOWER
- th_b3c0 (0x18000b3c0) = pure complex multiply FIR × audio in freq-domain
- scan3.py: pre-scan approach finds ctx in 1.5s, multi-instance detection
- RT_FIRCONV=1: FIR from mask + complex multiply (spectral.cpp)
- RT_FIRPOWER=1: power-law mask from raw spectrum (framed_model.cpp)
- Root cause: plugin uses FIR convolution (OLA), not per-bin multiply
- Live captures: FIR@43=0.524, mask@43=0.510, final gain=0.305
- Best result: RT_LUT_OFF gives cut@500=-8.18 dB (ref -10.32)
- NOTES_LEVEL 24e/24f/24g appended
2026-08-24 13:52:52 +03:00
Matiq f483fe398d 24a: perf_event breakpoints definitive — wine reserves HW BP slots (ENOSPC on wine threads while self/cross-process native opens succeed), closing hardware-trap route and explaining all prior ptrace-DR silence; FFT-conv engine object identified at ctx+0x540530 (inline cfg {2,4096}/{16384,8192}, member vectors +0xb8..+0x130, methods dc30/fe00/dd30) — its process method is the kernel consumer candidate 2026-08-24 02:43:04 +03:00
Matiq 8acbf6612e 23m: round final — DR-trap delivery anomaly under wine threads documented (near-zero stops despite verified arming and confirmed module execution); full stop-logging added to fnexec; roadmap to bit-exact fixed: G-form via stabilized series, consumer via init-family decode or perf_event HW breakpoints, then RT_FIRCONV gate 2026-08-24 02:30:19 +03:00
Matiq 56edd3c0f4 23l: DR exec-watch verified working end-to-end by micro-test on this kernel (SIGTRAP+DR6 correct); contradiction isolated to process/thread targeting in tracer, single remaining hypothesis documented with debug protocol 2026-08-24 02:22:55 +03:00
Matiq baafbb6dc6 23k: HW exec-breakpoints operational (correct offsets, RF-flag pass, clone inheritance); clean run proves decoded chain does NOT execute in steady render — kernel built ONCE on param-change in <100ms window after instance creation; transcription implication: rebuild kernel only on setParams; full capture recipe documented 2026-08-24 02:08:30 +03:00
Matiq 9e85b730b2 23j: multi-register watchpoint definitive negative — zero hits even on mandatory-hot words (overlap/R/lock) across confirmed renders with 8/8 threads armed; HW data watchpoints not delivered under wine threads here — route closed, pivot to static table-index scan 2026-08-24 01:56:15 +03:00
Matiq 25b736b2bb 23i: hardware watchpoint infrastructure working (u_debugreg base 0x350, LEN8 rejected -> use LEN4, DR6 reset documented); zero hits on kernel word — consumer may read a copy or builds early; fnwatch.py committed 2026-08-23 23:31:26 +03:00
Matiq 05caf1eb44 23h: kernel-consumer hunt — no direct readers of FIR data outside 529fe0 (init-only xrefs); bp on loop end silent in render => duplicated chain instantiation suspected; active RIP sampler fnsample.py working (2.4k in-module samples, MSVC stackfill dominates steady state; core leads 52e1c0/534580 on param phase); yabridge stale socket dirs break respawn — documented 2026-08-23 23:01:19 +03:00
Matiq c3656975dd 23g: amplitude sweep attempt inconclusive (phase-stability control needed); scripts committed 2026-08-23 22:30:39 +03:00
Matiq 70cafc1700 23f: live scratch series across q sweep (11 configs) — center strictly constant over q, x1.805 hits real cuts within 0.14dB at both known points, scr171(res) nonlinear consistent with 22x exponent; detector smoothing located between raw bands[] write and DESIGN (raw blinks 0.3..382 while scratch steady) 2026-08-23 22:27:13 +03:00
Matiq 3a0a38467b 23d: BREAKTHROUGH — live kernel captured via SIGSTOP sampling of offline render (rendersnap.py); bands[] input to DESIGN is the raw per-frame signal spectrum (Hann lobes at tone bins only!), captured FIR shows skirt cut deeper than center exactly as real output (0.473@2000 vs 0.524@500) despite R-curve claiming otherwise; am/res structure confirmed with twin template as divider; recipe for exact ops formula next round 2026-08-23 22:11:33 +03:00
Matiq 0a45661a25 23c: negative feasibility — symmetric log-domain convolution cannot reproduce dual skirt geometry (best 0.94dB err at absurd 324-bin width); narrows mechanism to non-symmetric ops / true bands[] input / temporal coupling; capture recipe for DESIGN-input dump documented 2026-08-23 21:09:14 +03:00
Matiq b8d5f83fc5 23b: mask->FIR chain decoded — DESIGN body is vectorized LOG2 of band curve (poly fingerprinted), WIN_freq identified as periodic Hann(4096) falling half applied to FIR[n/2..n), full ILT stub->impl table resolved offline (ilt_resolve.py), live buffer catalog extended (SIMD lane masks at 0x540598, complex identity reset between callbacks, overlap buffer at 0x5406f8 non-zero), plugin output proven nondeterministic across renders (LCG dither) — spectral metrics only; ptrace lab scripts + lessons (TRACECLONE before CONT, sub-second host lifecycle under -renderproject) 2026-08-23 20:59:54 +03:00
Matiq 91101b2135 22y: live ctx capture pipeline works (scripts/dualtrace.py, realtime playback + chunked heap snapshot); found config-dependent reduction curves 0x540768/788/7f8 (peak follows band fc; 7f8 min exactly 1.0 => R=1/mask, notch-shaped); acc/f6f8 arrays ZERO in steady state; DECISIVE: applied filter != pointwise R (dual skirt 3dB vs real 11.8) -> FFT-conv wide-window spreading is the missing mechanism 2026-08-23 18:40:25 +03:00
Matiq 64beaa7131 22x: NO-alpha theorem — no res-exponent makes detector level consistent across families (dual needs alpha<0, fc-scans break at alpha<=0); dual-vs-q table: cut@center CONSTANT across q, skirt cut falls ~exp(-res/0.49) converging at res>=2 -> notch geometry lives in the fine-grid twin template (536300), not per-bin arithmetic; pointwise (am,res^alpha)+single-law class REFUTED 2026-08-23 18:04:47 +03:00