跳转至

增益类模块设计文档

本文档覆盖以下模块:channel_gain_v1、adaptive_gain_v1、speaker_level_v1、headroom_v1、ut_gain_20ch_v1。


channel_gain_v1 — 通道增益 20ch

概述

带标准车载通道名的 20 通道增益控制模块。与 gain_v1 的区别在于通道名固定为汽车标准 20 通道名(FLH/FRH/… /SWF),并去掉了 Mute / Phase 参数,专注于纯增益调节。

  • 分类:gain
  • UI 组件:GenericTuningDialog.vue
  • 通道数:20(输入/输出均为 20ch,48kHz,float32)
  • 通道名:FLH FRH FLM FRM FLL FRL FLSE FRSE RLH RRH RLM RRM RLL RRL RLSE RRSE RLS RRS CHM SWF

参数

参数 ID 类型 范围 默认值 说明
enable bool — true 模块启用/禁用
gainDb float -96 ~ 24 dB,步长 0.1 0 各通道独立增益(perChannel,20ch)

gainDb 为 perChannel 参数,对每条通道独立下发,channel 字段取值 0~19。

UI 布局

┌────────────────────────────────────────────────────┐
│ ⏻  channel_gain_inst · 通道增益 20ch           ×  │
├────────────────────────────────────────────────────┤
│ 增益 (dB)                                          │
│  FLH   ════════○════════  [-96 ~ 24]  [ 0.0]      │
│  FRH   ════════○════════  [-96 ~ 24]  [ 0.0]      │
│  FLM   ════════○════════  [-96 ~ 24]  [ 0.0]      │
│  ...(共 20 行)                                   │
└────────────────────────────────────────────────────┘

WebSocket 协议

// 设置 FLH(ch=0)增益 -3 dB
{ "type": "set_params", "instanceId": "channel_gain_0", "paramId": "gainDb", "value": -3.0, "channel": 0 }

// 设置 SWF(ch=19)增益 +6 dB
{ "type": "set_params", "instanceId": "channel_gain_0", "paramId": "gainDb", "value": 6.0, "channel": 19 }

DSP 内存布局

Offset Size 类型 说明
0 1 B uint8 enable(0/1)
1 80 B float32×20 gainDb[0..19],单位 dB
总计 81 B — binarySize: 81

adaptive_gain_v1 — 自适应增益

概述

根据输入电平自动调节增益的模块。当输入电平上升时以 upTime 速率跟踪,电平下降时以 downTime 速率平滑回落,实现自动电平控制(ALC)。

  • 分类:gain
  • UI 组件:GenericTuningDialog.vue
  • 通道数:20ch 输入/输出

参数

参数 ID 类型 范围 默认值 说明
enable bool — true 模块启用/禁用
upTime float 1 ~ 5000 ms,步长 1 100 增益上升时间常数
downTime float 1 ~ 5000 ms,步长 1 500 增益下降时间常数

UI 布局

┌────────────────────────────────────────────────────┐
│ ⏻  adaptive_gain_inst · 自适应增益             ×  │
├────────────────────────────────────────────────────┤
│ 启用        [开]                                   │
│ 上升时间   ════○════════════  [1~5000]  [100]     │
│ 下降时间   ═════════○═══════  [1~5000]  [500]     │
└────────────────────────────────────────────────────┘

WebSocket 协议

{ "type": "set_params", "instanceId": "adaptive_gain_0", "paramId": "upTime",   "value": 200 }
{ "type": "set_params", "instanceId": "adaptive_gain_0", "paramId": "downTime",  "value": 1000 }

DSP 内存布局

Offset Size 类型 说明
0 1 B uint8 enable
1 4 B float32 upTime(ms)
5 4 B float32 downTime(ms)
总计 9 B — binarySize: 9

speaker_level_v1 — 扬声器级别

概述

基础 SPL 加上按车速分段补偿增益的模块。在不同车速档位(25/45/65/85/105/125/>125 km/h)叠加不同的增益补偿,用于速度响应音量调节(Speed-Volume Compensation)。

  • 分类:gain
  • UI 组件:GenericTuningDialog.vue
  • 通道数:20ch

参数

参数 ID 类型 范围 默认值 说明
enable bool — true 启用/禁用
spl float -96 ~ 24 dB,步长 0.1 0 基础 SPL 级别
gain25 float 0 ~ 48 dB,步长 0.5 0 25 km/h 补偿增益
gain45 float 0 ~ 48 dB,步长 0.5 0 45 km/h 补偿增益
gain65 float 0 ~ 48 dB,步长 0.5 0 65 km/h 补偿增益
gain85 float 0 ~ 48 dB,步长 0.5 0 85 km/h 补偿增益
gain105 float 0 ~ 48 dB,步长 0.5 0 105 km/h 补偿增益
gain125 float 0 ~ 48 dB,步长 0.5 0 125 km/h 补偿增益
gainOver float 0 ~ 48 dB,步长 0.5 0 >125 km/h 补偿增益

