Linux安装ffmpeg

前段时间项目中有用到视频上传功能,由于有些视频文件较大,需要进行转码压缩,于是用到了ffmpeg

1、下载ffmpeg

ffmpeg-4.1.3.tar.bz2

2、解压

tar -zxvf ffmpeg-4.1.3.tar.bz2

3、安装其他依赖的软件
安装yasm
tar -xvf yasm-1.3.0.tar.gz 
./configure 
make
make install

安装nasm
tar -xvf nasm-2.13.03.tar.gz 
./configure 
make
make install


安装x264
./configure --prefix=/usr/local/x264 --enable-shared --enable-static --enable-yasm --extra-libs=-ld --disable-opencl
make 
make install

安装ffmpeg过程中,如果报错,提示还有其他依赖包未安装,根据提示安装即可,比如gcc、zlib

4、安装ffmpeg

./configure --enable-shared --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
make
make install

其中make过程会比较久,耐心等待就行

5、环境配置

vi /etc/profile
添加以下内容
#set ffmpeg environment
PATH=$PATH:/usr/local/ffmpeg/bin
export PATH
使修改生效:source /etc/profile

vi /etc/ld.so.conf
添加以下内容
/usr/local/ffmpeg/lib
/usr/local/lib
/usr/local/x264/lib
使修改生效:sudo ldconfig

6、查看配置和安装是否成功

ffmpeg -version

出现以下信息表示安装成功

Linux安装ffmpeg

7、其他问题

如果编译ffmpeg时遇到:ERROR: libx264 not found
(1)、一个是编译x264时:./configure --prefix=/usr/local/x264 --enable-shared --enable-static --enable-yasm --extra-libs=-ld --disable-opencl
一定要加上后面的--disable-opencl,之前没加,编译ffmpeg一直报libx264 not found,后来加上--disable-opencl,重新编译了x264,就可以了
(2)、另一个原因可能是编译ffmpeg的时候没有加上后面这两个参数:
--extra-cflags=-I/usr/local/x264/include --extra-ldflags=-L/usr/local/x264/lib

 

访问视频文件时出现:Nginx 403 forbidden
vi nginx.conf
添加 user root;
./nginx -s reload