Ad blocker interference detected!
Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers
Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.
This howto is no longer being maintained. You might want to visit: HOWTO: Install and use the latest FFmpeg for Ubuntu users: Debian users will find it extremely useful as well.
This short howto shows how to compile the latest ffmpeg from source on debian based distros such as ubuntu and of course ... debian.
It may be particularly useful to those who have discovered an ffmpeg whose vhook's are broken and who can not use -quick-menu in the todisc/todiscgui program.
It has only been tested on ubuntu feisty and debian etch, but the principles will apply on any such debian based distro. Debian sid/unstable users can change the 'etch' in the sources.list line to 'sid'.
Note: Ubuntu users may find this howto outdated - for example libfaad-dev is no longer a package name. See notes under the second section (2.). Someone who uses Ubuntu please contribute any help here, but please keep to the topic which is installing *svn* ffmpeg.
The article will show you how to:
1. install the dependancies needed for compiling.
2. download the latest source code using subversion (svn)
3. compile and install ffmpeg
4. double check your PATH and library paths are correct.
Commands preceeded by 'sudo' need root privileges: the sudo is added for the benefit of Ubuntu users. Others like Debian users will probably not use sudo but will become root before running them.
All commands in bold are run in a terminal.
Any commands NOT preceeded by 'sudo' are NOT run as the root user !
edit sources list and update Edit
1. edit /etc/apt/sources.list and add the following lines:
deb http://www.debian-multimedia.org etch main
deb-src http://www.debian-multimedia.org etch main
2. save your changes and run in a terminal:
sudo apt-get update
install dependencies needed for compiling Edit
sudo apt-get build-dep ffmpeg
sudo apt-get install subversion
For Ubuntu users for whom the apt-get build-dep does not work, I suggest you do a "apt-cache showsrc ffmpeg" and install the deps manually, getting the missing packages from another repository. ( for example libfaad-dev is apparently no longer in Ubuntu. )
download the ffmpeg source Edit
First, decide where you are going to do your compiling. Let's say you decide to put it in a directory called 'svn' in your home directory:
Then use the subversion's 'svn' command to get the source. It will create a directory in $HOME/svn called 'ffmpeg'.
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
cd to the new directory it creates
configure ffmpeg Edit
The following command will configure the source code for you:
./configure --enable-libmp3lame --enable-libtheora --enable-libx264 --enable-libgsm --enable-postproc --enable-libxvid --enable-libfaac --enable-pthreads --enable-libvorbis --enable-libfaad --enable-gpl --enable-x11grab --enable-nonfree
compile ffmpeg Edit
Run the 'make' program to compile the beast.
install ffmpeg Edit
This command will install ffmpeg in /usr/local. This is the easiest place to install as /usr/local should already be in your PATH ahead of /usr/bin where debian/ubuntu install programs such as ffmpeg. This means when you type ffmpeg or it is called from a script, the ffmpeg in /usr/local/bin will be used.
sudo make install
check the library path Edit
The text file /etc/ld.so.conf contains a compiled list of possible libraries for installed programs found in the library path. Make sure /usr/local/lib is in /etc/ld.so.conf and ahead of /usr/lib. Edit /etc/ld.so.conf using sudo or as root, and add /usr/local/lib to the top of the file if it is not already there. Update the library cache by running:
sudo ldconfig -v
The '-v' is added to show the output (verbose).
test your new ffmpeg Edit
This doesn't do anything, but should show you the flags you configured and compiled ffmpeg with, as well as versions and dates for the source and its other libraries.
Now try testing it on a video file !