参考https://www.jianshu.com/p/1be929404528
1.下载安装包
官网下载:http://ffmpeg.org/download.html
2.放到linux里解压
tar -xjvf ffmpeg-4.1.tar.bz2
cd ffmpeg-4.1/
3.如果现在执行configure配置的话,可能会报如下的错误
yasm/n
错误的意思是 yasm/nasm 包不存在或者很旧,可以使用--disable-yasm禁用这个选项编译,yasm是一款汇编器,并且是完全重写了nasm的汇编环境,接收nasm和gas语法,支持x86和amd64指令集,所以这里安装一下yasm即可
4.Linux下安装yasm
我用的yum install yasm -y 下载安装,也可以下载压缩包安装,只不过有点麻烦,参考网址里有
5.安装成功之后继续回到ffmpeg解压后的目录,执行下面命令编译并安装
./configure --enable-shared --prefix=(你想要安装的目录比如这个)
make
:编译过程有点长/usr/local/webserver/ffmpeg
make install
6.make install会把ffmpeg相关执行程序、头文件、lib库安装在/usr/local/webserver/ffmpeg/
下
耐心等待完成之后执行cd /usr/local/webserver/ffmpeg/
进入安装目录,查看一下发现有bin
,include
,lib
,share
这4个目录bin
是ffmpeg主程序二进制目录include
是C/C++头文件目录lib
是编译好的库文件目录share
是文档目录
7.然后进入bin目录,执行
./ffmpeg -version
查看当前版本的详细信息,默认情况下一般会报
libavdevice.so.57: cannot open shared object file: No such file or directory
原因是lib目录未加载到链接到系统库中
系统ld目录列表在/etc/ld.so.conf
中,打开文件会发现,
里面引用了/etc/ld.so.conf.d/
下面所有的.conf
文件,比如mariadb-x86_64.conf
8.创建一个文件并写入lib路径即可
执行命令:vim /etc/ld.so.conf.d
然后添加一行内容:/usr/local/webserver/ffmpeg/lib
之后保存并退出,然后执行 ldconfig
使配置生效,
现在再次执行./ffmpeg -version
显示就正常了
9.配置环境变量
vim /etc/profile
:编辑写入↓
export PATH="/usr/local/webserver/ffmpeg/bin:$PATH"
source /etc/profile
:重新读取文件使其生效
配置环境变量后,就可以在任意目录下使用ffmpeg命令了