一、在CentOS上编译FFmpeg
- ffmpeg_sources –将源文件下载到的位置。完成本指南后,可以根据需要将其删除。
- ffmpeg_build –将在其中构建文件和安装库的位置。完成本指南后,可以根据需要将其删除。
- bin – 将安装生成的二进制文件(ffmpeg,ffprobe,x264,x265)。
(一)获取依赖关系
注意:该#表明该命令应超级用户或根被执行,并且仅此指南中所需的荫命令。
获取依赖项。这些是编译所必需的,但是如果愿意,可以在完成后将其删除(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;显示如下图,则安装成功