centos下ffmpeg环境搭建

来源:互联网 发布:软件测试职业规划 编辑:程序博客网 时间:2024/06/06 08:31

原网址:https://trac.ffmpeg.org/wiki/CompilationGuide/Centos
获取依赖关系

注意:#表示该命令应以超级用户或root身份执行,并且仅在本指南中为yum命令所需。

获取依赖关系 这些是编译所需的,但是可以根据您的喜好在完成以上操作后,则可以将其删除(除了make;默认情况下应该安装,许多事情取决于它)。

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

注意:安装x264的时候执行./configure可能提示nasm版本较低,下面有nasm的安装步骤,不提示出错的情况下不需要重新安装nasm
在你的主目录中创建一个新目录,将所有的源代码放入:

mkdir ~/ffmpeg_sources

编译安装
注意:如果您不需要某些编码器,可以跳过相关部分,然后在FFmpeg中删除相应的./configure选项。 例如,如果不需要libvorbis,请跳过该部分,然后从Install FFmpeg部分中删除–enable-libvorbis。
Nasm

cd ~/ffmpeg_sourcescurl -L -O http://www.nasm.us/pub/nasm/releasebuilds/2.13.01/nasm-2.13.01.tar.gztar xvf nasm-2.13.01.tar.gz cd nasm-2.13.01./configure makemake install

Yasm

Yasm是x264和FFmpeg使用的汇编器。

cd ~/ffmpeg_sourcesgit clone --depth 1 git://github.com/yasm/yasm.gitcd yasmautoreconf -fiv./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"makemake installecho

注意:最后的echo只是一个多余命令,因为一些用户在复制和粘贴每个代码块时忘记手动执行最后一个命令。
libx264

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

需要使用–enable-gpl –enable-libx264配置ffmpeg。

cd ~/ffmpeg_sourcesgit clone --depth 1 git://git.videolan.org/x264cd x264PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static//出错时 请进行下一步安装最新版nasmmakemake installecho

安装X264未出错则不需要安装Nasm

cd ~/ffmpeg_sourcescurl -L -O http://www.nasm.us/pub/nasm/releasebuilds/2.13.01/nasm-2.13.01.tar.gztar xvf nasm-2.13.01.tar.gz cd nasm-2.13.01./configure makemake install

libx265

H.265 / HEVC视频编码器。 有关更多信息和使用示例,请参见“H.265编码指南”。

需要使用–enable-gpl –enable-libx265配置ffmpeg。

cd ~/ffmpeg_sourceshg clone https://bitbucket.org/multicoreware/x265cd ~/ffmpeg_sources/x265/build/linuxcmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../sourcemakemake installecho

注意下载x265可能不成功,采用另外一种方式获得curl -L -O http://ftp.videolan.org/pub/videolan/x265/x265_2.4.tar.gz
libfdk_aac

AAC音频编码器。

需要ffmpeg配置为–enable-libfdk_aac(如果还包括–enable-gpl,则为–enable-nonfree)。

cd ~/ffmpeg_sourcesgit clone --depth 1 git://git.code.sf.net/p/opencore-amr/fdk-aaccd fdk-aacautoreconf -fiv./configure --prefix="$HOME/ffmpeg_build" --disable-sharedmakemake installecho

libmp3lame

MP3音频编码器。

需要使用–enable-libmp3lame配置ffmpeg。

cd ~/ffmpeg_sourcescurl -L -O http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gztar xzvf lame-3.99.5.tar.gzcd lame-3.99.5./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --disable-shared --enable-nasmmakemake installecho

libopus

Opus音频解码器和编码器。

需要使用–enable-libopus来配置ffmpeg。

cd ~/ffmpeg_sourcesgit clone http://git.opus-codec.org/opus.gitcd opusautoreconf -fivPKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --disable-sharedmakemake installecho

注意:下载源码包可能不成功,使用这条命令curl -L -O http://downloads.xiph.org/releases/opus/opus-1.1.4.tar.gz
libogg

Ogg比特流库。 需要libtheora和libvorbis。

cd ~/ffmpeg_sourcescurl -O http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gztar xzvf libogg-1.3.2.tar.gzcd libogg-1.3.2./configure --prefix="$HOME/ffmpeg_build" --disable-sharedmakemake installecho

libvorbis

Vorbis音频编码器。 需要libogg。

需要使用–enable-libvorbis配置ffmpeg。

cd ~/ffmpeg_sourcescurl -O http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gztar xzvf libvorbis-1.3.4.tar.gzcd libvorbis-1.3.4./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" --disable-sharedmakemake installecho

libvpx

VP8 / VP9视频编码器。
需要使用–enable-libvpx配置ffmpeg。

cd ~/ffmpeg_sourcesgit clone --depth 1 https://chromium.googlesource.com/webm/libvpx.gitcd libvpx./configure --prefix="$HOME/ffmpeg_build" --disable-examplesmakemake installecho

注意:下载libvpx总是失败,从其他地方下载的源码搬移出问题,未解决,故这项没有配置,最后vp8/vp9是不可以使用的
FFmpeg

cd ~/ffmpeg_sourcescurl -O http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2tar xjvf ffmpeg-snapshot.tar.bz2cd ffmpegPKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib -ldl" --bindir="$HOME/bin" --pkg-config-flags="--static" --enable-gpl --enable-nonfree --enable-libfdk_aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265makemake installhash -r

注意:若没有配置libvpx 就删除以下内容 –enable-libvpx
编译现在已经完成,ffmpeg(也就是ffprobe,ffserver,lame和x264)现在应该可以使用了。

1 0