Install FFmpeg on Ubuntu 22.04: Easy Tool To Work with Media Files
This tutorial aims to guide you on How To Install FFmpeg on Ubuntu 22.04. FFmpeg is a powerful suite of libraries and programs that enables you to manipulate media files. You can use it for various tasks, including converting video files between different formats, re-encoding videos with different codecs, extracting image frames from videos, and much more. Learning how to Install FFmpeg on Ubuntu 22.04 opens a world of possibilities.
FFmpeg is a cross-platform tool, meaning it’s available on Windows, macOS, and various Linux distributions. Follow the steps outlined below to set up FFmpeg on your Ubuntu 22.04 system. This guide provides a clear and concise way to Install FFmpeg on Ubuntu 22.04.
Steps To Install and Use FFmpeg on Ubuntu 22.04
Before you begin installing FFmpeg on Ubuntu 22.04, ensure you are logged in to your server as a non-root user with sudo privileges. You can refer to our guide on Initial Server Setup with Ubuntu 22.04 for assistance.
Now, proceed with the following steps to initiate the FFmpeg installation on Ubuntu 22.04.
1. Install FFmpeg on Ubuntu 22.04
FFmpeg packages are readily available in the default Ubuntu repository.
First, update your local package index using the following command:
sudo apt update
Next, install FFmpeg using the following command:
sudo apt install ffmpeg -y
Once the installation is complete, verify it by checking the installed version:
ffmpeg -version
Your output should resemble the following:
**<mark>Output</mark>**
ffmpeg version 4.4.2-0ubuntu0.22.04.1 Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 11 (Ubuntu 11.2.0-19ubuntu1)
...
2. List Available FFMpeg encoder and decoder
Now, you can view all the available FFmpeg encoder and decoder types on your Ubuntu 22.04 system using the following commands:
ffmpeg -encoders

ffmpeg -decoders

