请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

带你踩编译的坑--centos7 如何编译ffmpeg 带x265和nvenc

前言

看了老师的 编译参数。我在centos7上尝试编译,以缺少各种库失败而告终。最后通过不断的百度。。整理出来了 如何编出一个可以支持nvenc的ffmpeg 我把过程分享出来 避免重复踩坑,如果不想编译nvenc 或者你的显卡不是英伟达 可以 不卸载驱动 编译的时候 把nvenc这个参数给去掉

过程

# 下载英伟达驱动
https://www.geforce.cn/drivers

卸载默认驱动

 yum remove glx-utils
 vim /etc/modprobe.d/blacklist.conf
    加入 blacklist nouveau
 mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
 dracut -v /boot/initramfs-$(uname -r).img $(uname -r) 

开始安装驱动

 yum -y upgrade
 yum -y update
 yum -y install gcc kernel-devel kernel-headers 
 yum install --enablerepo=epel dkms  
 sh NvidiaXXXXX.run

安装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

安装fdk-aac

 wget https://jaist.dl.sourceforge.net/project/opencore-amr/fdk-aac/fdk-aac-0.1.6.tar.gzhttps://jaist.dl.sourceforge.net/project/opencore-amr/fdk-aac/fdk-aac-0.1.6.tar.gz
 
tar xvf fdk-aac-0.1.6.tar.gz 
cd fdk-aac-0.1.6
./configure 
make && make install

安装libmfx-devel libmp3lame-dev

yum install -y libmfx-devel

安装lame
wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
tar -xzf lame-3.99.5.tar.gz
 cd lame-3.99.5
 ./configure --enable-static --enable-shared
 make && make install
 
 安装nasm
wget https://www.nasm.us/pub/nasm/releasebuilds/2.13.03/nasm-2.13.03.tar.gz
tar xvf nasm-2.13.03.tar.gz 
cd nasm-2.13.03
./configure 
make && make install

安装x264
wget http://mirror.yandex.ru/mirrors/ftp.videolan.org/x264/snapshots/last_x264.tar.bz2
./configure --enable-static --enable-shared 
make && make install

安装x265
yum install hg cmake -y
hg clone https://bitbucket.org/multicoreware/x265
 cd x265/build/linux
 ./make-Makefiles.bash
 make install
 export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
 
 安装xvid
wget http://downloads.xvid.org/downloads/xvidcore-1.3.4.tar.gz
tar zvxf xvidcore-1.3.4.tar.gz
cd xvidcore/build/generic
./configure
make
make install

#下载ffmpeg

tar xvf ffmpeg-3.3.7.tar.gz 

./configure --disable-static --enable-shared --enable-small  --arch=x86_64  --enable-libfdk-aac --enable-libmp3lame --enable-libopus --enable-libspeex --enable-libx264 --enable-libx265  --enable-nvenc   --enable-gpl --enable-nonfree --enable-avresample  --enable-filter=delogo --enable-debug --disable-optimizations 
make &&  make install

添加环境变量
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

正在回答

2回答

李超 2018-09-22 23:57:57

写的非常棒,给你一个大大的?。一般的情况我们在编译ffmpeg时都会遇到某些依赖库没有的错误。一般有两种处理方法,一是通过你所使用的系统安装工具(Mac下用brew, Ubuntu下用apt, CentOS 用yum )进行安装,即 brew/apt/yum install 库名子。第二种就是你所说的这种直接下载源码安装,就是稍微费点事儿。一般情况下大家会选用第一种。但对于想熟悉整个过程的同学来说,第二种可以使自己思考的更多,学到的也更多,更深入。

0 回复 有任何疑惑可以回复我~
  • 老师,我电脑是Windows的,怎么跟上老师开发呢?然后我用的是公司服务器跟老师开发,服务器应该都没有独立显卡的,该怎么设置参数好一点呢?
    回复 有任何疑惑可以回复我~ 2020-08-18 09:46:55
Turdidae 2018-09-26 17:51:11
安装fdk-aac  url
https://jaist.dl.sourceforge.net/project/opencore-amr/fdk-aac/fdk-aac-0.1.6.tar.gz


0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信