╔══════════════════════════════════════════════════════════════╗ ║ SPHINX 101 ║ ║ Signal Verification Report - v1.6.0 ║ ╠══════════════════════════════════════════════════════════════╣ ║ Report: Parameter Verification ║ ║ Generated: 2026-07-29 10:19 UTC ║ ║ Platform: macOS · Apple Silicon · TrueRail™ ║ ║ Standard: -6 dBFS operating level · 64-bit internal ║ ╚══════════════════════════════════════════════════════════════╝ Sphinx 101 - GUI Parameter-to-DSP Wiring Verification Generated: 2026-07-29 10:19:34 UTC ================================================================= PART 1 - Parameter Inventory ================================================================= Enumerates every AU parameter exposed via APVTS and counts the per-module total against the expected counts derived from documentation/gui_structures.md. Total parameters found: 80 Module found expected result INPUT 4 4 OK INPUT TX 3 3 OK FILTER 6 6 OK SUB COMP 11 11 OK HF COMP 11 11 OK HF SOFTCLIP 9 9 OK COMPRESSOR 11 11 OK EQ 10 10 OK WIDTH 4 4 OK OUTPUT TX 3 3 OK OUTPUT 8 8 OK INPUT (module count) PASS Per-module parameter count found=4 expected=4 INPUT TX (module count) PASS Per-module parameter count found=3 expected=3 FILTER (module count) PASS Per-module parameter count found=6 expected=6 SUB COMP (module count) PASS Per-module parameter count found=11 expected=11 HF COMP (module count) PASS Per-module parameter count found=11 expected=11 HF SOFTCLIP (module count) PASS Per-module parameter count found=9 expected=9 COMPRESSOR (module count) PASS Per-module parameter count found=11 expected=11 EQ (module count) PASS Per-module parameter count found=10 expected=10 WIDTH (module count) PASS Per-module parameter count found=4 expected=4 OUTPUT TX (module count) PASS Per-module parameter count found=3 expected=3 OUTPUT (module count) PASS Per-module parameter count found=8 expected=8 -> 11 pass / 0 warn / 0 fail ================================================================= PART 2 - Poke-and-Measure (per-parameter wiring) ================================================================= For every user-interactive parameter, change it from its APVTS default to a non-default value, process the same calibrated signal twice, and compare the chosen metric. Verdicts: PASS - metric moved by ≥ minDelta in expected direction WARN - moved enough but wrong direction (suspicious wiring) FAIL - dead parameter or movement below noise floor INPUT input-gain PASS Input Gain +6 dB raises level Level dB: baseline=-9.5241 test=-3.4897 Δ=6.0344 expect ≥+5.0000 INPUT input-circuit-selector PASS Circuit selector - SLL→Amok produces a dramatically different fingerprint H@400 idx: baseline=0.2402 test=5.4981 Δ=5.2579 expect |Δ|≥0.5000 INPUT input-truerail PASS TrueRail B differs from A Level dB: baseline=-8.1595 test=-8.1642 Δ=-0.0047 expect |Δ|≥0.0001 INPUT input-enable PASS Disabling INPUT is master bypass - chain output drops to ~unity H@400 idx: baseline=0.2505 test=0.0000 Δ=-0.2505 expect ≤-0.0500 INPUT TX inputtransformer-model PASS Input TX model: C9049 vs M1166 - different harmonic profile H@100 idx: baseline=0.1963 test=0.1874 Δ=-0.0089 expect |Δ|≥0.0030 INPUT TX inputtransformer-drive PASS Input TX drive 200% raises THD H@400 idx: baseline=0.0322 test=0.2335 Δ=0.2013 expect ≥+0.0200 INPUT TX inputtransformer-enable PASS Toggling Input TX changes chain THD H@400 idx: baseline=0.3950 test=0.4280 Δ=0.0330 expect |Δ|≥0.0050 FILTER filter-highcut PASS Highcut → 16 kHz drops HF energy HF dB: baseline=27.6548 test=27.0572 Δ=-0.5976 expect ≤-0.3000 FILTER filter-lowcut PASS Lowcut → 200 Hz drops LF energy LF dB: baseline=32.7991 test=24.9292 Δ=-7.8700 expect ≤-0.5000 FILTER filter-sharp PASS Sharp button toggles steeper Q Centroid Hz: baseline=1772.7484 test=1888.1366 Δ=115.3882 expect |Δ|≥1.0000 FILTER filter-model PASS Filter model selector changes character (LF rolloff shape) LF dB: baseline=24.8410 test=20.3431 Δ=-4.4979 expect |Δ|≥0.0200 FILTER filter-pretx PASS PreTX routing toggle changes phase/THD H@400 idx: baseline=0.2218 test=0.1567 Δ=-0.0651 expect |Δ|≥0.0050 FILTER filter-enable PASS Disabling FILTER restores HF energy HF dB: baseline=27.2654 test=27.6256 Δ=0.3602 expect ≥+0.1000 SUB COMP subcomp-threshold PASS Sub Threshold -18 dB triggers sub-comp GR SubGR dB: baseline=0.0116 test=10.7025 Δ=10.6909 expect ≥+0.3000 SUB COMP subcomp-xover PASS Sub Xover at 250 Hz extends affected band Level dB: baseline=-7.8324 test=-9.3297 Δ=-1.4973 expect |Δ|≥0.0500 SUB COMP subcomp-attack PASS Sub Attack 100 ms changes envelope shape Level dB: baseline=-7.8946 test=-7.8408 Δ=0.0538 expect |Δ|≥0.0200 SUB COMP subcomp-release PASS Sub Release 1200 ms changes envelope shape Level dB: baseline=-7.8967 test=-8.0206 Δ=-0.1239 expect |Δ|≥0.0200 SUB COMP subcomp-makeup PASS Sub Makeup +12 dB lifts LF level Level dB: baseline=-6.6855 test=-4.9781 Δ=1.7074 expect ≥+1.0000 SUB COMP subcomp-parallel PASS Sub Parallel 100% changes wet/dry balance Level dB: baseline=-7.8905 test=-9.6060 Δ=-1.7155 expect |Δ|≥0.0500 SUB COMP subcomp-soft PASS Sub Soft toggles knee width Level dB: baseline=-6.7652 test=-6.7388 Δ=0.0264 expect |Δ|≥0.0010 SUB COMP subcomp-model PASS Sub Comp model changes character Level dB: baseline=-7.8818 test=-7.9127 Δ=-0.0308 expect |Δ|≥0.0050 SUB COMP subcomp-postcomp PASS Sub PostComp re-routes after main comp Level dB: baseline=-10.7263 test=-10.6416 Δ=0.0847 expect |Δ|≥0.0010 SUB COMP subcomp-enable PASS Disabling Sub Comp restores LF level Level dB: baseline=-8.8187 test=-6.6856 Δ=2.1331 expect ≥+0.5000 HF COMP hfcomp-threshold PASS HF Threshold -18 dB triggers HF-comp GR HFcGR dB: baseline=0.2348 test=12.2716 Δ=12.0369 expect ≥+0.3000 HF COMP hfcomp-xover PASS HF Xover changes affected band Level dB: baseline=-9.7493 test=-13.0992 Δ=-3.3499 expect |Δ|≥0.0500 HF COMP hfcomp-attack PASS HF Attack 100 ms changes envelope shape Level dB: baseline=-9.6578 test=-9.6456 Δ=0.0122 expect |Δ|≥0.0010 HF COMP hfcomp-release PASS HF Release 1200 ms changes envelope shape Level dB: baseline=-9.7450 test=-9.7652 Δ=-0.0202 expect |Δ|≥0.0010 HF COMP hfcomp-makeup PASS HF Makeup +12 dB lifts HF band level Level dB: baseline=-9.4614 test=-8.7338 Δ=0.7276 expect ≥+0.3000 HF COMP hfcomp-parallel PASS HF Parallel 100% changes wet/dry balance Level dB: baseline=-9.7460 test=-10.2081 Δ=-0.4621 expect |Δ|≥0.0500 HF COMP hfcomp-soft PASS HF Soft toggles knee width Level dB: baseline=-9.5735 test=-9.5983 Δ=-0.0248 expect |Δ|≥0.0005 HF COMP hfcomp-model PASS HF Comp model changes character Level dB: baseline=-9.7462 test=-9.6859 Δ=0.0603 expect |Δ|≥0.0020 HF COMP hfcomp-postcomp PASS HF PostComp re-routes after main comp Level dB: baseline=-11.9980 test=-11.8877 Δ=0.1103 expect |Δ|≥0.0010 HF COMP hfcomp-enable PASS Disabling HF Comp restores HF level Level dB: baseline=-9.9257 test=-9.4593 Δ=0.4664 expect ≥+0.3000 HF SOFTCLIP hfsoftclip-threshold PASS HFSC Threshold -18 dB reduces HF output level Level dB: baseline=-9.4566 test=-9.9257 Δ=-0.4691 expect ≤-0.2000 HF SOFTCLIP hfsoftclip-xover PASS HFSC Xover changes affected band Level dB: baseline=-9.9225 test=-12.0902 Δ=-2.1676 expect |Δ|≥0.0500 HF SOFTCLIP hfsoftclip-makeup PASS HFSC Makeup +12 dB lifts HF band level Level dB: baseline=-9.4613 test=-8.7270 Δ=0.7344 expect ≥+0.3000 HF SOFTCLIP hfsoftclip-parallel PASS HFSC Parallel 100% changes wet/dry balance Level dB: baseline=-9.9212 test=-10.5552 Δ=-0.6340 expect |Δ|≥0.0200 HF SOFTCLIP hfsoftclip-model PASS HFSC Tube/DPX switch - different character H@1k idx: baseline=6734.9918 test=7817.5239 Δ=1082.5320 expect |Δ|≥0.0020 HF SOFTCLIP hfsoftclip-soft PASS HFSC Soft toggles knee width Level dB: baseline=-9.7393 test=-9.7397 Δ=-0.0004 expect |Δ|≥0.0001 HF SOFTCLIP hfsoftclip-postcomp PASS HFSC PostComp re-routes after main comp Level dB: baseline=-12.2417 test=-12.3848 Δ=-0.1430 expect |Δ|≥0.0010 HF SOFTCLIP hfsoftclip-enable PASS Disabling HF Softclip restores HF level Level dB: baseline=-9.9224 test=-9.4558 Δ=0.4666 expect ≥+0.3000 COMPRESSOR compressor-threshold PASS Comp Threshold -18 dB triggers main GR CompGR dB: baseline=4.9628 test=18.8450 Δ=13.8822 expect ≥+0.3000 COMPRESSOR compressor-xover PASS Comp sidechain HPF changes pumping behaviour Level dB: baseline=-10.1744 test=-9.6974 Δ=0.4770 expect |Δ|≥0.0200 COMPRESSOR compressor-attack PASS Comp Attack 100 ms changes envelope shape Level dB: baseline=-10.1727 test=-9.8511 Δ=0.3216 expect |Δ|≥0.0010 COMPRESSOR compressor-release PASS Comp Release 1200 ms changes envelope shape Level dB: baseline=-10.1716 test=-10.2333 Δ=-0.0616 expect |Δ|≥0.0010 COMPRESSOR compressor-makeup PASS Comp Makeup +12 dB lifts overall level Level dB: baseline=-9.9395 test=-2.6293 Δ=7.3102 expect ≥+5.0000 COMPRESSOR compressor-parallel PASS Comp Parallel 100% changes wet/dry balance Level dB: baseline=-10.1685 test=-19.2511 Δ=-9.0826 expect |Δ|≥0.0500 COMPRESSOR compressor-soft PASS Comp Soft toggles knee width Level dB: baseline=-10.8088 test=-10.8074 Δ=0.0014 expect |Δ|≥0.0002 COMPRESSOR compressor-model PASS Comp model changes character Level dB: baseline=-10.1658 test=-9.6348 Δ=0.5309 expect |Δ|≥0.0050 COMPRESSOR compressor-enable PASS Disabling Compressor restores level Level dB: baseline=-10.5952 test=-6.5086 Δ=4.0866 expect ≥+1.0000 EQ eq-hi-freq PASS EQ Hi Freq shifts (with +6 dB hi gain) Centroid Hz: baseline=2258.8374 test=3121.7408 Δ=862.9034 expect |Δ|≥5.0000 EQ eq-hi-gain PASS EQ Hi Gain +12 dB lifts HF band HF dB: baseline=27.7450 test=32.0819 Δ=4.3370 expect ≥+1.0000 EQ eq-mid-freq PASS EQ Mid Freq shifts (with +6 dB mid gain) Centroid Hz: baseline=2346.5170 test=932.7696 Δ=-1413.7474 expect |Δ|≥5.0000 EQ eq-mid-gain PASS EQ Mid Gain +12 dB lifts mid band Mid dB: baseline=34.8330 test=38.2588 Δ=3.4258 expect ≥+0.5000 EQ eq-low-freq PASS EQ Low Freq shifts (with +6 dB low gain) Centroid Hz: baseline=1037.9178 test=750.6166 Δ=-287.3012 expect |Δ|≥5.0000 EQ eq-low-gain PASS EQ Low Gain +12 dB lifts LF band LF dB: baseline=32.7945 test=42.0046 Δ=9.2101 expect ≥+0.5000 EQ eq-sharp PASS EQ Sharp toggle changes Q Centroid Hz: baseline=4960.8707 test=6892.2536 Δ=1931.3829 expect |Δ|≥2.0000 EQ eq-model PASS EQ model changes character HF dB: baseline=29.6349 test=29.3142 Δ=-0.3207 expect |Δ|≥0.0500 EQ eq-precomp PASS EQ PreComp re-routes before compressor H@400 idx: baseline=0.4812 test=0.4233 Δ=-0.0578 expect |Δ|≥0.0010 EQ eq-enable PASS Disabling EQ flattens response HF dB: baseline=32.0609 test=27.6181 Δ=-4.4428 expect ≤-1.0000 WIDTH width-width PASS Width -100% collapses correlation toward +1 Corr: baseline=0.0062 test=1.0000 Δ=0.9938 expect ≥+0.0500 WIDTH width-space PASS Space ±100% shapes side presence band, re-balances off-centre level Level dB: baseline=-10.2351 test=-11.6020 Δ=-1.3669 expect |Δ|≥0.0500 WIDTH width-monosum PASS Mono Sum 200 Hz raises correlation Corr: baseline=0.0062 test=0.0145 Δ=0.0083 expect ≥+0.0050 WIDTH width-enable PASS Disabling Width restores neutral correlation Corr: baseline=-0.5958 test=-0.0010 Δ=0.5947 expect |Δ|≥0.0050 OUTPUT TX outputtransformer-model PASS Output TX model changes harmonic profile H@100 idx: baseline=0.0556 test=0.0591 Δ=0.0035 expect |Δ|≥0.0020 OUTPUT TX outputtransformer-drive PASS Output TX drive 200% raises THD H@100 idx: baseline=0.0740 test=0.2123 Δ=0.1382 expect ≥+0.0200 OUTPUT TX outputtransformer-enable PASS Toggling Output TX changes chain THD H@100 idx: baseline=0.2289 test=0.3107 Δ=0.0818 expect |Δ|≥0.0050 OUTPUT output-gain PASS Output Gain +6 dB raises level Level dB: baseline=-9.9282 test=-3.9284 Δ=5.9998 expect ≥+5.0000 OUTPUT output-autogain PASS AutoGain ON is inert with idle compressor (does not cancel makeup) Level dB: baseline=-9.5325 test=-9.5332 Δ=-0.0007 expect |Δ|≥0.0000 (expected inert) OUTPUT output-oversampling PASS Oversampling LED selector advances Level dB: baseline=-8.1786 test=-8.1806 Δ=-0.0020 expect |Δ|≥0.0000 (expected inert) OUTPUT output-gui-size PASS GUI size selector - DSP MUST NOT change Level dB: baseline=-9.9280 test=-9.9284 Δ=-0.0004 expect |Δ|≥0.0000 (expected inert) OUTPUT output-parallel-mix PASS Output Parallel Mix 0% disengages effect H@400 idx: baseline=0.1894 test=0.0337 Δ=-0.1558 expect ≤-0.0500 -> 72 pass / 0 warn / 0 fail ================================================================= PART 3 - Range Verification (min / default / max) ================================================================= For representative continuous parameters, walk the full range and verify monotonic motion of the chosen metric. INPUT input-gain PASS Input Gain Level dB min=-21.326 def=-9.929 max=-1.098 Δends=20.228 monotonic ↑: yes OUTPUT output-gain PASS Output Gain Level dB min=-21.938 def=-9.937 max=2.063 Δends=24.001 monotonic ↑: yes INPUT TX inputtransformer-drive PASS Input TX Drive H@400 idx min=0.062 def=0.041 max=0.201 Δends=0.138 OUTPUT TX outputtransformer-drive PASS Output TX Drive H@400 idx min=0.058 def=0.037 max=0.139 Δends=0.080 FILTER filter-highcut PASS Filter Highcut HF dB min=27.137 def=27.649 max=27.715 Δends=0.578 monotonic ↑: yes FILTER filter-lowcut PASS Filter Lowcut LF dB min=32.780 def=32.784 max=24.915 Δends=7.866 monotonic ↓: yes COMPRESSOR compressor-threshold PASS Comp Threshold CompGR dB min=18.849 def=11.509 max=0.000 Δends=18.849 monotonic ↓: yes COMPRESSOR compressor-makeup PASS Comp Makeup Level dB min=-13.772 def=-9.915 max=-2.596 Δends=11.176 monotonic ↑: yes EQ eq-hi-gain PASS EQ Hi Gain HF dB min=26.243 def=27.895 max=32.080 Δends=5.836 monotonic ↑: yes EQ eq-low-gain PASS EQ Low Gain LF dB min=28.879 def=32.953 max=41.993 Δends=13.114 monotonic ↑: yes WIDTH width-width PASS Width Corr min=1.000 def=-0.089 max=-0.596 Δends=1.596 -> 11 pass / 0 warn / 0 fail ================================================================= PART 4 - Discrete selector cycling ================================================================= Cycle every position of each discrete selector and verify that all positions produce DIFFERENT outputs (no dead positions, no duplicate positions). The minimum pairwise Δ requirement is set per-selector below. INPUT input-circuit-selector PASS Main circuit selector (SLL/Nevy/Amok) H@400 idx across 3 positions: [ 0.272, 0.117, 5.498 ] smallest Δ between (0,1) = 0.1550 threshold=0.0010 INPUT input-truerail PASS TrueRail tier (A/B/C) Level dB across 3 positions: [ -8.164, -8.169, -8.175 ] smallest Δ between (0,1) = 0.0050 threshold=0.0001 INPUT TX inputtransformer-model PASS Input TX model (M1166/C9049/K1166/L1544) H@100 idx across 4 positions: [ 0.144, 0.144, 0.145, 0.202 ] smallest Δ between (1,2) = 0.0005 threshold=0.0001 FILTER filter-model PASS Filter model (Pultey/Maney/SllAmok/Nevy) LF dB across 4 positions: [ 24.879, 20.311, 21.893, 29.728 ] smallest Δ between (1,2) = 1.5819 threshold=0.0200 SUB COMP subcomp-model PASS Sub Comp model (SLL/Nevy/Amok/Maney) Level dB across 4 positions: [ -7.872, -7.922, -7.611, -8.336 ] smallest Δ between (0,1) = 0.0495 threshold=0.0050 HF COMP hfcomp-model PASS HF Comp model (Nevy/Amok/Maney/SLL) Level dB across 4 positions: [ -9.930, -9.871, -10.070, -9.926 ] smallest Δ between (0,3) = 0.0040 threshold=0.0005 HF SOFTCLIP hfsoftclip-model PASS HF Softclip mode (Tube/DPX) H@1k idx across 2 positions: [ 22136.999, 24158.237 ] smallest Δ between (0,1) = 2021.2379 threshold=0.0010 COMPRESSOR compressor-model PASS Comp model (Maney/SLL/Nevy/Amok) Level dB across 4 positions: [ -10.195, -9.665, -9.713, -9.381 ] smallest Δ between (1,2) = 0.0484 threshold=0.0030 EQ eq-model PASS EQ model (Maney/SllAmok/Nevy/Pultey) HF dB across 4 positions: [ 32.024, 31.590, 31.975, 32.103 ] smallest Δ between (0,2) = 0.0498 threshold=0.0001 OUTPUT TX outputtransformer-model PASS Output TX model (M1166/C9049/K1166/L1544) H@100 idx across 4 positions: [ 0.054, 0.053, 0.059, 0.050 ] smallest Δ between (0,1) = 0.0016 threshold=0.0002 OUTPUT output-oversampling PASS Oversampling LED selector drives the per-module local oversamplers Level dB across 2x/4x/8x/16x: [ -8.217 -8.211 -8.213 -8.214 ] range=0.006 (active: 0 < Δ < 0.5 dB) -> 11 pass / 0 warn / 0 fail ================================================================= PART 5 - Interactions (routing, AutoGain, TX independence, cross-bleed) ================================================================= Tests of cross-parameter behaviour that single-parameter pokes cannot catch: chain routing toggles, AutoGain compensation, Input vs Output TX independence, and per-band cross-module bleed. ROUTING filter-pretx PASS Filter PreTX routing changes chain order (Input TX ↔ Filter swap) THD400 postTX=0.2325 preTX=0.1925 ΔTHD=0.0400 Δlevel=0.0004 dB ROUTING eq-precomp PASS EQ PreComp routing changes chain order (EQ ↔ Comp swap) THD400 % postComp=0.4285 preComp=0.4127 Δ=0.0158 ROUTING input/output TX independence PASS Input and Output transformers are independent - drive on one does not bleed to the other InputTX-only THD=0.2044 OutputTX-only THD=0.1389 bothActive=yes measurable=yes BLEED sub vs comp GR PASS Sub Threshold change must NOT bleed into main Comp GR (signal is 400 Hz, sub crossover is 100 Hz default) ΔsubGR=0.000 dB ΔcompGR=0.001 dB (expected: ΔcompGR ≪ ΔsubGR - but on a 400 Hz tone neither should react much above the 100 Hz xover) AUTOGAIN output-autogain PASS AutoGain switch produces a measurable level shift while comp is active Level OFF=-23.661 dB ON=-18.360 dB |Δ|=5.301 dB (expect ≥ 0.1 dB) STATE comp-enable persistence PASS Threshold change made while module is disabled takes effect on re-enable CompGR after re-enable=18.789 dB (expected ≥ 0.5 dB at -18 dB threshold) INPUT truerail-tier-ordering PASS TrueRail A/B/C produce distinct L/R RMS (catches dead-code tolerance scaling) L/R RMS - A=0.00024202, B=0.00024036, C=0.00023865 (all-pair deltas ≥ 1e-7) -> 7 pass / 0 warn / 0 fail ================================================================= PART 6 - Direction sanity (no inverted parameters) ================================================================= Targeted A/B tests for the most-easily inverted controls. DIRECTION input-gain PASS +6 dB level > -6 dB level (no inversion) metric a=-15.375 b=-6.147 Δ=9.228 expected b > a DIRECTION output-gain PASS +6 dB level > -6 dB level (no inversion) metric a=-15.969 b=-3.969 Δ=12.001 expected b > a DIRECTION comp-threshold PASS Lower threshold = MORE GR (no inversion) metric a=4.956 b=18.786 Δ=13.830 expected b > a DIRECTION filter-highcut PASS Higher cutoff = MORE HF energy (no inversion) metric a=27.115 b=27.620 Δ=0.506 expected b > a DIRECTION filter-lowcut PASS Higher lowcut = LESS LF energy (no inversion) metric a=32.680 b=24.805 Δ=-7.875 expected b < a DIRECTION width-width PASS Width -100% > Width +100% in correlation (no inversion) metric a=-0.596 b=1.000 Δ=1.596 expected b > a DIRECTION eq-hi-gain PASS +12 dB Hi Gain > -12 dB Hi Gain (no inversion) metric a=26.216 b=32.029 Δ=5.814 expected b > a -> 7 pass / 0 warn / 0 fail ================================================================= PART 7 - Typed-value round-trip (double-click value entry) ================================================================= For every rotary knob parameter, simulate the inline TextEditor's commit path: parse the typed text, clamp to the parameter range, drive APVTS, read back. Then exercise the structural rejects (empty, lone '-', lone '.') against a representative knob. PASS = APVTS reads back the clamped value within one step interval; rejected inputs leave the parameter unchanged. INPUT input-gain PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -12.000 (expect -12.000); above-max → 12.000 (expect 12.000) INPUT TX inputtransformer-drive PASS Type → parse → clamp → setValueNotifyingHost → readback mid '100.0000' → 100.000 (expect 100.000); below-min → 0.000 (expect 0.000); above-max → 200.000 (expect 200.000) FILTER filter-highcut PASS Type → parse → clamp → setValueNotifyingHost → readback mid '19000.0000' → 19000.000 (expect 19000.000); below-min → 16000.000 (expect 16000.000); above-max → 22000.000 (expect 22000.000) FILTER filter-lowcut PASS Type → parse → clamp → setValueNotifyingHost → readback mid '108.0000' → 108.000 (expect 108.000); below-min → 15.000 (expect 15.000); above-max → 200.000 (expect 200.000) SUB COMP subcomp-threshold PASS Type → parse → clamp → setValueNotifyingHost → readback mid '-6.0000' → -6.000 (expect -6.000); below-min → -18.000 (expect -18.000); above-max → 6.000 (expect 6.000) SUB COMP subcomp-xover PASS Type → parse → clamp → setValueNotifyingHost → readback mid '145.0000' → 145.000 (expect 145.000); below-min → 40.000 (expect 40.000); above-max → 250.000 (expect 250.000) SUB COMP subcomp-attack PASS Type → parse → clamp → setValueNotifyingHost → readback mid '251.0000' → 251.000 (expect 251.000); below-min → 1.000 (expect 1.000); above-max → 500.000 (expect 500.000) SUB COMP subcomp-release PASS Type → parse → clamp → setValueNotifyingHost → readback mid '501.0000' → 501.000 (expect 501.000); below-min → 1.000 (expect 1.000); above-max → 1000.000 (expect 1000.000) SUB COMP subcomp-makeup PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -12.000 (expect -12.000); above-max → 12.000 (expect 12.000) SUB COMP subcomp-parallel PASS Type → parse → clamp → setValueNotifyingHost → readback mid '50.0000' → 50.000 (expect 50.000); below-min → 0.000 (expect 0.000); above-max → 100.000 (expect 100.000) HF COMP hfcomp-threshold PASS Type → parse → clamp → setValueNotifyingHost → readback mid '-6.0000' → -6.000 (expect -6.000); below-min → -18.000 (expect -18.000); above-max → 6.000 (expect 6.000) HF COMP hfcomp-xover PASS Type → parse → clamp → setValueNotifyingHost → readback mid '13000.0000' → 13000.000 (expect 13000.000); below-min → 6000.000 (expect 6000.000); above-max → 20000.000 (expect 20000.000) HF COMP hfcomp-attack PASS Type → parse → clamp → setValueNotifyingHost → readback mid '251.0000' → 251.000 (expect 251.000); below-min → 1.000 (expect 1.000); above-max → 500.000 (expect 500.000) HF COMP hfcomp-release PASS Type → parse → clamp → setValueNotifyingHost → readback mid '501.0000' → 501.000 (expect 501.000); below-min → 1.000 (expect 1.000); above-max → 1000.000 (expect 1000.000) HF COMP hfcomp-makeup PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -12.000 (expect -12.000); above-max → 12.000 (expect 12.000) HF COMP hfcomp-parallel PASS Type → parse → clamp → setValueNotifyingHost → readback mid '50.0000' → 50.000 (expect 50.000); below-min → 0.000 (expect 0.000); above-max → 100.000 (expect 100.000) HF SOFTCLIP hfsoftclip-threshold PASS Type → parse → clamp → setValueNotifyingHost → readback mid '-6.0000' → -6.000 (expect -6.000); below-min → -18.000 (expect -18.000); above-max → 6.000 (expect 6.000) HF SOFTCLIP hfsoftclip-xover PASS Type → parse → clamp → setValueNotifyingHost → readback mid '14000.0000' → 14000.000 (expect 14000.000); below-min → 6000.000 (expect 6000.000); above-max → 22000.000 (expect 22000.000) HF SOFTCLIP hfsoftclip-makeup PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -12.000 (expect -12.000); above-max → 12.000 (expect 12.000) HF SOFTCLIP hfsoftclip-parallel PASS Type → parse → clamp → setValueNotifyingHost → readback mid '50.0000' → 50.000 (expect 50.000); below-min → 0.000 (expect 0.000); above-max → 100.000 (expect 100.000) COMPRESSOR compressor-threshold PASS Type → parse → clamp → setValueNotifyingHost → readback mid '-6.0000' → -6.000 (expect -6.000); below-min → -18.000 (expect -18.000); above-max → 6.000 (expect 6.000) COMPRESSOR compressor-xover PASS Type → parse → clamp → setValueNotifyingHost → readback mid '210.0000' → 210.000 (expect 210.000); below-min → 20.000 (expect 20.000); above-max → 400.000 (expect 400.000) COMPRESSOR compressor-attack PASS Type → parse → clamp → setValueNotifyingHost → readback mid '251.0000' → 251.000 (expect 251.000); below-min → 1.000 (expect 1.000); above-max → 500.000 (expect 500.000) COMPRESSOR compressor-release PASS Type → parse → clamp → setValueNotifyingHost → readback mid '501.0000' → 501.000 (expect 501.000); below-min → 1.000 (expect 1.000); above-max → 1000.000 (expect 1000.000) COMPRESSOR compressor-makeup PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -12.000 (expect -12.000); above-max → 12.000 (expect 12.000) COMPRESSOR compressor-parallel PASS Type → parse → clamp → setValueNotifyingHost → readback mid '50.0000' → 50.000 (expect 50.000); below-min → 0.000 (expect 0.000); above-max → 100.000 (expect 100.000) EQ eq-hi-freq PASS Type → parse → clamp → setValueNotifyingHost → readback mid '11000.0000' → 11000.000 (expect 11000.000); below-min → 4000.000 (expect 4000.000); above-max → 18000.000 (expect 18000.000) EQ eq-hi-gain PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -12.000 (expect -12.000); above-max → 12.000 (expect 12.000) EQ eq-mid-freq PASS Type → parse → clamp → setValueNotifyingHost → readback mid '6100.0000' → 6100.000 (expect 6100.000); below-min → 200.000 (expect 200.000); above-max → 12000.000 (expect 12000.000) EQ eq-mid-gain PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -12.000 (expect -12.000); above-max → 12.000 (expect 12.000) EQ eq-low-freq PASS Type → parse → clamp → setValueNotifyingHost → readback mid '210.0000' → 210.000 (expect 210.000); below-min → 20.000 (expect 20.000); above-max → 400.000 (expect 400.000) EQ eq-low-gain PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -12.000 (expect -12.000); above-max → 12.000 (expect 12.000) WIDTH width-width PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -100.000 (expect -100.000); above-max → 100.000 (expect 100.000) WIDTH width-space PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -100.000 (expect -100.000); above-max → 100.000 (expect 100.000) WIDTH width-monosum PASS Type → parse → clamp → setValueNotifyingHost → readback mid '110.0000' → 110.000 (expect 110.000); below-min → 20.000 (expect 20.000); above-max → 200.000 (expect 200.000) OUTPUT TX outputtransformer-drive PASS Type → parse → clamp → setValueNotifyingHost → readback mid '100.0000' → 100.000 (expect 100.000); below-min → 0.000 (expect 0.000); above-max → 200.000 (expect 200.000) OUTPUT output-gain PASS Type → parse → clamp → setValueNotifyingHost → readback mid '0.0000' → 0.000 (expect 0.000); below-min → -12.000 (expect -12.000); above-max → 12.000 (expect 12.000) OUTPUT output-parallel-mix PASS Type → parse → clamp → setValueNotifyingHost → readback mid '50.0000' → 50.000 (expect 50.000); below-min → 0.000 (expect 0.000); above-max → 100.000 (expect 100.000) TYPED reject:empty PASS Structural reject leaves parameter unchanged input '' (parsed=rejected); before=3.000 after=3.000 (expect rejected, unchanged) TYPED reject:dash PASS Structural reject leaves parameter unchanged input '-' (parsed=rejected); before=3.000 after=3.000 (expect rejected, unchanged) TYPED reject:dot PASS Structural reject leaves parameter unchanged input '.' (parsed=rejected); before=3.000 after=3.000 (expect rejected, unchanged) TYPED reject:dashdot PASS Structural reject leaves parameter unchanged input '-.' (parsed=rejected); before=3.000 after=3.000 (expect rejected, unchanged) TYPED reject:whitespace PASS Structural reject leaves parameter unchanged input ' ' (parsed=rejected); before=3.000 after=3.000 (expect rejected, unchanged) -> 43 pass / 0 warn / 0 fail [MusicMaterial] Source: reference programme material [real track] @ 44100 Hz stereo Input: peak -6.00 dBFS RMS -14.30 dBFS (crest 8.3 dB) OK Full chain SLL AG-on: peak -2.27 (d +3.73) RMS -13.85 (d +0.45) [RMS unity |d|<=1.5] OK Full chain Nevy AG-on: peak -1.59 (d +4.41) RMS -13.47 (d +0.82) [RMS unity |d|<=1.5] OK Full chain Amok AG-on: peak -2.50 (d +3.50) RMS -14.23 (d +0.06) [RMS unity |d|<=1.5] OK Input-only SLL : peak -4.76 (d +1.24) [saturation gentle, d<=+2.5] OK Input-only Nevy : peak -4.25 (d +1.75) [saturation gentle, d<=+2.5] OK Input-only Amok : peak -4.96 (d +1.04) [saturation gentle, d<=+2.5] -- Peak crest build-up SLL AG-off: +3.72 dB (phase rotation + OS reconstruction; input true-peak ~-4.85; not saturation) 6 pass / 0 fail ================================================================= TOTAL ================================================================= 168 pass / 0 warn / 0 fail ══════════════════════════════════════════════════════════════ Sphinx 101 v1.6.0 Component-Level Analog Modeling with TrueRail™ Technology 168 measurements · 0 failures · 0 warnings All measurements passed - signal integrity verified. analogrealism.com · support@analogrealism.com Made in Finland ══════════════════════════════════════════════════════════════