How to install FFmpeg on Debian?
Current Debian (starting from stretch
and also in jessie-backports
) includes an ffmpeg
package:
sudo apt-get update
sudo apt-get install ffmpeg
However, this version of ffmpeg not always be up-to-date. If you want a more recent version, you have 3 options for installing ffmpeg. I'd suggest trying Options 1 or 2 before attempting Option 3.
Option 1: Use the static build
Download a static build from this website:
http://johnvansickle.com/ffmpeg/
Place the binaries in /usr/local/bin
and you're ready to go.
Option 2: Install ffmpeg from deb-multimedia.org
To install ffmpeg, edit /etc/apt/sources.list
and add the appropriate line for your distribution as listed here: http://www.deb-multimedia.org/
To add debian testing, either manually edit the file or run..
Example for debian testing only:
sudo echo deb http://www.deb-multimedia.org testing main non-free \
>>/etc/apt/sources.list
After adding the line for deb-multimedia, update the package, add the keyring, and install ffmpeg.
sudo apt-get update
sudo apt-get install deb-multimedia-keyring
sudo apt-get update
sudo apt-get install ffmpeg
You will have to install the keyring as an unauthenticated package using this method.
Option 3: Install ffmpeg from source
Alternatively, you can install from source. This is how to create a .deb file using checkinstall which can then be uninstalled again. Install these packages, yasm or nasm is needed for ffmpeg specifically, the others are generally useful for building packages:
sudo apt-get install yasm nasm \
build-essential automake autoconf \
libtool pkg-config libcurl4-openssl-dev \
intltool libxml2-dev libgtk2.0-dev \
libnotify-dev libglib2.0-dev libevent-dev \
checkinstall
Next, clone the ffmpeg package or download the latest snapshot:
git clone git://git.videolan.org/ffmpeg.git
or
wget https://www.ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
tar jxvf ffmpeg-snapshot.tar.bz2
Compile ffmpeg:
cd ffmpeg
./configure --prefix=/usr
time make -j 8
cat RELEASE
sudo checkinstall
Most of the checkinstall defaults are fine, but a version number is required. The current version is displayed by "cat RELEASE". This should create a deb file in the current directory.
Finally, install the deb file you made using dpkg:
sudo dpkg --install ffmpeg_*.deb
It is now available for Jessy as a backport: https://packages.debian.org/jessie-backports/ffmpeg
Add something like this to /etc/apt/sources.list
(with your preferred mirror):
deb http://ftp.uk.debian.org/debian jessie-backports main
Then
apt-get update
apt-get install ffmpeg
You can install it via apt-get. If the package is simply called "ffmpeg".
sudo apt-get update
sudo apt-get install ffmpeg
If that doesn't work, you can try searching for it:
sudo apt-cache search ffmpeg
Note that this will install the packaged version of FFmpeg, therefore it will always be a little outdated. In case you experience bugs, please compile FFmpeg from source.
FFMPEG uses git so you will need to use the terminal. See here for the current location
There's a pretty comprehensive walkthrough on doing it here. Have extracted pertinent code for the lazy (myself included).
One thing to note, you may get some errors when configuring that you are missing packages. I needed to use RPM to get a couple of them when running Fedora 14 but your mileage may vary on Debian.
Checkout FFmpeg:
git clone git://git.videolan.org/ffmpeg.git
cd ffmpeg
Configure [add your own preferences if you want]
./configure
Build and install
make
sudo make install