我正在使用以下脚本来叠加 dvdsub 流和视频流;
avconv -i input.mkv \
-i subtitles.sub -filter_complex "[0:v:0][1:s:0]overlay[vid]" -map "[vid]" \
-s hd720 -sws_flags lanczos \
-vcodec libx264 -crf 20 -preset medium \
~/Desktop/test.mkv
我收到以下错误;
Stream specifier ':s:0' in filtergraph description [0:v:0][1:s:0]overlay[vid] matches no streams.
无论我做什么,我都无法让它工作。有人能告诉我如何使用 avconv(或 ffmpeg)“刻录”字幕吗?
答案1
对于任何感兴趣的人,我都搞明白了......avconv 做不到,ffmpeg 可以。我现在已经切换到 ffmpeg 并将放弃 avconv。
我编译了最新版本的 ffmpeg (v 2.3.3)。我将“sup”格式的字幕转换为“sub/idx”格式,然后指定“.idx”文件作为字幕文件,叠加过程顺利进行。
最后的命令是;
ffmpeg -i input.mkv -i subtitles.idx -filter_complex '[0:v][1:s]overlay[vid]' -map '[vid]' -s hd720 -sws_flags lanczos -vcodec libx264 -crf 20 -preset medium ~/Desktop/test.mkv
当然,可以根据需要配置 x264 设置。