在centos下编译ffmpeg方法:
安装基础依赖库:
yum install autoconf automake bzip2 bzip2-devel cmake freetype-devel gcc gcc-c++ git libtool make pkgconfig zlib-devel
创建存放源码文件夹:
mkdir ~/source
安装nasm
下载nasm源码
tar xjvf nasm-2.15.05.tar.bz2
cd nasm-2.15.05
./autogen.sh
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
安装yasm
下载yasm源码
tar xzvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
安装libx264
下载x264源码
cd x264
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
make
make install
安装并编译ffmpeg
下载ffmpeg源码
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
此时~/bin下就是我们编译并安装成功的ffmpeg,进入~/bin目录下,我们如何使用ffmpeg转码一个文件
./ffmpeg -i test.mp4 -vcodec libx264 -vf 1920:1080 -acodec copy -f test_hd.mp4
以上命令表示将一个文件转码成分辨率为1080p的视频