| Version 5 (modified by llogan, 18 months ago) (diff) |
|---|
Compile FFmpeg on CentOS 6.0
This guide is based on a minimal CentOS installation and will install FFmpeg with several external encoding libraries.
Note: The # indicates that the command should be executed as superuser or root.
Preparation
Remove any existing packages:
# yum erase x264 ffmpeg
Get the dependencies:
# yum install gcc git make nasm pkgconfig wget
Make a source directory:
mkdir ~/ffmpeg-source
Installation
Yasm
Yasm is an assembler used by x264 and FFmpeg.
cd ~/ffmpeg-source wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz tar xzvf yasm-1.2.0.tar.gz cd yasm-1.2.0 ./configure make # make install
Note: If you do not require certain encoders you may skip the relevant section and then remove the appropriate ./configure option in FFmpeg. For example, if libtheora is not needed, then skip that section and then remove --enable-libtheora from the Install FFmpeg section.
x264
H.264 video encoder.
cd ~/ffmpeg-source git clone git://git.videolan.org/x264 cd x264 ./configure --enable-static make # make install
LAME
MP3 audio encoder.
cd ~/ffmpeg-source wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.tar.gz tar xzvf lame-3.99.tar.gz cd lame-3.99 ./configure --enable-nasm make # make install
libogg
Required for libtheora and libvorbis.
cd ~/ffmpeg-source wget http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.xz tar Jxvf libogg-1.3.0.tar.xz cd libogg-1.3.0 ./configure make # make install
libtheora
Theora video encoder.
cd ~/ffmpeg-source wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz tar xzvf libtheora-1.1.1.tar.gz cd libtheora-1.1.1 ./configure make # make install
libvorbis
Vorbis audio encoder.
cd ~/ffmpeg-source wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.2.tar.gz tar xzvf libvorbis-1.3.2.tar.gz cd libvorbis-1.3.2 ./configure make # make install
vo-aacenc
VisualOn AAC audio encoder.
cd ~/ffmpeg-source wget http://downloads.sourceforge.net/opencore-amr/vo-aacenc-0.1.1.tar.gz tar xzvf vo-aacenc-0.1.1.tar.gz cd vo-aacenc-0.1.1 ./configure make # make install
libvpx
VP8 video encoder.
cd ~/ffmpeg-source git clone http://git.chromium.org/webm/libvpx.git cd libvpx ./configure make # make install
FFmpeg
cd ~/ffmpeg-source git clone git://source.ffmpeg.org/ffmpeg cd ffmpeg ./configure --enable-gpl --enable-libmp3lame --enable-libtheora --enable-libvo-aacenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-version3 make # make install
Compilation is now complete and ffmpeg should now be ready to use. The rest of this guide shows how to update or remove FFmpeg.
Note: Keep the ffmpeg-source directory and all contents if you intend to update or uninstall as shown below.
Updating x264, libvpx, and FFmpeg
First uninstall x264, libvpx, and FFmpeg:
cd ~/ffmpeg-source/x264 # make uninstall cd ~/ffmpeg-source/ffmpeg # make uninstall cd ~/ffmpeg-source/libvpx # make uninstall
Update x264
cd ~/ffmpeg-source/x264 make distclean git pull
Then run ./configure, make, and make install as shown in the Install x264 section.
Update libvpx
cd ~/ffmpeg-source/libvpx make distclean git pull
Then run ./configure, make, and make install as shown in the Install libvpx section.
Update FFmpeg
cd ~/ffmpeg-source/ffmpeg make distclean git pull
Then run ./configure, make, and make install as shown in the Install FFmpeg section.
Reverting changes made by this guide
# yum erase gcc git make nasm pkgconfig wget cd ~/ffmpeg-source/yasm-1.2.0 # make uninstall cd ../x264 # make uninstall cd ../lame-3.99 # make uninstall cd ../libogg-1.3.0 # make uninstall cd ../libtheora-1.1.1 # make uninstall cd ../libvorbis-1.3.2 # make uninstall cd ../libvpx # make uninstall cd ../ffmpeg # make uninstall rm -rf ~/ffmpeg-source


