Skip to content

About

用 faster-whisper 把视频/音频转成文字并翻译成字幕:99 种语言自动检测、词级时间戳、GPU 加速,输出 TXT/JSON/SRT,支持双语字幕与硬字幕烧录。Transcribe & translate video/audio into subtitles locally.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

Repository files navigation

faster-whisper-transcribe

基于 faster-whisper(CTranslate2 优化的 Whisper)的转写与字幕翻译工具。

给 AI 看的执行细节在 SKILL.md;本文件是给人看的概览。

能力

  • 转写:视频/音频直接输入 → TXT + JSON + SRT,内置词级时间戳与 Silero VAD
  • 字幕:AI 语义断句 → 翻译润色 → 硬字幕烧录,支持单语/双语
  • 校验:机器校验字幕硬规则与时间轴一致性
  • 99 种语言自动检测,GPU(CUDA)/ CPU 双模式

目录结构

faster-whisper-transcribe/
├── SKILL.md                 # 流程总线:意图路由与强制规则(AI 入口)
├── init.md                  # 环境初始化与排错
├── subtitle.md              # 断句 / 翻译 / 校验 / 烧录全流程
├── polish-rules.md          # 翻译润色标准
├── scripts/
│   ├── transcribe.py        # 转写:提音轨 → 转录 → TXT/JSON/SRT
│   ├── validate_srt.py      # 字幕硬规则与时间轴校验
│   └── burn_subtitles.py    # 硬字幕烧录
└── README.md

三个脚本

脚本 作用 关键说明
transcribe.py 转写 视频自动提音轨(流式写盘);CUDA 不可用自动回退 CPU;本地模型自动发现
validate_srt.py 校验 检查序号/时长/行宽/重叠/间隔/标点;--reference 比对译文与原文时间轴
burn_subtitles.py 烧录 用 imageio-ffmpeg 的完整版 ffmpeg;不要手搓 ffmpeg 命令

⚠️ 烧录有坑:ffmpeg 的 subtitles= 滤镜用 filename:options 语法,Windows 盘符冒号会被当分隔符。脚本通过「cwd 切到 SRT 目录 + 只传文件名」规避,实测这是唯一兼容中文/空格/单引号路径的写法。详见脚本头注释。

输出产物

落在与输入文件同名的同级子目录(可用 --output_dir 改):

文件 说明
transcription.txt 纯文本,含元信息头
transcription.json 含词级时间戳,断句与翻译的时间源
transcription.srt 原始字幕(断句前)
transcription.raw.srt 原始字幕备份(断句前自动备份)
transcription-<lang>.srt 译文字幕
transcription-bilingual.srt 双语字幕(译文在上、原文在下)
<视频名>-字幕.mp4 烧录成片

参考

faster-whisper · CTranslate2 · large-v3-turbo(Mobius Labs)

About

用 faster-whisper 把视频/音频转成文字并翻译成字幕:99 种语言自动检测、词级时间戳、GPU 加速,输出 TXT/JSON/SRT,支持双语字幕与硬字幕烧录。Transcribe & translate video/audio into subtitles locally.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages