FFmpeg is a free and open-source collection of tools for handling multimedia files. It contains a set of shared audio and video libraries such as libavcodec, libavformat, and libavutil. With FFmpeg, you can convert between various video and audio formats, set sample rates, capture streaming audio/video, and resize videos.
This tutorial walks you through installing FFmpeg on CentOS 7.
Prerequisites
To be able to add new repositories and install packages on your CentOS system, you must be logged in as a user with sudo privileges
Installing FFmpeg on CentOS 7
FFmpeg is not available in CentOS 7 core repositories. You can choose to build the FFmpeg tools from the source or to install it via yum
from a third-party Yum repository.
We’ll go with the second option and install from the RPM Fusion repository:
-
The RPM Fusion repository depends on the EPEL software repository. If the EPEL is not enabled on your system, enable it by typing:
sudo yum install epel-release
-
Next, enable the RPM Fusion repository by installing the rpm package :
sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
-
Once the repository is enabled, install FFmpeg:
sudo yum install ffmpeg ffmpeg-devel
-
Verify the FFmpeg installation by checking its version:
ffmpeg -version
At the time of writing this article, the current version of FFmpeg available in the RPM Fusion repository is
3.4.7
:ffmpeg version 3.4.7 Copyright (c) 2000-2019 the FFmpeg developers built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-39) ...
That’s it. FFmpeg has been installed on your CentOS machine and you can start using it.
FFmpeg Examples
ffmpeg
utility.
Basic conversion
When converting audio and video files using ffmpeg
, you do not have to specify the input and output formats. The input file format is auto-detected, and the output format is guessed from the file extension.
-
Convert a video file from mp4 to webm:
ffmpeg -i input.mp4 output.webm
-
Convert an audio file from mp3 to ogg:
ffmpeg -i input.mp3 output.ogg
Specifying codecs
You can specify the codecs you want to use with the -c
option. The codec can be the name of any supported decoder/encoder or a special value copy
that simply copies the input stream.
-
Convert a video file from mp4 to webm using the
libvpx
video codec andlibvorbis
audio codec:ffmpeg -i input.mp4 -c:v libvpx -c:a libvorbis output.webm
-
Convert an audio file from mp3 to ogg encoded with the
libopus
codec.ffmpeg -i input.mp3 -c:a libopus output.ogg
Conclusion
We have shown you how to install FFmpeg on CentOS 7 machines. You can now visit the official FFmpeg Documentation page and learn how to use FFmpeg to convert and your video and audio files.