一个用于 Claude Code 的 Skill,自动分析 AAOS(Android Automotive OS)智能座舱音频日志,检测 PCM 设备故障、缓冲区问题、路由异常、服务崩溃等问题。
安装此 Skill 后,直接向 Claude 描述需求即可:
帮我分析 /data/logs/audio.log
分析 audio.log 的 Audio HAL 问题
检查 audio.log 从 14:30 到 14:40 的 AudioFlinger
分析 /logs/audio_*.log 所有日志文件,生成 HTML 报告
Claude 会自动:
- 识别日志文件和时间范围
- 选择相关分析模块
- 执行分析并呈现结果
| 关键词 | 模块 | 典型问题 |
|---|---|---|
| PCM打开失败、设备占用 | Audio HAL | PCM 设备故障、流超时 |
| AudioTrack、缓冲区欠载 | AudioFlinger | 缓冲区问题、服务崩溃 |
| 音频路由、设备切换 | AudioPolicy | 路由异常、策略问题 |
| 音频焦点、区域分配 | CarAudio | 焦点冲突、区域问题 |
| tinyalsa、Mixer | tinyalsa | PCM 操作、Mixer 控制 |
| ALSA、硬件参数 | ALSA | 参数配置错误 |
| Codec、DAI、DAPM | ASoC | Codec 探测、DAI 配置 |
| PAL/AGM、高通音频 | QCOM Audio | DSP 资源、音频图配置 |
也可以直接运行 Python 脚本:
# 单文件
python main.py audio.log
# 多文件(并行处理)
python main.py audio1.log audio2.log audio3.log
# 通配符
python main.py "/logs/audio_*.log"
# 指定模块和时间
python main.py audio.log --modules audio_hal audio_flinger --start-time 14:30:00
# 生成报告
python main.py audio.log --format html --output report.html- 多模块分析 - 覆盖 AAOS 音频系统 8 个核心模块
- 多文件并行 - 支持多文件、通配符,自动去重合并
- 配置驱动 - 错误规则在 YAML 中配置,易于扩展
- 多格式输出 - JSON、Markdown、HTML
- 104 条规则 - 92 条错误规则 + 12 条信息规则
audio-analyzer/
├── SKILL.md # Skill 入口(Agent 读取)
├── VERSION # 版本号
├── main.py # Python 入口
├── global_config.yaml # 全局配置
├── analyzers/ # 8 个分析模块
│ ├── audio_hal/
│ ├── audio_flinger/
│ ├── audio_policy/
│ ├── audio_caraudio/
│ ├── audio_tinyalsa/
│ ├── audio_alsa/
│ ├── audio_asoc/
│ └── audio_qcom/
└── docs/ # 文档
编辑模块的 config.yaml:
error_rules:
- id: HAL_CUSTOM_001
pattern: "我的错误模式"
level: MAJOR
desc: "错误描述"
suggestion: "排查建议"- 创建
analyzers/audio_xxx/目录 - 添加
__init__.py、skill.py、config.yaml、skill.md - 模块会自动被发现和加载
- 设计文档 - 架构设计与实现细节
MIT License - Copyright (c) 2026 kainan