我正在编写一个使用ffmpeg的libav*库的C程序,使用Dranger's tutorial,我可以正确地解码音频和视频。目前,我正在尝试提取字幕。我实际上不想及时解码并在视频上显示它们,但实际上是从容器中提取字幕文本。
例如,在cli上,
ffmpeg -i video.mkv -map 0:4 -scodec copy out.ass会把他的档案还给我。(由于某些原因,srts只返回文本。)
我尝试过使用AVSubtitle、avcodec_decode_subtitle2等工具,但他们都是逐行返回字幕。我想在srts中的时间码,在ass中的标题信息等,所有我想要的是整个字幕文本文件,这是多路复用到容器。
发布于 2013-04-06 20:58:38
对于.mkv文件,您可以使用mkvextract。您可能需要首先使用mkvinfo来确定要提取的轨迹。
由于您希望在自己的C程序中执行此操作,因此您可能希望使用Matroska libraries而不是命令行工具。
https://stackoverflow.com/questions/11773785
复制相似问题