lhg-ve-transcript:口播转录与文本清洗
目标:把口播素材变成"带时间戳、可编辑、可决策"的文字稿。 核心纪律:先有文字稿,再谈剪辑——不看文字稿直接剪,等于闭眼开车。
1. 何时使用
- 拿到一段口播素材,要剪成短视频 → 先跑本 skill
- 用户说"帮我看看这段说了什么" → 转录 + 清洗对照表
- 已有逐字稿但全是"那个这个然后" → 直接进第 4 节清洗
2. 转录路线选型
两条路线,没有银弹,按素材性质选:
| 路线 | 工具举例 | 成本 | 精度 | 适用 |
|---|---|---|---|---|
| 本地 | faster-whisper(MIT 开源) | 零边际成本,慢一点 | 中文口播够用,口音重时下降 | 私密素材、长素材、预算敏感 |
| 云端词级 | 按量计费的词级转录 API | 按分钟/按量计费,动手前先向用户报价 | 词级时间戳最准,切点精度高 | 公开题材、追求切点精度、短素材 |
隐私红线:云端转录 = 把原声音频上传到第三方。涉及未发布观点、商业机密、个人隐私的素材,必须走本地,并在开工前向用户说明两种路线的差异,由用户拍板。
输出要求(两条路线都要达到):
- 逐句时间戳(精确到 0.1 秒):
[00:12.4-00:18.2] 文字内容 - 有条件要逐词时间戳(云端路线天然有;本地路线可用词级对齐工具补)
- 说话人只有一个(口播),不需要说话人分离;如有画外音/采访,第二说话人单独标注
3. 转录质量门
转录稿先过三道门,不过就换路线或人工校对:
- 完整性:转录总时长 ≈ 素材时长(误差 >5% 说明大段漏转)
- 标点还原:长句必须有逗号/句号断句;一整段无标点 = 后续清洗无法做,直接打回
- 专有名词:人名、品牌、数字("百分之三点五")抽查 5 处,错 2 处以上要人工校对全文
转录错误不要在转录阶段逐字改——标出来留到清洗阶段统一处理,省时间。
4. 文本清洗四步法
步骤一:删口头禅(语气词库)
中文口播高频口头禅库(按出现频率排序,持续扩充):
一级(几乎永远可删):那个、这个、然后、就是说、嗯、啊、呃、怎么说呢、你知道吧
二级(看语境):其实、 basically、说实话、坦白讲、我跟你说、大家知道
三级(小心删):对吧、是不是(反问语气可能是钩子)、我觉得(观点类内容可能是立场)
删除规则:
- 连续重复("那个那个")→ 全删
- 句首/句中填充("然后我们…"、"…这个…就…")→ 删,不影响句意
- 三级词先标黄,由用户或剪辑师按上下文决定,不许批量删
步骤二:标气口与停顿
- 气口(换气声、"嗯"式停顿):在时间轴上标记
[气口 0.8s],剪辑阶段决定是剪掉还是保留(快节奏全剪,访谈感可留) - 长停顿(>1.5 秒无声):标记
[停顿 2.3s]——可能是忘词(剪掉),也可能是刻意留白(保留),必须看上下文 - 笑场/咳嗽/喷麦:标记
[杂音],一律进删除候选
步骤三:修正口误(只改"说错",不改"说法")
- 改:明显的口误("百分之三十五"说成"百分之三五"但上下文是 35%)、人名说错、数字说错
- 不改:口语表达("贼好用"不改成"非常好用"——那是风格,不是错误)
- 存疑的标
[待确认],不许自作主张"纠正"成另一个意思
步骤四:输出清洗对照表
| 时间 | 原文 | 清洗后 | 处理 |
|---|---|---|---|
| 00:12.4 | 那个、其实我觉得吧 | 我觉得 | 删一级口头禅 |
| 00:31.0 | [停顿 2.3s] | (删除) | 忘词,非留白 |
对照表发给用户确认——这是本 skill 的交付物,也是 EDL 的输入。
4.5 清洗决策速查表
| 现象 | 示例 | 处理 | 依据 |
|---|---|---|---|
| 一级口头禅 | "那个、其实我觉得吧" | 删除 | 不影响句意 |
| 三级口头禅(反问) | "对吧?你们是不是也这样" | 保留并标黄 | 可能是互动钩子 |
| 气口(快节奏口播) | 句间换气 0.4s | 剪掉 | 节奏优先 |
| 气口(访谈/深度内容) | 段落间换气 0.8s | 保留 | 呼吸感是风格 |
| 长停顿(忘词) | "然后…呃…我们继续" | 剪掉 | 无信息量 |
| 长停顿(留白) | 讲完金句后 2s 沉默 | 保留 | 情绪需要停顿 |
| 数字口误 | "百分之三五"(上下文 35%) | 改成"百分之三十五" | 说错了 |
| 口语说法 | "贼好用" | 不改 | 风格,不是错误 |
| 重复强调 | "很重要很重要" | 保留一次 | 强调手法 |
决策原则:删的是"废",留的是"味"。拿不准就标黄给用户选,不要替博主决定他的说话风格。
5. 成本与耗时诚实说明
- 本地转录:1 小时素材约需 5–15 分钟(看机器),零边际成本
- 云端转录:按量计费,1 小时素材通常几块钱到几十块不等(看服务商与档位),报价以服务商实时定价为准,不要背价格
- 清洗是细活:10 分钟口播的清洗对照表,人工确认约需 10–20 分钟——把这个时间告诉用户,别让用户以为"一句话就剪完"
6.5 逐词时间戳格式示例
词级时间戳是精确剪辑的基础(切点可以落在词与词之间,而不是句子之间)。标准格式:
{
"text": "前三秒必须出现结果",
"start": 12.40,
"end": 14.10,
"words": [
{"word": "前三秒", "start": 12.40, "end": 12.90},
{"word": "必须", "start": 12.90, "end": 13.20},
{"word": "出现", "start": 13.20, "end": 13.60},
{"word": "结果", "start": 13.60, "end": 14.10}
]
}
要求:
- 词边界误差 ≤ 0.15 秒,否则切点会"吃字"(前一个词的尾音被切掉)
- 数字与英文单词视为一个词("35%"、"AI" 不拆)
- 语气词单独成词("那个"占一个词位),方便清洗阶段整词删除
方言与口音备注:重口音素材转录错误率会显著上升,不要迷信"AI 肯定听得懂"。转录后随机抽 3 段(每段 30 秒)人工听一遍,错误率 >10% 就全量人工校对——这一步省不得。
7. 反模式
- ❌ 直接拿 ASR 原文去剪——口头禅和气口会让成片节奏稀烂
- ❌ 批量删除三级口头禅——"对吧?"可能是全片唯一的互动钩子
- ❌ 把"贼好用"改成"非常好用"——那是把博主的嘴型和人设一起改了
- ❌ 云端转录不报价直接跑——钱是小事,信任是大事
- ❌ 私密素材走云端——红线,见第 2 节
7. 自检与反馈
每次执行完本 skill,做一次轻量自检:
- 清洗对照表是否给了用户确认?→ 没确认不算做完
- 三级口头禅是否标黄而非批量删除?→ 删了就补回来
- 私密素材是否走了本地路线?→ 走了云端要向用户说明
标准冒烟用例:用插件自带 fixtures 跑 video_audit.py,确认字幕错别字与口头禅规则命中(见仓库根 smoke_test.py)。
反馈渠道:以 [QC] <一句话问题> 为标题提交到 https://github.com/lhg-plugs/lhg-video-edit/issues,正文写清"输入 → 错误输出 → 期望输出"。口头禅库漏词请附原句。
出品:刘洪光
本 skill 由真人出镜 IP「刘洪光」(安徽合肥)出品,归属 lhg-skills。
- GitHub 主页:https://github.com/lhg-skills —— 全部 skill 开源在此,欢迎 star
- 视频号:搜「刘洪光实名上网」
- 微信:lhgsmsw