linux centos ffmpeg安装教程和配置使用

linux centos ffmpeg安装教程和配置使用

首先在FFMEPG官网下载最新的FFMPEG的版本https://ffmpeg.org/download.html

下载的源码文件最新版,我这里下载的是4.0.2版本:https://ffmpeg.org/releases/ffmpeg-4.0.2.tar.bz2

上传至服务器之后进行解压操作:tar xvfj ffmpeg-4.0.2.tar.bz2

解压之后进入解压目录:cd ffmpeg-4.0.2

编译安装:./configure –enable-shared –prefix=/usr/local/ffmpeg

–enable-shared是允许其编译时产生动态库,在以后的开发过程中会用到这几个动态库

–prefix=/usr/local/ffmpeg  指定安装的路径

但是多数人在执行的时候会报如下错误:

解决:

这个错误说明服务器的yasm或者nasm版本过低过或者没有安装;

要解决这个问题很简单 安装对应的版本!

网站下载一个yasm,上传至服务器

如果yum库里面有yasm的话,直接执行yum install yasm

没有的话下载:wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

然后进行安装:

tar -zxvf yasm-1.3.0.tar.gz

cd yasm-1.3.0

./configure

make

make install

安装yasm之后在进行安装ffmpeg就不会报上述错误

然后继续安装ffmpeg:

./configure –enable-shared –prefix=/usr/local/ffmpeg

make

make install

安装完成后,会在/usr/local/ffmpeg目录下生成相对应的目录则表示安装成功了

测试是否安装成功:/usr/local/ffmpeg/bin/ffmpeg -version

原因是相应的库文件没有找到

原因是相应的库文件没有找到
解决办法:

修改文件/etc/ld.so.conf 内容增加/usr/local/ffmpeg/lib/

依次敲:

vi /etc/ld.so.conf

a (vim编辑器下的插入操作)

/usr/local/ffmpeg/lib/

ZZ (保存退出)

为使修改生效

ldconfig

然后执行:/usr/local/ffmpeg/bin/ffmpeg -version

结果如下:

表示安装成功了

最后配置环境变量,使ffmpeg在如何目录下都可以执行

export PATH=/usr/local/ffmpeg/bin/:$PATH

env

如果想要使配置永久生效 :将配置写在profile中

vi /etc/profile

在尾部添加:export PATH=/usr/local/ffmpeg/bin/:$PATH

重启服务器即可!

export PATH=”/usr/local/ffmpeg/bin:$PATH”

export PKG_CONFIG_PATH=”/usr/local/ffmpeg/lib/pkgconfig”

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH

若make的时候,报以下错误

/usr/bin/ld: libavcodec/mqc.o: relocation R_X86_64_32 against `.rodata‘ can not be used when making a shared object; recompile with -fPIC libavcodec/mqc.o: error adding symbols: Bad value collect2: error: ld returned 1 exit status

进入安装目录:/home/soft/ffmpeg-4.0.2/ffbuild, 修改config.mak文件

#config.mak L75加入 -fPIC,然后重新编译#直接替换,顺序可能不一样

HOSTCFLAGS=-O3 -g -std=c99 -Wall -fPIC

//第二种方法:Makefile的文件里CFLAGS的参数加上-fPIC

添加动态链接库配置

echo ‘/usr/local/lib’ >> /etc/ld.so.conf.d/local.conf

#更新缓存ldconfig

點閱: 23

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料