在linux系统中安装ffmpeg详细说明,且在QT中使用ffmpeg库
安装yasm
官网下载:Download – The Yasm Modular Assembler Project
http://yasm.tortall.net/Download.html
上传至Linux准备安装,解压、安装
tar -xvzf yasm-1.3.0.tar.gz
cd yasm-1.3.0/
./configure
make
make install
nasm安装
nasm包下载
nasm包的地址:https://www.nasm.us/pub/nasm/releasebuilds/
解压tar -xvf nasm.tar.gz
./configure
make
sudo make install
nasm -version
x264下载
下载地址如下
https://www.videolan.org/developers/x264.html
解压
tar jxvf x264-master.tar.bz2
安装
./configure --enable-shared --enable-static --prefix=/usr
make
sudo make install
x264 --version
安装ffmpeg
1.下载地址http://ffmpeg.org/releases/
2.解压ffmpeg-6.0.tar.xz
3.编译
./configure --prefix=/usr/ffmpeg --enable-shared --enable-yasm --enable-libx264 --enable-gpl --extra-cflags=-l/usr/x264/include --extra-ldflags=-L/usr/x264/lib
make
sudo make install
编译以及安装完之后,在/usr/ffmpeg文件夹下会多出四个文件夹,
如果没有指定安装路径,bin文件夹下的两个文件会默认至/usr/local/bin/
include文件夹下的内容会默认在/usr/local/include/下
lib文件夹下的内容会默认在/usr/local/lib/下
share文件夹下的内容默认在/usr/local/share/下
4. 添加环境变量
打开ffmpeg(安装后的)下的bin,执行./ffmpeg -version
这是因为ffmpeg库没有链接到系统库里边,建立链接有两种办法,第一种在环境变量中添加ffmpeg库路径,第二种是在/etc/ld.so.conf.d文件夹下建立ffmpeg.conf,推荐使用第一种,更简单快捷一些,第二种权当记录在此
将ffmpeg添加到环境变量,首先执行:
sudo gedit /etc/profile
export PATH=$PATH:/usr/ffmpeg/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/ffmpeg/lib
或者
export PATH=/usr/ffmpeg/bin:$PATH
export LD_LIBRARY_PATH=/usr/ffmpeg/lib:$LD_LIBRARY_PATH
source /etc/profile
最好是重启一下系统,我使用source /etc/profile没有作用,重启生效执行./ffmpeg -version
导入Qt*
INCLUDEPATH += /usr/ffmpeg/include
LIBS += /usr/ffmpeg/lib/libavformat.so \
/usr/ffmpeg/lib/libavdevice.so \
/usr/ffmpeg/lib/libavcodec.so \
/usr/ffmpeg/lib/libavfilter.so \
/usr/ffmpeg/lib/libavutil.so \
/usr/ffmpeg/lib/libswscale.so \
/usr/ffmpeg/lib/libswresample.so