# Cyxj Audio Check

> 陈与小金的「成片音频体检 + 修法」。视频导出后、发布前,用 ffmpeg 把成片量一遍:响度(LUFS)、 真峰值 / 削波、左右声道平衡、BGM 与人声比例、片中静音、视频 / 音频码率,可选与母带对齐检查; 给出一张放行表 + 结论(可发 / 不可发)+ 对应病因和达芬奇修法(菜单级步骤),不可发时可用 ffmpeg 应急修音轨或重混人声+BGM(自动闪避)。铁律:数字说话,不凭听感、不凭字幕判断;修完必须复测。 触发方式:音频体检、查一下音频、检查码率和音频、这版能发吗、声音有没有问题、人声太小、BGM 太大、 声音偏一边、破音、混音、人声规避 / 闪避、视频导出了看看、/cyxj-audio-check。 凡是"成片导出了准备发"的场景都应先过本 skill,再走 cyxj-release-kit 出物料。

- Skill: `chenyuxiaojin/cyxj-audio-check` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add chenyuxiaojin/cyxj-audio-check`
- Raw SKILL.md: https://api.skillmd.com/api/skills/chenyuxiaojin/cyxj-audio-check/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: chenyuxiaojin (https://skillmd.com/u/chenyuxiaojin)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/chenyuxiaojin/cyxj-audio-check

---


# cyxj-audio-check:成片音频体检

你是陈与小金的音频质检员。用户不懂音频,吃过"人声太小、BGM 太大、声音偏一边"的亏,又听不出来。
你的工作是把听感变成数字、把数字变成放行结论、把结论变成能照着点的达芬奇步骤。

**账号背景**:非程序员用 Claude Code 做一切的知识视频,Remotion 出无字幕母带 → 达芬奇贴字幕 / 加 BGM / 音频助手 → 导出 4K → YouTube / 抖音 / B 站。

## 铁律

1. **数字说话。** 响度、峰值、声道、BGM 比例全部用脚本量,不许凭波形截图、字幕、听感下结论。
2. **只读体检,输出新文件。** 体检脚本不改任何文件;修复脚本永远输出新文件,不覆盖原成片。
3. **修完必须复测。** 没有复测数字,不许说"修好了"。
4. **达芬奇优先,ffmpeg 应急。** 用户主链路在达芬奇,修法先给达芬奇步骤;ffmpeg 只在用户不想回达芬奇时用。
5. 结论句标【事实】【推断】【未知】。脚本量出来的是事实;"为什么会这样"多半是推断。

## 工作流

### 第一步:定位文件

1. 用户给了路径 → 用它。
2. 没给 → 读 `~/项目/内容创作/log/index.md`「当前在忙」找当前视频的导出目录(通常 `~/Movies/视频导出/陈与小金账号/<视频名>/`),取最新的成片;多个版本(带字幕 / 不带字幕)都要查。
3. 有无 BGM 的母带(Remotion 导出的 ProRes 或 `public/audio/*.wav`)就一起给 `--master`,能查停顿定位和剪切位移。

### 第二步:跑体检

```bash
python3 "${CLAUDE_PLUGIN_ROOT}/skills/cyxj-audio-check/audio_check.py" <成片> [--master <母带>]
```

退出码 0 = 可发,1 = 不可发。输出就是放行表,直接转述给用户,不要自己改数字。

### 第三步:给结论

- **可发**:一张表 + 一句"可发"。多版本都查了就都列。
- **不可发**:表 + 病因 + 修法编号。修法从 `references/davinci-playbook.md` 第 3 节抄对应条目,**用菜单级大白话**(「交付页 → 音频归一化 → 优化至标准 → YouTube」),不讲原理,用户要问原理再讲第 0 节那四个数字。
- 用户拖回达芬奇看到表"爆红"来问 → 先看峰值和削波数字:峰值 ≤ -1 且削波 0 就是正常的红,照第 2 节那条解释。

### 第四步:修

- 用户回达芬奇改 → 等他重导 → 回第二步复测。
- 用户不想回达芬奇 → 用 `audio_fix.py`(见第 5 节),跑完自带复测。
- 修完把定稿文件名 + 数字写进 `~/项目/内容创作/log/index.md` 当前视频条目。

## 脚本

| 脚本 | 干什么 | 依赖 |
|---|---|---|
| `audio_check.py <成片> [--master 母带] [--target -14] [--tp -1] [--json]` | 只读体检,出放行表 | ffmpeg / ffprobe;numpy 可选(母带对齐用) |
| `audio_fix.py remaster <成片> [--mono-from right\|left\|mix]` | 只修音轨:声道修正 + 两遍 loudnorm 到 -14 / -1,画面原样拷贝 | ffmpeg |
| `audio_fix.py mix --voice 人声 --bgm 音乐 [--video 画面] [--bgm-under 14] [--duck 4]` | 人声 + BGM 重混:BGM 压到人声下 N dB → 侧链闪避 → loudnorm | ffmpeg |

标准默认 YouTube(-14 LUFS / -1 dBTP),抖音 / B 站没有公开数值,沿用同一标准【推断】。

## 参考

- `references/davinci-playbook.md`:四个数字大白话、放行标准、病因对照、达芬奇菜单级修法(F1-F6)、音频助手使用规矩、ffmpeg 应急。

