22e: floor algebra solved — gain_floor=20log10(blend*ln10/20), matches -20.72dB within 0.006dB; lead FUN_180529c60

This commit is contained in:
2026-08-22 18:54:48 +03:00
parent 9c14a74318
commit 3970c1e309
3 changed files with 299 additions and 4 deletions
+36
View File
@@ -1507,3 +1507,39 @@ Hot-тон (+6 dBFS, band1 fc679 q1 sens+12 depth+0.9), gain=outdry по Goer
нашего C++; у настоящего бинар её нет). Live-capture траекторий = только память.
5. +0x4198 маски уровня объекта = GUI-кривые (band1 растёт 1.0→3.98 к ВЧ) — ещё раз
не аудио-маски; для floor-hunt использовать алгебру (3c), не этот объект.
## ============ UPDATE 2026-08-22e: FLOOR ALGEBRA SOLVED — blend·ln10/20 EXACT ============
Модельный grid (render48k, live A=24/B=28/γ=1 через RT_LUT_* env, файловый gain):
| MULT | B | base(6dB) | p3(3.1dB) |
|------|---|-----------|-----------|
| 4.2 | 28 | 8.78 | 9.70 |
| 9 | 28 | 16.35 | 18.18 |
| 12 | 28 | 20.49 | 22.77 |
ВЫВОД: t-clamp в транскрибированной цепи НЕ даёт pin (base/p3 расходятся на 2+ dB
при любом MULT/B) ⇒ механизм пола живёт НЕ в LUT-блоке.
### РЕШЕНИЕ АЛГЕБРАИЧЕСКИ
Измеренный pin −20.72 dB совпадает с точностью 0.0055 dB:
gain_floor = 20·log10(blend · ln10/20) = 20·log10(0.8 · 0.115129) = 20.7145
т.е. маска пола = blend × (ln10/20). Константа ln10/20 = 0.1151292546 @0x1824c3cd4
ТА ЖЕ семья что и коэфф. attack/release expf(p·0.11513) (NOTES_CAPTURE 19b).
Audio-референсы константы: **FUN_180529c60**, 18052baa0, 18052bad0, 18052bba0.
### Ведущий след (f_529c60.dis:94-101)
xmm0 = *(this+0x54087c)
xmm0 *= 30.0 (@0x1824c4478)
xmm0 -= 90.0 (@0x1824c44d0)
xmm0 *= 0.115129 (@0x1824c3cd4)
call expf (181a14cac)
xmm0 *= результат FUN_1804d56b0(band buffer 0x540678[band], r13d=n)
⇒ параметрический dB→linear фактор (30p90 ∈ [−90,−60] dB) умножается на вычисленное
над полосой значение и идёт в band-буферы. Точная роль (floor/dither/scale) TBD.
### NEXT
1. Декодировать FUN_1804d56b0 + контекст использования фактора в 180529c60.
2. Проверка предсказания: floor_gain(mix) должен сдвигаться как 20log10(blend/0.8)
(рендер mix=50% через мост).
3. Порт найденного клампа в структурную цепь → корпус с гейтом vs bridge.