UI 布局

┌────────────────────────────────────────────────────┐
│ ⏻  speaker_level_inst · 扬声器级别             ×  │
├────────────────────────────────────────────────────┤
│ 启用              [开]                             │
│ SPL 基础级别     ════○═══════  [-96~24]  [ 0.0]   │
│ 25 km/h 补偿     ○═══════════  [0~48]    [ 0.0]   │
│ 45 km/h 补偿     ○═══════════  [0~48]    [ 0.0]   │
│ 65 km/h 补偿     ○═══════════  [0~48]    [ 0.0]   │
│ 85 km/h 补偿     ○═══════════  [0~48]    [ 0.0]   │
│ 105 km/h 补偿    ○═══════════  [0~48]    [ 0.0]   │
│ 125 km/h 补偿    ○═══════════  [0~48]    [ 0.0]   │
│ >125 km/h 补偿   ○═══════════  [0~48]    [ 0.0]   │
└────────────────────────────────────────────────────┘

WebSocket 协议

{ "type": "set_params", "instanceId": "speaker_level_0", "paramId": "spl",     "value": -6.0 }
{ "type": "set_params", "instanceId": "speaker_level_0", "paramId": "gain65",  "value": 3.0 }
{ "type": "set_params", "instanceId": "speaker_level_0", "paramId": "gainOver","value": 6.0 }

DSP 内存布局

Offset Size 类型 说明
0 1 B uint8 enable
1 4 B float32 spl
5 4 B float32 gain25
9 4 B float32 gain45
13 4 B float32 gain65
17 4 B float32 gain85
21 4 B float32 gain105
25 4 B float32 gain125
29 4 B float32 gainOver
总计 33 B — binarySize: 33

headroom_v1 — 余量控制

概述

全局余量(Headroom)控制模块,对所有 20 通道施加统一的增益偏移,用于控制系统整体的电平余量。

  • 分类:gain
  • UI 组件:GenericTuningDialog.vue
  • 通道数:20ch

参数

参数 ID 类型 范围 默认值 说明
enable bool — true 启用/禁用
headRoom float -96 ~ 24 dB,步长 0.1 0 全局余量值

UI 布局

┌───────────────────────────────────────────────┐
│ ⏻  headroom_inst · 余量控制              ×   │
├───────────────────────────────────────────────┤
│ 启用        [开]                              │
│ Headroom   ════════○════  [-96~24]  [ 0.0]   │
└───────────────────────────────────────────────┘

WebSocket 协议

{ "type": "set_params", "instanceId": "headroom_0", "paramId": "headRoom", "value": -6.0 }

DSP 内存布局

Offset Size 类型 说明
0 1 B uint8 enable
1 4 B float32 headRoom(dB)
总计 5 B — binarySize: 5

ut_gain_20ch_v1 — UT 增益 20ch

概述

UT(Unit Test)专用 20 通道增益模块,增益范围限制在 -96 ~ 0 dB(不允许超过 0 dB 增益),用于测试场景下的精确衰减控制。通道名同标准车载 20ch。

  • 分类:gain
  • UI 组件:GenericTuningDialog.vue
  • 通道数:20ch
  • 通道名:标准车载 20 通道名

参数

参数 ID 类型 范围 默认值 说明
enable bool — true 启用/禁用
gainDb float -96 ~ 0 dB,步长 0.1 0 各通道独立增益(perChannel,20ch)

与 channel_gain_v1 的区别:上限为 0 dB(非 +24 dB),用于 UT 测试场景。

UI 布局

┌────────────────────────────────────────────────────┐
│ ⏻  ut_gain_20ch_inst · UT 增益 20ch           ×  │
├────────────────────────────────────────────────────┤
│ 增益 (dB)                                          │
│  FLH   ════════════○  [-96 ~ 0]  [  0.0]          │
│  FRH   ════════════○  [-96 ~ 0]  [  0.0]          │
│  ...(共 20 行)                                   │
└────────────────────────────────────────────────────┘

WebSocket 协议

{ "type": "set_params", "instanceId": "ut_gain_0", "paramId": "gainDb", "value": -6.0, "channel": 0 }

DSP 内存布局

Offset Size 类型 说明
0 1 B uint8 enable
1 80 B float32×20 gainDb[0..19](dB,≤ 0)
总计 81 B — binarySize: 81