FFMPEG Installation compile build
35613 ワード
https://kattafix.wordpress.com/2013/06/03/ffmpeg-installation/
FFMPEG Installation
FFMPEG Installation
JUNE 3, 2013
ARVIN1844
INSTALLATIONS
LEAVE A COMMENT
Manual Installation of FFMPEG
The following Guide will show you exactly how to install the following packages on a CentOS system:
FFmpeg
FFmpeg-PHP
Mplayer + Mencoder
flv2tool
LAME MP3 Encoder
AMR (for 3gp file conversions)
Libogg
Libvorbis
Setup the directory to use mkdir /usr/local/src
cd /usr/local/src
Download the necessary files. wget http://www.mplayerhq.hu/MPlayer/releases/codecs/essential-20061022.tar.bz2
wget http://rubyforge.org/frs/download.php/9225/flvtool2_1.0.5_rc6.tgz
wget http://downloads.sourceforge.net/lame/lame-3.97.tar.gz
wget http://en.sourceforge.jp/frs/g_redir.php?m=jaist&f=%2Fffmpeg-php%2Fffmpeg-php%2F0.5.1%2Fffmpeg-php-0.5.1.tbz2
wget http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.1.2.tar.gz
wget http://ftp.penguin.cz/pub/users/utx/amr/amrnb-6.1.0.4.tar.bz2
wget http://ftp.penguin.cz/pub/users/utx/amr/amrwb-6.0.0.1.tar.bz2
Extract all the files tar zxvf flvtool2_1.0.5_rc6.tgz
tar zxvf lame-3.97.tar.gz
tar zxvf libogg-1.1.3.tar.gz
tar zxvf libvorbis-1.1.2.tar.gz
tar zxvf flvtool2_1.0.5_rc6.tgz
tar jxvf essential-20061022.tar.bz2
tar jxvf ffmpeg-php-0.5.1.tbz2
tar jxvf amrwb-6.0.0.1.tar.bz2
tar jxvf amrnb-6.1.0.4.tar.bz2
Create a folder to hold the codecs mkdir /usr/local/lib/codecs/
Make sure we have all the necessary libraries as well as SVN + Ruby installed yum -y install gcc gmake make libcpp libgcc libstdc++ gcc4 gcc4-c++ gcc4-gfortran subversion ruby ncurses-devel
Install subversion via rpm. http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/apr-0.9.12-1.i386.rpm
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/apr-util-0.9.12-1.i386.rpm
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/apr-devel-0.9.12-1.i386.rpm
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/apr-util-devel-0.9.12-1.i386.rpm
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/subversion-1.4.5-1.i386.rpm
Get ffmpeg and mplayer via SVN svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
cd /usr/local/src/mplayer
svn update
cd /usr/local/src
Copy Codes for Mplayer mv /usr/local/src/essential-20061022/* /usr/local/lib/codecs/
chmod -R 755 /usr/local/lib/codecs/
Create a temp dir with 777 permissions (needed to install ffmpeg) mkdir /usr/local/src/tmp
chmod 777 /usr/local/src/tmp
export TMPDIR=/usr/local/src/tmp
Installing LAME cd /usr/local/src/lame-3.97
./configure
make && make install
cd /usr/local/src/
Installing LIBOGG: cd /usr/local/src/libogg-1.1.3
./configure && make && make install
cd /usr/local/src/
Installing LIBVORBIS: cd /usr/local/src/libvorbis-1.1.2
./configure && make && make install
cd /usr/local/src/
Installing FLVTOOL2: cd /usr/local/src/flvtool2_1.0.5_rc6/
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install
cd /usr/local/src/
cd /usr/local/src/mplayer
./configure && make && make install
cd /usr/local/src/
Installing AMR (for 3GP Conversion) cd /usr/local/src/amrnb-6.1.0.4
./configure
make && make install
cd /usr/local/src/amrwb-6.0.0.1
./configure
make && make install
Installing FFMPEG: cd /usr/local/src/ffmpeg/
./configure --enable-libmp3lame --enable-libogg --enable-libamr-nb --enable-libamr-wb --enable-libvorbis --disable-mmx --enable-shared
make
make install
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
ln -s /usr/local/lib/libavformat.so.52 /usr/lib/
ln -s /usr/local/lib/libamrnb.so.2 /usr/lib/
ln -s /usr/local/lib/libamrwb.so.2 /usr/lib/
ln -s /usr/local/lib/libvorbisenc.so.2 /usr/lib/
ln -s /usr/local/lib/libvorbis.so.0 /usr/lib/
ffmpeg -version
cd /usr/local/src/
Installing FFMPEG-PHP: cd /usr/local/src/ffmpeg-php-0.5.0/
phpize
./configure
make
make install
Note: Make sure this is the correct php.ini for the box!! echo 'extension=ffmpeg.so' >> /usr/local/lib/php.ini
Restart and you’re done service httpd restart
cd /usr/local/src
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
cd ffmpeg/
./configure --enable-shared
make
make install
wget http://superb-west.dl.sourceforge.net/sourceforge/ffmpeg-php/ffmpeg-php-0.5.0.tbz2
bunzip2 ffmpeg-php-0.5.0.tbz2
tar xvf ffmpeg-php-0.5.0.tar
cd ffmpeg-php-0.5.0
phpize
./configure make
make install
Add the following line to php.ini extension=/usr/local/lib/php/extensions/no-debug-non-zts-20020429/ffmpeg.so
service httpd restart
Testing
Direct your browser to view a phpinfo() php file. Scroll down and you should see the ffmpeg extension.
[edit]Errors faced
1. If in the ./configure step following error occurs: Enable to create and execute files in/tmp. Set the TMPDIR environment variable to another directory and make sure that/tmp is not mounted noexec. Sol: mkdir ffmpeg/tmp
chmod 777 ffmpeg/tmp
vi configure
change TMPDIR from/tmp to tmp tmp dir we make should be inside the directory ffmpeg/
2. ffmpeg: symbol lookup error: ffmpeg: undefined symbol: avcodec_alloc_context2
Sol:- Add/usr/local/lib to etc/ld.so.conf and then run ldconfig
3. make[1]: *** [stream_dvd.o] Error 1 make[1]: Leaving directory `/usr/local/src/mplayer/stream’ make: *** [stream/stream.a] Error 2
Sol: – cd /us/local/src
wget http://www3.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc2.tar.bz2
tar -jxf MPlayer-1.0rc2.tar.bz2
cd MPlayer-1.0rc2
./configure
make
make install
4. Installing Subversion Using yum on CentOS 5 (Error: Missing Dependency: perl(URI) >= 1.17 is needed by package subversion) yum install subversion
–> Finished Dependency Resolution
Error: Missing Dependency: perl(URI) >= 1.17 is needed by package subversion
Sol:- check the yum.conf to see if there is line like this. If yes, commnet it and instgall subversion using yum. exclude=apache* bind-chroot courier* dovecot* exim* httpd* mod_ssl* mysql* nsd* perl* php* proftpd* pure-ftpd* ruby* spamassassin* squirrelmail*
wget ftp://rpmfind.net/linux/fedora/releases/8/Everything/ppc64/os/Packages/perl-URI-1.35-3.1.noarch.rpm
rpm -ivh perl-URI-1.35-3.1.noarch.rpm
If 64 bit server use below. wget ftp://rpmfind.net/linux/fedora/releases/8/Everything/x86_64/os/Packages/perl-URI-1.35-3.1.noarch.rpm
5. checking for ffmpeg headers… configure: error: ffmpeg headers not found. Make sure you’ve built ffmpeg as shared libs using the –enable-shared option
Sol: strace -f -o /root/file ./configure
check in/root/file for error: 13062 stat64("/usr/local/include/ffmpeg/avcodec.h", (No such file or directory)
do below ln -s /usr/local/include/libavcodec/ /usr/local/include/ffmpeg
then run ./configure again
6./usr/local/src/ffmpeg-php-0.5.0/ffmpeg-php.c:26:22: error: avformat.h: No such file or directory/usr/local/src/ffmpeg-php-0.5.0/ffmpeg-php.c: In function ‘zm_startup_ffmpeg’:/usr/local/src/ffmpeg-php-0.5.0/ffmpeg-php.c:118: error: for each function it appears in.) make: *** [ffmpeg-php.lo] Error 1 Sol: cp /usr/include/libavformat/* /usr/local/include/php/
7. checking for ffmpeg headers… configure: error: ffmpeg headers not found. Make sure you’ve built ffmpeg as shared libs using the –enable-shared option ffmpeg -version
The configs should show up. After confirming that you have –enable-shared there, then try the following:
The exact error happens when you phpize the php-ffmpeg file. The error goes something like this: checking for gawk… gawk
checking for ffmpeg support… yes, shared
checking for ffmpeg headers… configure: error: ffmeg headers not found. Make sure you’ve bult ffmpeg as shared libs using the –enable-shared option
It means basically that the shared files that are requried aren’t in their correct locations. php-ffmpeg is checking/usr/local/include/ffmpeg location and yours are in the/usr/local/include directory. Silly I know, but at least its easily fixed. Run the following commands which copies the files to the new location: cp /usr/local/include/libavcodec/* /usr/local/include/ffmpeg
cp /usr/local/include/libavutil/* /usr/local/include/ffmpeg
cp /usr/local/include/libavformat/* /usr/local/include/ffmpeg
cp /usr/local/include/libavdevice/* /usr/local/include/ffmpeg
cp /usr/local/include/libswscale/* /usr/local/include/ffmpeg
If you don’t have the libswscale directory don’t loose sleep over it, just ignore it!
8. php -v showing php: symbol lookup error:/usr/local/lib/php/extensions/no-debug-non-zts-20060613/ffmpeg.so: undefined symbol:av_free_static
Sol: > For reference, I just went into the ffmpeg-php.c file and commented > out the one instance of av_free_static (its a method call) and rebuilt > and everything worked! commenting "av_free_static()" in ffmpeg-php.c worked for me also
9. While installing FFMPEG on a server when we run “make” after “./configure” it gives following error: math-errno -c -o libavdevice/v4l.o libavdevice/v4l.c
In file included from libavdevice/v4l.c:32:
/usr/include/linux/videodev.h:56: error: syntax error before "ulong"
/usr/include/linux/videodev.h:72: error: syntax error before '}' token
libavdevice/v4l.c:77: warning: unused variable `tuner'
make: *** [libavdevice/v4l.o] Error 1
Sol:-
a. First do below. If not working try the next solution. vi /usr/include/linux/videodev.h
Search for the line below ulong rangelow, rangehigh; /* Tuner range */
Change: unsigned long rangelow, rangehigh; /* Tuner range */
b. This problem can be fixed by disabling v41 and v42 for FFMPEG. This can be done when we run “./configure” for FFMPEG ./configure --enable-libmp3lame --enable-libvorbis --disable-mmx --enable-shared --disable-demuxer=v4l --disable-demuxer=v4l2
10. php -v shows the following error ffmpeg.so: undefined symbol: avcodec_build
Sol:-
edit the file ffmpeg-php.c in the source and compile again avcodec_build (), CONST_CS | CONST_PERSISTENT);
to LIBAVCODEC_BUILD, CONST_CS | CONST_PERSISTENT);
11. /root/paresh/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:448: error: ‘PIX_FMT_RGBA32’ undeclared (first use in this function)
/root/paresh/ffmpeg-php-0.5.3.1/ffmpeg_frame.c: In function ‘zif_ffmpeg_frame’:
/root/paresh/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:533: error: ‘PIX_FMT_RGBA32’ undeclared (first use in this function)
make: *** [ffmpeg_frame.lo] Error 1
Sol:- vi ffmpeg_frame.c
%s/PIX_FMT_RGBA32/PIX_FMT_RGBA/gwget http://sourceforge.net/projects/ffmpeg-php/files/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2/download
/usr/bin/phpize
./configure
make
make install
add extrension in the Zend section extension=ffmpeg.so
12. /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libavcodec.a(libx264.o): In function `X264_init':
/opt/libavfilter/ffmpeg/libavcodec/libx264.c:305: undefined reference to `x264_encoder_open_110'
collect2: ld returned 1 exit status
make: *** [x264] Error 1
OR libavcodec.so: undefined reference to `x264_encoder_open_115'
Sol:- yum install git
cd /usr/src
git clone git://git.videolan.org/x264.git
cd x264
./configure --enable-shared --prefix=/usr
make
make install
If arch is x86_64 do the following and run ffmpeg make command unlink /usr/lib64/libx264.so
ln -s /usr/lib/libx264.so /usr/lib64/libx264.so
13. make error in ffmpeg-php /usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c:46:21: error: swscale.h: No such file or directory
/usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c: In function 'zm_info_ffmpeg':
/usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c:164: error: 'LIBSWSCALE_IDENT' undeclared (first use in this function)
/usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c:164: error: (Each undeclared identifier is reported only once
/usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c:164: error: for each function it appears in.)
make: *** [ffmpeg-php.lo] Error 1
Sol:- cp /usr/local/include/ffmpeg/libswscale/swscale.h /usr/local/include/ffmpeg/
Run “make” command again 14. ffmpeg configure error ERROR: libtheora not found
Sol:- wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.bz2
tar -jxf libtheora-1.1.1.tar.bz2
cd libtheora-1.1.1
./configure --prefix=/usr
make
make install
mkdir /usr/local/src
cd /usr/local/src
wget http://www.mplayerhq.hu/MPlayer/releases/codecs/essential-20061022.tar.bz2
wget http://rubyforge.org/frs/download.php/9225/flvtool2_1.0.5_rc6.tgz
wget http://downloads.sourceforge.net/lame/lame-3.97.tar.gz
wget http://en.sourceforge.jp/frs/g_redir.php?m=jaist&f=%2Fffmpeg-php%2Fffmpeg-php%2F0.5.1%2Fffmpeg-php-0.5.1.tbz2
wget http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.1.2.tar.gz
wget http://ftp.penguin.cz/pub/users/utx/amr/amrnb-6.1.0.4.tar.bz2
wget http://ftp.penguin.cz/pub/users/utx/amr/amrwb-6.0.0.1.tar.bz2
tar zxvf flvtool2_1.0.5_rc6.tgz
tar zxvf lame-3.97.tar.gz
tar zxvf libogg-1.1.3.tar.gz
tar zxvf libvorbis-1.1.2.tar.gz
tar zxvf flvtool2_1.0.5_rc6.tgz
tar jxvf essential-20061022.tar.bz2
tar jxvf ffmpeg-php-0.5.1.tbz2
tar jxvf amrwb-6.0.0.1.tar.bz2
tar jxvf amrnb-6.1.0.4.tar.bz2
mkdir /usr/local/lib/codecs/
yum -y install gcc gmake make libcpp libgcc libstdc++ gcc4 gcc4-c++ gcc4-gfortran subversion ruby ncurses-devel
http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/apr-0.9.12-1.i386.rpm
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/apr-util-0.9.12-1.i386.rpm
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/apr-devel-0.9.12-1.i386.rpm
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/apr-util-devel-0.9.12-1.i386.rpm
wget http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/subversion-1.4.5-1.i386.rpm
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
cd /usr/local/src/mplayer
svn update
cd /usr/local/src
mv /usr/local/src/essential-20061022/* /usr/local/lib/codecs/
chmod -R 755 /usr/local/lib/codecs/
mkdir /usr/local/src/tmp
chmod 777 /usr/local/src/tmp
export TMPDIR=/usr/local/src/tmp
cd /usr/local/src/lame-3.97
./configure
make && make install
cd /usr/local/src/
cd /usr/local/src/libogg-1.1.3
./configure && make && make install
cd /usr/local/src/
cd /usr/local/src/libvorbis-1.1.2
./configure && make && make install
cd /usr/local/src/
cd /usr/local/src/flvtool2_1.0.5_rc6/
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install
cd /usr/local/src/
cd /usr/local/src/mplayer
./configure && make && make install
cd /usr/local/src/
cd /usr/local/src/amrnb-6.1.0.4
./configure
make && make install
cd /usr/local/src/amrwb-6.0.0.1
./configure
make && make install
cd /usr/local/src/ffmpeg/
./configure --enable-libmp3lame --enable-libogg --enable-libamr-nb --enable-libamr-wb --enable-libvorbis --disable-mmx --enable-shared
make
make install
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
ln -s /usr/local/lib/libavformat.so.52 /usr/lib/
ln -s /usr/local/lib/libamrnb.so.2 /usr/lib/
ln -s /usr/local/lib/libamrwb.so.2 /usr/lib/
ln -s /usr/local/lib/libvorbisenc.so.2 /usr/lib/
ln -s /usr/local/lib/libvorbis.so.0 /usr/lib/
ffmpeg -version
cd /usr/local/src/
cd /usr/local/src/ffmpeg-php-0.5.0/
phpize
./configure
make
make install
echo 'extension=ffmpeg.so' >> /usr/local/lib/php.ini
service httpd restart
cd /usr/local/src
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
cd ffmpeg/
./configure --enable-shared
make
make install
wget http://superb-west.dl.sourceforge.net/sourceforge/ffmpeg-php/ffmpeg-php-0.5.0.tbz2
bunzip2 ffmpeg-php-0.5.0.tbz2
tar xvf ffmpeg-php-0.5.0.tar
cd ffmpeg-php-0.5.0
phpize
make
make install
extension=/usr/local/lib/php/extensions/no-debug-non-zts-20020429/ffmpeg.so
service httpd restart
mkdir ffmpeg/tmp
chmod 777 ffmpeg/tmp
vi configure
ldconfig
cd /us/local/src
wget http://www3.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc2.tar.bz2
tar -jxf MPlayer-1.0rc2.tar.bz2
cd MPlayer-1.0rc2
./configure
make
make install
yum install subversion
–> Finished Dependency Resolution
Error: Missing Dependency: perl(URI) >= 1.17 is needed by package subversion
exclude=apache* bind-chroot courier* dovecot* exim* httpd* mod_ssl* mysql* nsd* perl* php* proftpd* pure-ftpd* ruby* spamassassin* squirrelmail*
wget ftp://rpmfind.net/linux/fedora/releases/8/Everything/ppc64/os/Packages/perl-URI-1.35-3.1.noarch.rpm
rpm -ivh perl-URI-1.35-3.1.noarch.rpm
wget ftp://rpmfind.net/linux/fedora/releases/8/Everything/x86_64/os/Packages/perl-URI-1.35-3.1.noarch.rpm
strace -f -o /root/file ./configure
13062 stat64("/usr/local/include/ffmpeg/avcodec.h", (No such file or directory)
ln -s /usr/local/include/libavcodec/ /usr/local/include/ffmpeg
cp /usr/include/libavformat/* /usr/local/include/php/
ffmpeg -version
checking for gawk… gawk
checking for ffmpeg support… yes, shared
checking for ffmpeg headers… configure: error: ffmeg headers not found. Make sure you’ve bult ffmpeg as shared libs using the –enable-shared option
cp /usr/local/include/libavcodec/* /usr/local/include/ffmpeg
cp /usr/local/include/libavutil/* /usr/local/include/ffmpeg
cp /usr/local/include/libavformat/* /usr/local/include/ffmpeg
cp /usr/local/include/libavdevice/* /usr/local/include/ffmpeg
cp /usr/local/include/libswscale/* /usr/local/include/ffmpeg
commenting "av_free_static()" in ffmpeg-php.c worked for me also
math-errno -c -o libavdevice/v4l.o libavdevice/v4l.c
In file included from libavdevice/v4l.c:32:
/usr/include/linux/videodev.h:56: error: syntax error before "ulong"
/usr/include/linux/videodev.h:72: error: syntax error before '}' token
libavdevice/v4l.c:77: warning: unused variable `tuner'
make: *** [libavdevice/v4l.o] Error 1
vi /usr/include/linux/videodev.h
ulong rangelow, rangehigh; /* Tuner range */
unsigned long rangelow, rangehigh; /* Tuner range */
./configure --enable-libmp3lame --enable-libvorbis --disable-mmx --enable-shared --disable-demuxer=v4l --disable-demuxer=v4l2
ffmpeg.so: undefined symbol: avcodec_build
avcodec_build (), CONST_CS | CONST_PERSISTENT);
LIBAVCODEC_BUILD, CONST_CS | CONST_PERSISTENT);
/root/paresh/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:448: error: ‘PIX_FMT_RGBA32’ undeclared (first use in this function)
/root/paresh/ffmpeg-php-0.5.3.1/ffmpeg_frame.c: In function ‘zif_ffmpeg_frame’:
/root/paresh/ffmpeg-php-0.5.3.1/ffmpeg_frame.c:533: error: ‘PIX_FMT_RGBA32’ undeclared (first use in this function)
make: *** [ffmpeg_frame.lo] Error 1
vi ffmpeg_frame.c
%s/PIX_FMT_RGBA32/PIX_FMT_RGBA/gwget http://sourceforge.net/projects/ffmpeg-php/files/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2/download
/usr/bin/phpize
./configure
make
make install
extension=ffmpeg.so
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libavcodec.a(libx264.o): In function `X264_init':
/opt/libavfilter/ffmpeg/libavcodec/libx264.c:305: undefined reference to `x264_encoder_open_110'
collect2: ld returned 1 exit status
make: *** [x264] Error 1
libavcodec.so: undefined reference to `x264_encoder_open_115'
yum install git
cd /usr/src
git clone git://git.videolan.org/x264.git
cd x264
./configure --enable-shared --prefix=/usr
make
make install
unlink /usr/lib64/libx264.so
ln -s /usr/lib/libx264.so /usr/lib64/libx264.so
/usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c:46:21: error: swscale.h: No such file or directory
/usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c: In function 'zm_info_ffmpeg':
/usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c:164: error: 'LIBSWSCALE_IDENT' undeclared (first use in this function)
/usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c:164: error: (Each undeclared identifier is reported only once
/usr/src/ffmpeg-php-0.6.1/ffmpeg-php.c:164: error: for each function it appears in.)
make: *** [ffmpeg-php.lo] Error 1
cp /usr/local/include/ffmpeg/libswscale/swscale.h /usr/local/include/ffmpeg/
ERROR: libtheora not found
wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.bz2
tar -jxf libtheora-1.1.1.tar.bz2
cd libtheora-1.1.1
./configure --prefix=/usr
make
make install