很多时候为了区分不同的视频,同时也是为了方便大家了解视频内容,我们会给视频添加一个自定义的封面。FFmpeg支持给视频添加自定义封面。但是研究了一下网上的案例,几乎所有的添加封面都是用的FFmpeg的工具实现的,这样使用起来虽然方便一些,但是集成起来很不方便,所以这里自己写了一个通过代码实现的给视频添加封面的功能。给视频添加封面的流程图如下图所示:
视频解封装
通过解封装,我们可以获取视频文件中的原始视频流和音频流
//打开视频文件,获取流信息
//@1文件地址 @2媒体上下文 @3音频解码器上下文 @4视频解码器上下文 @5音频流
//@6视频流
int openVideoFile(const char *file, AVFormatContext