通过阅读本文,你将了解如何通过「ffmpeg.exe」提取字幕文件,以及使用「ffprobe.exe」以「JSON」格式输出视频详情。为了方便美剧迷,我写了一个可以「识别并提取字幕」并将提供「繁转简」的小工具。
提取字幕的方法有很多,本文将介绍使用 FFmpeg 来提取字幕。
提取字幕的关键就是知道「字幕流」的编号是多少,你可以使用 ffmpeg 查看「字幕流」编号:
ffmpeg -i 电影路径
得到「字幕流」编号后,你就可以使用如下命令完成提取:
ffmpeg -y -i 电影路径 -map 0:流编号 XXX.srt
这里解释一下命令行里面的一些参数:
参数 | 说明 |
---|---|
电影路径 | 指定是一个包含字幕流的电影文件,例如常见的「*.mkv」文件 |
流编号 | 字幕流编号,通过 ffmpeg 或者视频软件查看 |
XXX.srt | 提取的字幕名称,字幕文件的后缀还可以是「.ass」 |
如果你是开发者,你可以使用 ffprobe 以 JSON 格式输出流信息:
ffprobe -v error -of json 电影路径 -show_streams
然后读取「标准输出流」。这里注意区分,如果你要读取 ffmpeg 结果,你需要读取其「标准异常流」。
为了方便美剧迷快速完成上述步骤,我写了一个可以「识别并提取字幕」小工具,这个小工具还可以完成「繁转简」:
- 项目地址:felixmaker / csub -20230509
- 蓝奏云 下载地址 - 20230509,密码:1gie
该小工具有着下面的特性:
- 使用 ffmpeg 识别和提取电影文件的字幕列表
- 提供简易的的「繁」转「简」工具
- 识别 ISO 639 地区代码
- 跨平台支持
- 使用 FLTK 编写用户界面