在抖音、快手一类的短视频软件中,为了提升视频的效果,我们通常会给视频添加有趣的背景音乐。通过FFmpeg库我们也可以给视频添加背景音乐,这里就介绍一下如何通过FFmpeg库给视频添加背景音乐。添加背景音乐的原理图如下图所示:
首先我们解封装原始视频得到视频流和音频流,之后我们解封装音频文件得到音频流,通过对应的混音滤镜我们将原始的音频流和背景音乐的音频流进行混合,混合完毕之后我们再将混合的音频流和原始视频流进行封装,就得到了带背景音乐的视频。
视频解封装
对原始视频进行解封装,得到视频的上下文和对应的音视频流。
//打开视频文件
//@1文件地址 @2媒体上下文 @3音频解码器上下文 @4视频解码器上下文 @5音频流
//@6视频流
int openVideoFile(const char *file