![]()
FFmpeg is a complete, cross-platform solution to record, convert and stream audio and video. It includes libavcodec – the leading audio/video codec library.
Preliminary Note:
I am using a CentOS 5.2 x86_64 server with the RPM Forge YUM repo enabled in this tutorial:
* server1.example.co.za (IP 10.0.0.100)
I am also using rebuilt FFmpeg RPMS from DAG with AMR enabled (i.e. –enable-amr_nb –enable-amr_wb).
ffmpeg-libpostproc.x86_64.rpm (509)ffmpeg.x86_64.rpm (406)
ffmpeg-devel.x86_64.rpm (375)
Installing the RPMS
# wget http://www.how2centos.com/wp-content/plugins/download-monitor/download.php?id=1
# wget http://www.how2centos.com/wp-content/plugins/download-monitor/download.php?id=2
# wget http://www.how2centos.com/wp-content/plugins/download-monitor/download.php?id=3
# yum install ffmpeg-0.4.9-0.9.20070530.x86_64.rpm \
ffmpeg-devel-0.4.9-0.9.20070530.x86_64.rpm \
ffmpeg-libpostproc-0.4.9-0.9.20070530.x86_64.rpm
# ffmpeg –help
FFmpeg version SVN-rUNKNOWN, Copyright (c) 2000-2007 Fabrice Bellard, et al.
configuration: –prefix=/usr –libdir=/usr/lib64 –mandir=/usr/share/man
–incdir=/usr/include/ffmpeg –extra-cflags=-fPIC –enable-libmp3lame
–enable-libogg –enable-libvorbis –enable-libogg –enable-libtheora
–enable-libfaad –enable-libfaac –enable-libgsm –enable-xvid
–enable-x264 –enable-liba52 –enable-liba52bin –enable-pp –enable-shared
–enable-pthreads –enable-gpl –enable-libamr-nb –enable-libamr-wb –disable-strip
libavutil version: 49.4.0
libavcodec version: 51.40.4
libavformat version: 51.12.1
Optional: Installing FFmpeg-php
# wget http://garr.dl.sourceforge.net/sourceforge/ffmpeg-php/ffmpeg-php-0.6.0.tbz2
# tar -xjf ffmpeg-php-0.6.0.tbz2
# cd ffmpeg-php-0.6.0
# phpize
# ./configure
# make
# make install
# echo “extension=ffmpeg.so” > /etc/php.d/ffmpeg.ini
Related posts:







