3 Commits

Author SHA1 Message Date
lou 5c6a982210 修低频过量的四条: HRIR 均衡 + 房间 IR 校平 + LN_MAX_BOOST + EQ 平直
诊断见 README「实测(2026-09-20)」: 链路的**线性**部分干净(无驻波、失真 −116 dB),
"低频脏 + 沙沙"来自电平被顶穿之后软限幅常年介入 —— 归一化把内容提到满刻度, 宽频信号
一削, 互调产物堆在低频(听感"脏")、高频碎屑(听感"沙沙")。实测超软限幅阈值样本 50.49%、
峰值因子被从 14 dB 压到 2.0 dB。

四条修复:
1. LN_MAX_BOOST 20 -> 12(默认值): 20 dB 的提升上限让任何轻内容都被顶穿满刻度
2. HRIR 同相合并响应均衡(lowshelf 500Hz −7.2dB Q=0.707, 12 条共用一条曲线,
   方向线索 ILD/ITD 不受影响): 这套 HRIR 是原始测量数据、没做过漫反射场均衡。
   ★ 口径注意: 标准 DF-EQ 用各方向**功率平均**做参考, 只要求压 1.5 dB; 但真实内容
   L≈R 时两耳信号是**相加**的, 同相合并响应才对应实测的 7.5 dB
3. 房间 IR 低频校平(lowshelf 300Hz −21dB Q=0.70): 低频比中频高 24.5 dB -> 压到 +5.8 dB
   (留一点厚度); IR 峰值随之掉 3.7 dB, 湿路 gain 0.4 -> 0.61 补偿, 保持混响响度不变
4. EQ 微笑曲线(20~63Hz +2.5 / 高频 +3)改回平直

复测(同素材同脚本): 低频 20~200Hz **+13.6 -> +0.2 dB**; 整链峰值因子 **2.0 -> 12.2 dB**;
超阈值样本 **50.49% -> 0.00%**; 峰值/RMS −0.1/−2.1 -> −6.2/−18.4 dBFS。
响度目标回到 −14 dB 也不会再顶穿。

新增: 工具/分析均衡曲线.py(量曲线)、工具/均衡IR.py(施加校正, 可重跑);
README 加「IR 校正」节 + 修复前后对照 + 两条测量方法上的坑。
IR 备份: hrir/*.pre-eq.wav 与 reverb/*.wav.pre-eq.wav(频响校正前)、
reverb/*.orig.wav(剪直达声前)。重跑顺序: 先 重做混响IR.py, 再 均衡IR.py。
2026-09-20 13:05:10 +08:00
lou c9e9a5ac28 混响立体声丢失: 重做 IR 的工具把双声道压成了单声道 -> conf 改用 convolver 的 channel 按声道取
- 工具/重做混响IR.py 原来写 `x = x[:, 0]`, 只取左声道、把右声道丢掉, 写出去的 IR 成了
  单声道; 而 20-conf 里 revL/revR 读的是同一个文件 -> 两路湿声完全同源, 混响糊在正中央、
  没有宽度(原 IR 本身是双声道真立体声, 左右相关 0.884)
- 改为逐声道处理 + 双声道写回; 重新生成 reverb/房间混响IR-96k.wav (285888 x 2, 相关 0.9492)
- 20-conf: revL 用 channel = 0 / revR 用 channel = 1 —— PipeWire 的 convolver 支持该键,
  从多声道 IR 文件里按索引取声道。实测(通道探针: 左零右真的文件 + channel = 1)右耳尾巴
  不塌, 左右差仅 1.1 dB; 若读错声道会掉 40 dB 以上
- 新增取证脚本: 扫频测频响(Farina 反卷积, 确定性信号才测得准)、电平与失真诊断(只改电平的
  对照实验)、验证混响声道(文件级 + 物理级检查)、诊断低频沙沙(逐级旁路)
- 扫频脚本修了一个 bug: 湿量只在第一轮写, 后面几轮沿用被改过的值, 导致 B/C 两轮测的是同一配置
- README: 坑表加两条(双声道 IR + 验证判据的坑) + 2026-09-20 低频/沙沙诊断实测段
2026-09-20 12:55:51 +08:00
lou a422792df2 修回声: 房间 IR 含 30ms 传播延迟(声源到麦克风 10.3m 的声程)且前两次反射与直达声同量级(30ms 处 0dB/40ms 处 -1.6dB), 与零延迟的干声相加 -> 湿声晚 30ms 还很响 = 回声; 处理 IR(裁前 22ms 静音 + 前 55ms 余弦渐入, 直达声段 0 -> -23.6dB)再把 gain 重标 0.126->0.4 补回混响量; 脉冲取证: 修前 120ms 处 -26dBFS 孤立峰(+12dB), 修后包络单调衰减无孤立峰; 新增 测试/test_echo.py 与 工具/重做混响IR.py, 原 IR 备份 .orig.wav 2026-09-19 20:32:07 +08:00