在某些视频格式标准中(也就是容器中)是不支持字幕的,例如将mkv文件转码成为ts文件或者mp4文件后,有时候会发现字幕不翼而飞了,这对有些英语不是很好,需要看到字幕的人就不那么顺利了。不过没关系,在转码的时候,可以将字幕打入视频流中,这样就可以在播视频时,将字幕输出出来了,具体方法如下:
首先要了解字幕又很多种,例如srt,例如txt,还有其他的格式,不过这里主要分享的时ASS的
可以通过ffmpeg -codecs参数来查看
点击(此处)折叠或打开
从上面的倒数第二行中可以看到,已经支持了ASS的解码,编码;
可以找到ass的字幕文件,文件内容大致如下:
点击(此处)折叠或打开
找到了对应的文件以后,可以考虑将该文件的字幕打入到对应的视频文件中,下面聚一个例子:
点击(此处)折叠或打开
根据上面的内容可以看到,在输入的内容中,有音频流,视频流,还有字幕流,但是输出的内容中,只有视频流,音频流,并且输出的文件为ts,接下来看一下效果: