描述:由于本地开发机默认的ffmpeg版本是2.x,生成视频是要求是-pix_fmt yuv420p格式,低版本加上参数没有生效,怀疑是版本过低的原因
解决方案:升级本地ffmpeg 2.x版本到4.x版本
问题:开发机有权限限制,只能编译安装到个人指定目录
步骤:
1,官网下载ffmpeg 4.x版本:
wget https://johnvansickle.com/ffmpeg/release-source/ffmpeg-4.1.tar.xz
2,解压
xz -d ffmpeg-4.1.tar.xz
tar -xf ffmpeg-4.1.tar
3,编译安装
cd ffmpeg-4.1/
./configure --enable-shared --prefix=/home/users/user_name/ffmpeg/ffmpeg_build # 指定prefix安装到指定路径而不是根目录下(没有权限)
make
make install
4,导入动态链接库并使用
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/users/user_name/ffmpeg/ffmpeg_build/lib
cd bin
./ffmpeg # 执行安装在指定路径下的ffmpeg,而不是系统默认的ffmpeg,对比下版本
实际情况发现,果然是ffmeg 版本过低导致图片合成视频的时候 -pix_fmt yuv20p 参数失效,下面给一个效果图