通过向带有ffmpeg的mkv视频添加一个.ass字幕轨道,它不会被设置为默认音轨,因此在播放时必须手动打开字幕。是否可以设置字幕轨道的默认标志?
使用ffmpeg命令:
ffmpeg -i video.mp4 -i subtitles.ass -c:v libx264 -preset veryslow \
-pix_fmt yuv420p10le -c:a copy -c:s copy output.mkv
请注意,我希望保持.ass字幕格式,而不是将字幕转换为mov_text,就像在下面的问题中所建议的:如何使用ffmpeg设置默认流
可以使用mkvpropedit设置默认标志,如下所示:
mkvpropedit output.mkv --edit track:s1 --set flag-default=1
但是直接用ffmpeg做这件事有可能吗?
发布于 2016-02-05 23:28:15
我认为根据这个补丁,这是可能的。至少对我来说是这样的:
ffmpeg -i in.mp4 -i in.srt -c copy -disposition:s:0 default out.mkv
注在本例中,s
在-disposition:s:0
中表示字幕,而不是流。若要按索引选择第二个蒸汽,请使用-disposition:1
。
发布于 2016-11-21 01:22:51
您可以使用“强制”代替默认来强制vlc播放它。
ffmpeg -f mp4 -i outfile.mp4 -f srt -i VTS_07_0.EnglishV2.srt -c:v copy -c:a copy -metadata:s:a:0 language=Japanese -c:s mov_text -metadata:s:s:0 language=English -disposition:s:s:0 forced mix.mp4
https://stackoverflow.com/questions/26956762
复制相似问题