本地视频字幕提取与校对
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_283a17af/video-subtitle-tool。
技能介绍
要解决什么问题
本地视频往往只有软字幕轨、硬字幕画面,或干脆只有人声。你需要一份可读的字幕或逐段文稿,又不想把文件上传到云端 ASR,也不想为校对反复手工改同音错字(例如 ASR 把「反智」听成「反制」)。
技能如何工作
技能用「先探测、再选路」的方式处理,全程离线(faster-whisper、pysubs2、opencc 等)。
- Path A — 内嵌软字幕:用
extract_embedded.py探测并抽取;有轨则直接得到 SRT,可跳到校对与导出。 - Path B — ASR(默认兜底):
transcribe.py自动抽 16k 单声道 wav 并转写;--lang auto/zh,模型small平衡速度与精度;NVIDIA 可用--device cuda。 - 规则校对(必做):
proofread.py做繁简转换(OpenCC)、去空轴、合并重复行、按时间排序,不调用 LLM。 - Path C — 硬字幕比对(可选):
extract_frames.py裁切底部字幕带;用多模态阅读帧图,整理fixes.json的[错, 对]对;correct_srt.py写回并出对比报告。 - 导出:
export_doc.py生成段落合并的 TXT,并保留 SRT。
适用边界与注意点
- ffmpeg/ffprobe 需在 PATH;Windows 路径请用
E:/视频/x.mp4这类写法。 - Intel Arc:GPU 时间戳不可靠,请用
--device cpu;作者在 A770 上以 CPU 模式验证。 - AMD ROCm:当前 CTranslate2 无 ROCm 轮子,会回落 CPU。
- 国内 easyocr 权重难下,硬字幕纠错依赖帧图阅读而非 OCR。
- 规则校对不修语义;同音误听需 Step 3 或人工。
使用场景
- 手头是 mp4/mkv 本地讲座或访谈,没有内嵌字幕轨,需要离线跑 ASR 得到可编辑 SRT 与段落 TXT
- 软字幕已抽出或 ASR 已完成,要把繁体转简体、去空轴并合并重复行后再导出文稿
- 画面底部有硬字幕而 ASR 出现大量同音错字,需裁切字幕带帧图对照并生成 fixes.json 批量改回
- 内嵌字幕轨存在时优先用探测脚本抽取,跳过转写直接做规则校对并导出可读文档
适合人员
- 剪辑师:客户只给本地成片、无字幕工程文件,需在不上传云端的前提下出字幕与旁白稿
- 口述史或田野调查整理者:大量本地录音录像要转成可检索文字并做基础繁简与格式清理
- 长视频博主:想把已发布的本地源文件转成文章底稿,同时保留 SRT 供二次剪辑与校对
- 社区字幕志愿者:处理无 API 预算的 speech-only 视频,在 Windows 本机用 ffmpeg 与 Whisper 完成全流程