137 lines
5.4 KiB
Markdown
137 lines
5.4 KiB
Markdown
# 徐工语音 Bug 记录
|
|||
|
|
|
||
|
|
## 使用规则
|
||
|
|
|
||
|
|
每个 Bug 都按“现象 -> 证据 -> 根因 -> 修复 -> 验证 -> 遗留风险”记录,避免只留下口头结论。
|
||
|
|
|
||
|
|
## Bug 列表
|
||
|
|
|
||
|
|
| ID | 日期 | 问题现象 | 模块 | 优先级 | 状态 | 负责人/来源 | 关联记录 |
|
||
|
|
|---|---|---|---|---|---|---|---|
|
||
|
|
| VOICE-001 | 2026-06-15 | 语音唤醒异常 | 音频/TXZ/AudioFlinger | P1 | 待复现 | 已有文档沉淀 | [[../语音唤醒异常问题分析]]、[[../log 录音分析]] |
|
||
|
|
| VOICE-002 | 待填写 | 语音识别成功但功能无响应 | 协议/IPC | P1 | 待分析 | 待填写 | 待补充 |
|
||
|
|
| VOICE-003 | 待填写 | 状态同步不准确 | 状态同步/TXZ | P2 | 待分析 | 待填写 | 待补充 |
|
||
|
|
|
||
|
|
## Bug 详情
|
||
|
|
|
||
|
|
### VOICE-001:语音唤醒异常
|
||
|
|
|
||
|
|
| 字段 | 内容 |
|
||
|
|
|---|---|
|
||
|
|
| 发现日期 | 历史问题,2026-06-15 补充到 Bug 记录 |
|
||
|
|
| 影响版本 | 待确认 |
|
||
|
|
| 问题模块 | 音频输入链路、TXZ 唤醒、AudioFlinger/AudioPolicy |
|
||
|
|
| 触发条件 | 用户尝试语音唤醒同行者时,出现唤醒失败或录音链路异常 |
|
||
|
|
| 用户影响 | 无法稳定通过语音唤醒进入后续指令流程 |
|
||
|
|
| 当前状态 | 待复现 / 待根因确认 |
|
||
|
|
|
||
|
|
#### 现象
|
||
|
|
|
||
|
|
已有资料将该问题归类为音频唤醒异常,排查方向集中在 AudioFlinger dump、AudioPolicy、录音 dump 和硬件输入链路。当前 Bug 记录先沉淀入口,具体现场表现还需要结合最新 logcat、dump 和录音文件补齐。
|
||
|
|
|
||
|
|
#### 复现步骤
|
||
|
|
|
||
|
|
1. 确认 TXZ/同行者语音助手处于可唤醒状态。
|
||
|
|
2. 多次使用唤醒词触发语音唤醒。
|
||
|
|
3. 记录是否出现无法唤醒、唤醒不稳定、录音异常或 TXZ 无响应。
|
||
|
|
4. 同步抓取 logcat、AudioFlinger、AudioPolicy、audio dumpsys 和 PCM dump。
|
||
|
|
|
||
|
|
#### 证据
|
||
|
|
|
||
|
|
| 证据类型 | 路径/命令 | 关键内容 |
|
||
|
|
|---|---|---|
|
||
|
|
| 分析文档 | [[../语音唤醒异常问题分析]] | 记录 AudioFlinger dump 识别方式、常用 dump 命令和唤醒异常排查步骤 |
|
||
|
|
| 原始分析材料 | [[../log 录音分析]] | 录音/音频相关原始分析材料 |
|
||
|
|
| AudioFlinger dump | `adb shell dumpsys media.audio_flinger > audio_flinger.log` | 关注 Input thread、Frames read、采样率、通道、设备和错误统计 |
|
||
|
|
| AudioPolicy dump | `adb shell dumpsys media.audio_policy > audio_policy.log` | 关注输入设备选择、路由策略和音频源 |
|
||
|
|
| 完整音频状态 | `adb shell dumpsys audio > audio.log` | 关注音频服务整体状态 |
|
||
|
|
| PCM dump | `setprop persist.pcm.dump 9` 后复现,再 `adb pull /data/misc/audioserver/dump_audio_9.pcm` | 判断麦克风是否有有效输入音频 |
|
||
|
|
|
||
|
|
#### 根因分析
|
||
|
|
|
||
|
|
| 候选根因 | 证据 | 可信度 |
|
||
|
|
|---|---|---|
|
||
|
|
| 输入链路没有采集到有效音频 | 需要检查 Input thread 状态、Frames read 变化和 PCM dump 内容 | 中 |
|
||
|
|
| 音频设备或路由选择异常 | 需要对比 AudioPolicy dump 中的 input device / audio source | 中 |
|
||
|
|
| 采样率、通道或 HAL 格式与 TXZ 期望不一致 | 需要检查 AudioFlinger 中 Sample rate、HAL format、Channel count | 低 |
|
||
|
|
| TXZ 唤醒侧状态异常 | 需要补充 TXZ/VoiceService 相关 logcat | 低 |
|
||
|
|
|
||
|
|
#### 修复方案
|
||
|
|
|
||
|
|
暂不直接给代码修复。下一步先按证据清单复现并抓取日志,确认问题落在音频输入链路、AudioPolicy 路由、TXZ 唤醒状态,还是 `YX_Voice` 与 TXZ 的连接/状态同步链路。
|
||
|
|
|
||
|
|
#### 验证结果
|
||
|
|
|
||
|
|
| 验证项 | 命令/步骤 | 结果 |
|
||
|
|
|---|---|---|
|
||
|
|
| 唤醒复现 | 多次触发唤醒词并记录成功率 | 待验证 |
|
||
|
|
| 输入采集 | 检查 `adb shell dumpsys media.audio_flinger` 中 Input thread 和 Frames read | 待验证 |
|
||
|
|
| PCM 有效性 | 拉取 `/data/misc/audioserver/dump_audio_9.pcm` 并听取/分析波形 | 待验证 |
|
||
|
|
| TXZ 状态 | 过滤 TXZ、VoiceService、唤醒相关 logcat | 待验证 |
|
||
|
|
|
||
|
|
#### 遗留风险
|
||
|
|
|
||
|
|
当前只有历史分析文档和排查方法,还缺少同一现场下的完整 logcat、dump 和 PCM 文件,因此不能直接判定根因。后续每次复现都应把日志、dump、录音文件路径回填到本 Bug。
|
||
|
|
|
||
|
|
## Bug 详情模板
|
||
|
|
|
||
|
|
### VOICE-XXX:问题标题
|
||
|
|
|
||
|
|
| 字段 | 内容 |
|
||
|
|
|---|---|
|
||
|
|
| 发现日期 | 待填写 |
|
||
|
|
| 影响版本 | 待填写 |
|
||
|
|
| 问题模块 | 待填写 |
|
||
|
|
| 触发条件 | 待填写 |
|
||
|
|
| 用户影响 | 待填写 |
|
||
|
|
| 当前状态 | 待分析 / 修复中 / 待验证 / 已关闭 |
|
||
|
|
|
||
|
|
#### 现象
|
||
|
|
|
||
|
|
待填写。
|
||
|
|
|
||
|
|
#### 复现步骤
|
||
|
|
|
||
|
|
1. 待填写。
|
||
|
|
2. 待填写。
|
||
|
|
3. 待填写。
|
||
|
|
|
||
|
|
#### 证据
|
||
|
|
|
||
|
|
| 证据类型 | 路径/命令 | 关键内容 |
|
||
|
|
|---|---|---|
|
||
|
|
| logcat | 待填写 | 待填写 |
|
||
|
|
| dumpsys | 待填写 | 待填写 |
|
||
|
|
| 截图/录音 | 待填写 | 待填写 |
|
||
|
|
|
||
|
|
#### 根因分析
|
||
|
|
|
||
|
|
| 候选根因 | 证据 | 可信度 |
|
||
|
|
|---|---|---|
|
||
|
|
| 待填写 | 待填写 | 高/中/低 |
|
||
|
|
|
||
|
|
#### 修复方案
|
||
|
|
|
||
|
|
待填写。
|
||
|
|
|
||
|
|
#### 验证结果
|
||
|
|
|
||
|
|
| 验证项 | 命令/步骤 | 结果 |
|
||
|
|
|---|---|---|
|
||
|
|
| 正常路径 | 待填写 | 待验证 |
|
||
|
|
| 异常路径 | 待填写 | 待验证 |
|
||
|
|
| 回归项 | 待填写 | 待验证 |
|
||
|
|
|
||
|
|
#### 遗留风险
|
||
|
|
|
||
|
|
待填写。
|
||
|
|
|
||
|
|
## 常用问题分类
|
||
|
|
|
||
|
|
| 分类 | 典型表现 | 优先看 |
|
||
|
|
|---|---|---|
|
||
|
|
| TXZ 连接 | 初始化失败、绑定状态异常 | `VoiceService.onConnected()`、TXZ 初始化日志 |
|
||
|
|
| 协议分发 | 指令收到但无动作 | `ProtocolManager`、`YxProtocolHandler`、协议映射 |
|
||
|
|
| IPC 调用 | 业务模块无响应 | `VoiceEventHelper`、YxIPC 绑定状态 |
|
||
|
|
| 状态同步 | TXZ 反馈和车机状态不一致 | 初始化状态同步、通知方法 |
|
||
|
|
| 音频唤醒 | 唤醒失败、录音异常 | AudioFlinger、AudioPolicy、PCM dump |
|