At this point, you have successfully installed FFmpeg on your Ubuntu 22.04 system. You can now start utilizing its capabilities.
3. How To Use FFmpeg on Ubuntu 22.04?
In this section, we will demonstrate basic FFmpeg usage with some examples.
When converting audio and video files using FFmpeg on Ubuntu 22.04, you typically don’t need to explicitly specify the input and output formats.
The input file format is automatically detected, and the output format is inferred from the file extension.
For instance, to convert a video file from mp4 to webm, you can use the following command:
ffmpeg -i input.mp4 output.webm
Similarly, to convert an audio file from mp3 to ogg, you can use the following command:
ffmpeg -i input.mp3 output.ogg
You can also use the -c parameter to specify the codecs during file conversion.
For example, to convert a video file from mp4 to webm using the libvpx video codec and the libvorbis audio codec, you can use the following command:
ffmpeg -i input.mp4 -c:v libvpx -c:a libvorbis output.webm
To convert an audio file from mp3 to ogg encoded with the libopus codec, use the following command:
ffmpeg -i input.mp3 -c:a libopus output.ogg
For more comprehensive details and information about FFmpeg, you can consult the official FFmpeg documentation page.
Conclusion
FFmpeg is a versatile multimedia framework capable of handling a wide array of audio, video, and image processing tasks on Ubuntu 22.04. You’ve now learned how to Install and Use FFmpeg on Ubuntu 22.04.
We hope you enjoy using it. You might also be interested in these articles:
Install aaPanel on Ubuntu 22.04
Install Dropbox on Ubuntu 22.04
Fix Waiting for Cache Lock Error on Ubuntu
How to Install GlassFish on Ubuntu 22.04
Install MariaDB 10.11 Ubuntu 22.04
Setup Local DNS Resolver using Dnsmasq on Ubuntu 22.04
Running Visual Studio Code on Ubuntu Linux
How To Install Jenkins on Ubuntu 22.04
Alternative Solutions to Installing FFmpeg on Ubuntu 22.04
While the apt
package manager is a straightforward method, there are alternative approaches to installing FFmpeg on Ubuntu 22.04. These methods can be useful depending on your specific needs, such as requiring a more recent version than what’s available in the default repositories, or if you prefer a containerized solution. Here are two different ways:
1. Installing FFmpeg via Snap
Snap is a package management system developed by Canonical, the company behind Ubuntu. It provides a way to install software in self-contained packages that include all their dependencies. This can be beneficial for ensuring compatibility and avoiding conflicts with other system libraries.
To install FFmpeg using Snap, follow these steps:
-
Update Snap: First, ensure that your Snap system is up-to-date:
sudo snap refresh
-
Install FFmpeg: Then, install FFmpeg from the Snap Store:
sudo snap install ffmpeg
Note that the Snap version of FFmpeg might have slightly different usage characteristics due to its sandboxed environment. You may need to specify the full path to the FFmpeg executable when running commands, which is typically
/snap/bin/ffmpeg
. -
Verify Installation: Confirm the installation by checking the version:
/snap/bin/ffmpeg -version
Explanation:
Snap packages are containerized, which means they include all the libraries and dependencies required for the application to run. This isolates FFmpeg from the rest of your system, preventing potential conflicts with other software. The primary advantage of using Snap is its ease of installation and automatic updates. However, be aware that Snap packages can sometimes be larger than their apt
counterparts and might have a slightly slower startup time due to the containerization.
2. Building FFmpeg from Source
For users who need the absolute latest version of FFmpeg or require specific compilation flags and customizations, building from source is the most flexible option. This involves downloading the source code, configuring the build, and compiling FFmpeg manually.
-
Install Dependencies: First, you need to install the necessary build tools and libraries:
sudo apt update sudo apt install build-essential yasm libx264-dev libx265-dev libvpx-dev libfdk-aac-dev libmp3lame-dev libopus-dev
This command installs the essential build tools (
build-essential
), the Yasm assembler, and development libraries for various codecs like H.264, H.265, VP8/VP9, AAC, MP3, and Opus. -
Download the Source Code: Download the latest FFmpeg source code from the official website or using
git
:wget https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 tar -xjvf ffmpeg-snapshot.tar.bz2 cd ffmpeg
-
Configure the Build: Configure the build with your desired options. Here’s a basic example:
./configure --enable-gpl --enable-libx264 --enable-libx265 --enable-libvpx --enable-libfdk-aac --enable-libmp3lame --enable-libopus --enable-nonfree
--enable-gpl
: Enables GPL-licensed code.--enable-libx264
,--enable-libx265
,--enable-libvpx
,--enable-libfdk-aac
,--enable-libmp3lame
,--enable-libopus
: Enables support for specific codecs.--enable-nonfree
: Allows the use of non-free codecs (required forlibfdk-aac
).
Customize this command based on your specific requirements.
-
Compile and Install: Compile and install FFmpeg:
make -j$(nproc) sudo make install sudo ldconfig
make -j$(nproc)
: Compiles the source code, using multiple cores for faster compilation.sudo make install
: Installs FFmpeg to the system.sudo ldconfig
: Updates the dynamic linker cache.
-
Verify Installation: Verify the installation:
ffmpeg -version
Explanation:
Building from source offers the most control over the FFmpeg installation. You can choose which codecs to include, optimize the build for your specific hardware, and ensure that you’re using the very latest version of the software. However, this method is more complex and time-consuming than using apt
or snap
. It also requires you to manually manage dependencies and updates. The -j$(nproc)
flag tells make
to use as many processor cores as available, significantly speeding up the compilation process. After installation, running sudo ldconfig
updates the system’s dynamic linker cache so that FFmpeg’s libraries can be found.
Choosing the right installation method depends on your specific needs and technical expertise. The apt
method is the simplest and most common, while Snap offers a containerized solution, and building from source provides the greatest flexibility.