CentOS上编译FFmpeg

一、在CentOS上编译FFmpeg

  • ffmpeg_sources –将源文件下载到的位置。完成本指南后,可以根据需要将其删除。
  • ffmpeg_build –将在其中构建文件和安装库的位置。完成本指南后,可以根据需要将其删除。
  • bin – 将安装生成的二进制文件(ffmpegffprobex264x265)。

(一)获取依赖关系

注意:表明该命令应超级用户或根被执行,并且仅此指南中所需的命令。

获取依赖项。这些是编译所必需的,但是如果愿意,可以在完成后将其删除(make除外;默认情况下应安装它,并且很多东西都取决于它)。

#yum install autoconf automake bzip2 bzip2-devel cmake freetype-devel gcc gcc-c ++ git libtool make mercurial pkgconfig zlib-devel

在主目录中,新建一个目录,以将所有源代码放入:

mkdir ~/ffmpeg_sources

(二)编译与安装

提示:如果不需要某些编码器,则可以跳过相关部分,然后在FFmpeg中删除相应的./configure选项。例如,如果不需要libvpx,则跳过该部分,然后从“ 安装FFmpeg”部分中删除--enable-libvpx

(如果已下载安装包,直接进行解压编译,跳过远程下载)

1.      NASM

一些库使用的汇编程序。强烈建议您使用,否则生成的结果可能会很慢。

cd ~/ffmpeg_sources
--如果已下载安装包,直接进行解压编译操作,跳过远程下载
tar xjvf nasm-2.14.02.tar.bz2
cd nasm-2.14.02
./autogen.sh
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install

2.      Yasm

cd ~/ffmpeg_sources
--如果已下载安装包,直接进行解压编译操作,跳过远程下载
tar xzvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install

3.      libx264

H.264视频编码器。有关更多信息和用法示例,请参阅《H.264编码指南》

要求ffmpeg使用--enable-gpl --enable-libx264配置。

cd ~/ffmpeg_sources
--如果已下载安装包,直接进行解压编译操作,跳过远程下载
tar xzvf x264.tar.gz
cd x264
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
make
make install

4.      libx265

H.265 / HEVC视频编码器。有关更多信息和用法示例,请参阅《H.265编码指南》

要求ffmpeg用--enable-gpl --enable-libx265配置。

cd ~/ffmpeg_sources
--如果已下载安装包,直接进行解压编译操作,跳过远程下载()
tar xzvf x265.tar.gz
cd ~/ffmpeg_sources/x265/build/linux
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source
make
make install

5.      libvpx

VP8 / VP9视频编码器和解码器。有关更多信息和用法示例,请参阅《VP9视频编码指南》

需要使用--enable-libvpx配置ffmpeg。

cd ~/ffmpeg_sources
--如果已下载安装包,直接进行解压编译操作,跳过远程下载()
tar xf libvpx-1.8.2.tar.gz
cd libvpx-1.8.2
./configure --prefix="$HOME/ffmpeg_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm
make
make install

6.      FFmpeg

cd ~/ffmpeg_sources
--如果已下载安装包,直接进行解压编译操作,跳过远程下载()
tar xjvf ffmpeg-snapshot.tar.bz2
cd ffmpeg
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure 
  --prefix="$HOME/ffmpeg_build" 
  --pkg-config-flags="--static" 
  --extra-cflags="-I$HOME/ffmpeg_build/include" 
  --extra-ldflags="-L$HOME/ffmpeg_build/lib" 
  --extra-libs=-lpthread 
  --extra-libs=-lm 
  --bindir="$HOME/bin" 
  --enable-gpl 
  --enable-libfreetype 
  --enable-libvpx 
  --enable-libx264 

  --enable-nonfree
make
make install
hash -d ffmpeg

(三)FFmpeg 完毕:

安装成功后:输入ffmpeg -version;显示如下图,则安装成功

参考文档:http://trac.ffmpeg.org/wiki/CompilationGuide/Centos
L-Rui
原文地址:https://www.cnblogs.com/Rui6/p/14738072.html