Thanks George, that one really helped me set it up on my dedicated server. Well done, this was a useful tutorial.
what about for 32bit CentOS 5 with DirectAdmin.
would you know install for that one.
I presume you’re referring to DirectAdmin web control panel in which case I don’t have an install guide. .
A quick look around the net indicated that a base 34bit CentOS server installation is all that is needed to run the “setup” script. Unfortunately there is a cost involved with DirectAdmin, so I am unable to test it out.
[...] through installing PHP 5.2.9 (Supports the Kohana Framework) with APC, Memcached, ImageMagick and FFmpeg with AMR(3gp support) on CentOS and [...]
Im trying your install method on a 64bit Centos5.4.
This part is not clear to me.
all in one line?
yum install ffmpeg-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-devel-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-libpostproc-0.4.9-0.9.20070530.x86_64.rpm
or one part at a time?
yum install ffmpeg-0.4.9-0.9.20070530.x86_64.rpm
yum install ffmpeg-devel-0.4.9-0.9.20070530.x86_64.rpm
yum install ffmpeg-libpostproc-0.4.9-0.9.20070530.x86_64.rpm
thanks for the other articles, very useful, please do apply more for Centos5.x.
and 1 other question, what about Flvtool2, can I just add:
http://dag.wieers.com/rpm/packages/flvtool2/flv...
to the line above to install, but where?
like this?
# yum install ffmpeg-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-devel-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-libpostproc-0.4.9-0.9.20070530.x86_64.rpm flvtool2-1.0.6-1.el5.rf.noarch.rpm
What you need to do is download the ffmpeg rpm's from the links above. So # wget http://www.how2centos.com/wp-content/plugins/do... then once you've downloaded all three you can run the yum install section.
Please take note that I rebuilt those from the .spec files supplied from the DAG repository. So if you're planning on upgrading in the future please make sure that the new packages are enabled with AMR support.
If you have the RPMForge repository enabled you will be able to run a # yum install flvtool2
However if you download the rpm to the same directory as the custom ones I have supplied you'll be able to run # yum install ffmpeg-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-devel-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-libpostproc-0.4.9-0.9.20070530.x86_64.rpm flvtool2-1.0.6-1.el5.rf.noarch.rpm
thanks, installed first time no error. Tested on a site, and the only problem I came accross in a log file was the conversion of the video have an error.
/usr/bin/ffmpeg: symbol lookup error: /usr/bin/ffmpeg: undefined symbol: frame_hook_process, video not converting.
Ive looked around and most threads mention possible lib conflict with another ffmpeg version, But this is the only version I installed. Is it possible, when using yum it upgraded your copy. Thats what it looks like. But have you seen this before : /usr/bin/ffmpeg: symbol lookup error: /usr/bin/ffmpeg: undefined symbol: frame_hook_process and a possible work around.
FFmpeg version 0.5, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: –prefix=/usr –libdir=/usr/lib64 –shlibdir=/usr/lib64 –mandir=/usr/share/man –incdir=/usr/include –extra-cflags=-fPIC –enable-libamr-nb –enable-libamr-wb –enable-libdirac –enable-libfaac –enable-libfaad –enable-libmp3lame –enable-libtheora –enable-libx264 –enable-gpl –enable-nonfree –enable-postproc –enable-pthreads –enable-shared –enable-swscale –enable-x11grab
libavutil 49.15. 0 / 49.15. 0
libavcodec 52.20. 0 / 52.72. 0
libavformat 52.31. 0 / 52.67. 0
libavdevice 52. 1. 0 / 52. 2. 0
libswscale 0. 7. 1 / 0.10. 0
libpostproc 51. 2. 0 / 51. 2. 0
built on Nov 6 2009 19:11:04, gcc: 4.1.2 20080704 (Red Hat 4.1.2-46)
Never see that error before. Try removing the RPM's # yum remove xyz and install them via # rpm -ivh ffmpeg-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-devel-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-libpostproc-0.4.9-0.9.20070530.x86_64.rpm flvtool2-1.0.6-1.el5.rf.noarch.rpm
root@server [~/download]# yum install ffmpeg-0.4.9-0.9.20070530.x86_64.rpm
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* addons: centos.mirror.iweb.ca
* base: centos.mirror.iweb.ca
* extras: centos.mirror.iweb.ca
* updates: centos.mirror.iweb.ca
addons | 951 B 00:00
base | 2.1 kB 00:00
extras | 2.1 kB 00:00
updates | 1.9 kB 00:00
Excluding Packages in global exclude list
Finished
Setting up Install Process
Examining ffmpeg-0.4.9-0.9.20070530.x86_64.rpm: ffmpeg-0.4.9-0.9.20070530.x86_64
Marking ffmpeg-0.4.9-0.9.20070530.x86_64.rpm to be installed
Resolving Dependencies
–> Running transaction check
—> Package ffmpeg.x86_64 0:0.4.9-0.9.20070530 set to be updated
–> Processing Dependency: a52dec for package: ffmpeg
–> Processing Dependency: libtheora.so.0(libtheora.so.1.0)(64bit) for package: ffmpeg
–> Processing Dependency: libImlib2.so.1()(64bit) for package: ffmpeg
–> Processing Dependency: libSDL-1.2.so.0()(64bit) for package: ffmpeg
–> Processing Dependency: libamrnb.so.3()(64bit) for package: ffmpeg
–> Processing Dependency: libamrwb.so.3()(64bit) for package: ffmpeg
–> Processing Dependency: libfaac.so.0()(64bit) for package: ffmpeg
–> Processing Dependency: libfaad.so.0()(64bit) for package: ffmpeg
–> Processing Dependency: libgsm.so.1()(64bit) for package: ffmpeg
–> Processing Dependency: libmp3lame.so.0()(64bit) for package: ffmpeg
–> Processing Dependency: libtheora.so.0()(64bit) for package: ffmpeg
–> Processing Dependency: libx264.so.55()(64bit) for package: ffmpeg
–> Processing Dependency: libxvidcore.so.4()(64bit) for package: ffmpeg
–> Running transaction check
—> Package SDL.x86_64 0:1.2.10-8.el5 set to be updated
—> Package ffmpeg.x86_64 0:0.4.9-0.9.20070530 set to be updated
–> Processing Dependency: a52dec for package: ffmpeg
–> Processing Dependency: libImlib2.so.1()(64bit) for package: ffmpeg
–> Processing Dependency: libamrnb.so.3()(64bit) for package: ffmpeg
–> Processing Dependency: libamrwb.so.3()(64bit) for package: ffmpeg
–> Processing Dependency: libfaac.so.0()(64bit) for package: ffmpeg
–> Processing Dependency: libfaad.so.0()(64bit) for package: ffmpeg
–> Processing Dependency: libgsm.so.1()(64bit) for package: ffmpeg
–> Processing Dependency: libmp3lame.so.0()(64bit) for package: ffmpeg
–> Processing Dependency: libx264.so.55()(64bit) for package: ffmpeg
–> Processing Dependency: libxvidcore.so.4()(64bit) for package: ffmpeg
—> Package libtheora.x86_64 0:1.0alpha7-1 set to be updated
–> Finished Dependency Resolution
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: libxvidcore.so.4()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: libgsm.so.1()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: libfaac.so.0()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: libfaad.so.0()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: libamrnb.so.3()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: libamrwb.so.3()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: libx264.so.55()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: libmp3lame.so.0()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: a52dec is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
ffmpeg-0.4.9-0.9.20070530.x86_64 from /ffmpeg-0.4.9-0.9.20070530.x86_64 has depsolving problems
–> Missing Dependency: libImlib2.so.1()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: libgsm.so.1()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: libmp3lame.so.0()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: libamrwb.so.3()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: libx264.so.55()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: libamrnb.so.3()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: libfaac.so.0()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: a52dec is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: libxvidcore.so.4()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: libfaad.so.0()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
Error: Missing Dependency: libImlib2.so.1()(64bit) is needed by package ffmpeg-0.4.9-0.9.20070530.x86_64 (/ffmpeg-0.4.9-0.9.20070530.x86_64)
You could try using –skip-broken to work around the problem
You could try running: package-cleanup –problems
package-cleanup –dupes
rpm -Va –nofiles –nodigest
The program package-cleanup is found in the yum-utils package.
You need to do # yum install ffmpeg-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-devel-0.4.9-0.9.20070530.x86_64.rpm ffmpeg-libpostproc-0.4.9-0.9.20070530.x86_64.rpm