通过我这篇文章安装的小伙伴可能会遇到h264编码转换失败的问题,本篇文章将完美解决这个问题。
此篇文章方法也适合未安装ffmpeg的系统,忽略第一步即可。
1.首先,进入你安装的ffmpeg文件夹下,并卸载ffmpeg(只会卸载一些文件,不会完全删除ffmpeg,不考虑内存的话忽略即可,必要的话等安装完成后删除旧ffmpeg文件包即可)
cd ffmpeg-4.2
#卸载命令
make uninstall
2.退出ffmpeg文件夹,下载x264编码库并解压
#下载x264,连接若失效,烦请去网上搜个新的
git clone https://git.videolan.org/git/x264.git
3.进入x264文件夹并开始安装编码库
cd x264
#安装x264,若已安装asm,后面的可选择去掉,不去掉也不影响
./configure --enable-shared --enable-static --disable-asm
#编译
make && make install
4.下载新的ffmpeg版本安装包并解压
#一定要下载新的,不然同版本不会覆盖原文件
wget http://www.ffmpeg.org/releases/ffmpeg-4.1.tar.gz
#解压
tar -zxvf ffmpeg-4.1.tar.gz
5.开始安装ffmpeg并编译
cd ffmpeg-4.1
#安装ffmpeg
./configure --prefix=/usr/local/ffmpeg --enable-shared --enable-yasm --enable-libx264 --enable-gpl --enable-pthreads --extra-cflags=-I/usr/local/x264/include --extra-ldflags=-L/usr/local/x264/lib --disable-x86asm
#编译
make && make install
6.编译完成后还需检查两个文件,其一/etc/ld.so.conf文件,查看是否有/usr/local/ffmpeg/lib,若没有则需要加上;加上或已存在后刷新一下,保证让它正确读取文件。
#刷新命令
/sbin/ldconfig
#或者(用哪个都可以,择其一使用即可)
ldconfig
效果图(通过vi或vim命令即可编辑文件,例如:vim /etc/ld.so.conf):
7.查看配置文件其二:/etc/profile,配置环境变量,不然无法直接使用ffmpeg。
查看是否有此行代码,没有则需要添加:export PATH=$PATH:/usr/local/ffmpeg/bin
添加完成后刷新使其生效:source /etc/profile
8.离开ffmpeg文件夹,之后使用命令查看是否安装成功
ffmpeg -version
若出现跟我一样得信息,那么恭喜你安装成功啦。
9.测试h264是否成功安装
ffmpeg -i input.mp4 -vcodec h264 -y output.mp4
若与下图一致,则安装h264成功。
坑、坑、坑
有些小伙伴可能每次重新连接Linux或docker容器时,ffmpeg命令就丢失了,比如我,我利用docker容器启动的后端Java项目,并在里面安装的ffmpeg,每次重新连接交互容器时,ffmpeg就没了,会出现下面这样的错误提示:ffmpeg: command not found
之后刷新一下环境变量就又好使了。source /etc/profile
经过作者通过度娘搜索一圈后,找到了方法
问题解决:
将/usr/local/ffmpeg/bin文件夹下的ffmpeg文件复制到/usr/local/bin文件夹下。
然后执行chmod -R 777 /usr/local/bin授权即可。
以上就是本次分享的全部内容拉,希望对此刻阅读的你有所帮助o(* ̄▽ ̄*)ブ