- FFmpeg (http://ffmpeg.mplayerhq.hu)
- FFmpeg-PHP (http://ffmpeg-php.sourceforge.net)
- MPlayer + Mencoder (http://www.mplayerhq.hu/design7/dload.html)
- FLV2Tool (http://inlet-media.de/flvtool2)
- Libogg (http://www.xiph.org/downloads)
- Libvorbis (http://www.xiph.org/downloads)
- LAME MP3 Encoder (http://lame.sourceforge.net)
It assumes you already have Apache and PHP5 installed as those are required dependencies as well. There will also be a guide up for installing PHP5.2.6 from source on CentOS/RHEL soon.
First install subversion and ruby via yum or up2date:
yum -y install subversion ruby
Now we need to install MPlayer & FFmpeg sources from SVN:
cd ~
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
Now we need some codecs:
wget http://www3.mplayerhq.hu/MPlayer/releases/codecs/essential-20071007.tar.bz2
tar xvjpf essential-20071007.tar.bz2
cd essential-20071007
mkdir /usr/local/lib/codecs
mv * /usr/local/lib/codecs/
chmod -R 755 /usr/local/lib/codecs/
cd ~
Next we will install LAME MP3 encoder:
wget http://internap.dl.sourceforge.net/sourceforge/lame/lame-398.tar.gz
tar xvzpf lame-398.tar.gz
cd lame-398
./configure –prefix=/usr
make
make install
cd ~
Now we install Libogg:
wget http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz
tar xvzpf libogg-1.1.3.tar.gz
cd libogg-1.1.3
./configure –prefix=/usr
make
make install
cd ~
We need to make sure the correct lib directories are setup in ldconfig. Edit the /etc/ld.so.conf file and add the following lines:
/usr/lib
/usr/local/lib
Now save and run the following command:
ldconfig
To install libvorbis we will run:
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.2.0.tar.gz
tar xvzpf libvorbis-1.2.0.tar.gz
cd libvorbis-1.2.0
./configure –prefix=/usr
make
make install
cd ~
Now we will install FLVTool2:
wget http://rubyforge.org/frs/download.php/17497/flvtool2-1.0.6.tgz
tar xvzpf flvtool2-1.0.6.tgz
cd flvtool2-1.0.6
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install
cd ~
Next we should build MPlayer & MEncoder and it will take a while unless you have a nice dual or quad core machine. Note that I’ve seen the SVN version of these packages break before, so you can always download the source code from their site (a stable copy) if it fails on make:
cd mplayer
./configure –prefix=/usr
make
make install
cd ~
We will now build FFmpeg:
mkdir /usr/local/src/tmp
chmod 777 /usr/local/src/tmp
export TMPDIR=/usr/local/src/tmp
cd ffmpeg
./configure –prefix=/usr –enable-libmp3lame –enable-libvorbis –disable-mmx –enable-shared
make
make install
cd ~
Symlink some libraries if needed (ignore file exists errors):
ln -s /usr/local/lib/libavformat.so.50 /usr/lib/libavformat.so.50
ln -s /usr/local/lib/libavcodec.so.51 /usr/lib/libavcodec.so.51
ln -s /usr/local/lib/libavutil.so.49 /usr/lib/libavutil.so.49
ln -s /usr/local/lib/libmp3lame.so.0 /usr/lib/libmp3lame.so.0
ln -s /usr/local/lib/libavformat.so.51 /usr/lib/libavformat.so.51
Now build FFmpeg-PHP:
wget http://voxel.dl.sourceforge.net/sourceforge/ffmpeg-php/ffmpeg-php-0.5.3.1.tbz2
tar xvjpf ffmpeg-php-0.5.3.1.tbz2
cd ffmpeg-php-0.5.3.1
phpize
./configure –prefix=/usr
make
make install
cd ~
Now you need to copy the ffmpeg.so file that was created from it’s location (from the build) to /usr/local/lib/php/extensions/, it should look something like:
cp /usr/local/lib/php/extensions/no-debug-non-zts-????????????/ffmpeg.so /usr/local/lib/php/extensions/
Modify your php.ini. Try /etc/php.ini or /usr/lib/php.ini or /usr/local/Zend/etc/php.ini as they are common locations, you can do php -i | grep -i ini to find the proper location. Change the extension_dir value as seen below and add the extension as seen below:
extension_dir = “/usr/local/lib/php/extensions/”
extension=ffmpeg.so
Now save and restart apache and test php for ffmpeg on both apache via phpinfo() and from shell:
service httpd stop
killall -9 httpd
service httpd start
php -i | grep -i ffmpeg
Let me know via comments if you find some bugs or better ways to do things!

I want to find good pop music. Help me please.
hey, check this out. http://www.billboard.com/charts/hot-100