Space Video Subtitle

视频字幕全流程——语音转写、口播式断句、AI 校对纠错(专有名词/同音字/标点)、生成 SRT/ASS,并可选烧录进视频。当用户说「上字幕」「转写这条视频」「生成 srt」「字幕校对」「断句」「烧录字幕」「硬字幕」「subtitle」时触发。输入是视频或音频,输出是校对过的字幕文件,可选带字幕的成片。

chuanyue98 6b8646a 2.6 KB Updated

File contents

space-video-subtitle · 字幕

字幕不是「转写完就行」。口播字幕要断句舒服、专名正确、和画面对齐。分四步。

流程

视频/音频 → ① 转写(带时间) → ② 口播式断句 → ③ AI 校对 → ④ 输出 SRT/ASS →(可选)烧录

① 转写

  • 抽 16k 单声道 wav → ASR(SenseVoice / whisper / Volc 任一可用后端)
  • 产出带时间的词级或句级结果

② 口播式断句

字幕断句和标点不一样,按呼吸和语义断,不按书面标点:

  • 一屏字幕 ≤ 一句能一眼读完(中文一般 ≤15 字/行,竖屏更短)
  • 在自然停顿处断,不把一个词组切两屏
  • 语气词/口头语可保留(更真实),也可按用户偏好清掉

③ AI 校对(最关键)

ASR 初稿必错,重点纠三类:

  • 专有名词:人名、产品名、英文缩写(Qoder、HyperFrames、MCP…)——建一个术语表喂进去统一
  • 同音字:中文 ASR 高发(「在/再」「的/得」「做/作」)
  • 标点与数字:口播里的「百分之八十七」→「87%」按需规整

若有剪辑(space-video-edit),字幕基于剪后视频重新转写再校对,不能沿用原视频字幕。

④ 输出

  • subtitles.srt:通用
  • subtitles.ass:需要样式(字体、描边、位置、逐字卡拉OK)时用
  • 命名和成片对应

烧录(可选)

# 软字幕(可关) —— 封装进容器
ffmpeg -i in.mp4 -i subtitles.srt -c copy -c:s mov_text out.mp4

# 硬字幕(烧进画面) —— 带样式
ffmpeg -i in.mp4 -vf "subtitles=subtitles.ass" -c:a copy out_hard.mp4

竖屏注意字幕安全区(别被平台 UI 挡住),一般压在画面下方 1/5 以上。

交接

  • 上游:space-video-editsource_cut.mp4,或任意成片/音频
  • 下游:带字幕的成片 → space-video-cover 或直接发布

依赖

ffmpeg、一个 ASR 后端;烧录 ASS 需 ffmpeg 带 libass。

核心原则

  • 断句按呼吸,不按标点
  • 专名先建表:术语表统一,避免同一个词半集对半集错
  • 剪后重转写:剪过的视频,字幕必须重新做

chuanyue98/skillhub/tree/main/vendored/SpaceZephyr/creator-buddy/video-Skills/space-video-subtitle commit 6b8646a8fb

Frequently asked questions

npx skillmds@latest add chuanyue98/space-video-subtitle