16 Simple Steps to Install FFmpeg on Ubuntu

Written by

Reviewed by

Last updated: July 10, 2023

Expert verified

SVG Image


To install FFmpeg on Ubuntu, you can try these methods:

  1. Update and upgrade your Ubuntu system: sudo apt update, sudo apt upgrade.
  2. Download FFmpeg source code, extract it, navigate to the extracted directory.
  3. Build and install FFmpeg: ./configure, make, sudo make install.
  4. Verify the installed version of FFmpeg: ffmpeg -version.

cc allows you to manipulate audio and video files effectively. This guide provides instructions for tasks like converting formats, resizing videos, and trimming. Installing FFmpeg offers benefits such as wide format support, powerful functionality for encoding and video editing, customizability, and the advantage of an active community for ongoing support and updates. However, it’s important to be aware of common errors, including installation dependencies, command execution, codec compatibility, and hardware limitations. 

Read the guide below for a step-by-step guide to install FFmpeg on Ubuntu, how to use it, benefits of installing it, and common errors with possible solutions.

FFmpeg is an open-source multimedia framework that allows you to manipulate audio and video files using a command-line interface. It serves as the backbone for various multimedia applications and is renowned for its flexibility and efficiency in handling multimedia formats.

With FFmpeg, you can easily perform tasks like video conversion, audio extraction, video editing, video streaming, and much more. Its comprehensive set of tools and libraries make it a popular choice among developers and media professionals. In this comprehensive guide, I will walk you through the step-by-step process to install FFmpeg on Ubuntu, how to use it, benefits of installing it, and common errors when installing and using FFmpeg.

How to Install FFmpeg on Ubuntu

To install FFmpeg on Ubuntu, you’ll need a compatible Ubuntu operating system, a modern CPU, a minimum of 2GB RAM (though more is recommended for better performance), sufficient storage space for files, the necessary dependencies such as libraries and codecs, and optional graphics hardware for certain features like hardware acceleration. Follow these steps:

  1. Open a Terminal by pressing Ctrl+Alt+T.
opening terminal 10
  1. Type the following command to update your package list:
<strong>sudo apt update</strong>
  1. This command updates the list of available packages on your Ubuntu system.
updating system package list 3
  1. Once the package list is updated, run the following command to upgrade your installed packages:
<strong>sudo apt upgrade</strong>
  1. If prompted, enter your password and confirm the upgrade process. This command ensures that your system’s installed packages are up to date with the latest security patches, bug fixes, and improvements.
upgrading system packages 1
  1. Download the FFmpeg source code from the official website. Visit the FFmpeg website (https://ffmpeg.org/download.html) and choose the latest stable release or a specific version you prefer.
downloading ffmpeg source file 1
  1. Extract the downloaded source code archive to a directory of your choice.
extracting downloaded file
  1. Navigate to the extracted directory using the Terminal.
navigating to directory 3
  1. Run the following commands in sequence to build and install FFmpeg on Ubuntu:
  1. The command will configure the build options.
configuring ffmpeg installation
  1. Now run the following command:
  1. The command will compile FFmpeg make file.
building ffmpeg installation
  1. In the end run the following command:
<strong>sudo make install</strong>
  1. This command installs ffmpeg on your system.
installing ffmpeg
  1. To check the installed version of FFmpeg, enter the following command:
<strong>ffmpeg -version</strong>
  1. The Terminal will display detailed information about the FFmpeg version and its configured options.
checking ffmpeg version

How to Use FFmpeg

FFmpeg is a powerful multimedia framework that allows you to manipulate and process audio and video files. I will walk you through the basics of using FFmpeg and provide you with some commonly used commands. By the end, you’ll have a solid foundation for utilizing FFmpeg’s capabilities in your multimedia projects.

1. Converting a Video Format

To convert a video file from one format to another, use the following command:

<strong><code>ffmpeg -i input.mp4 output.avi</code></strong>

Replace input.mp4 with the name of your input file and output.avi with the desired name of the output file. FFmpeg will automatically detect the input format based on the file extension, so you don’t need to specify it explicitly.

converting video format using ffmpeg

2. Resizing a Video

To resize a video to a specific width and height, use the following command:

<strong>ffmpeg -i input.mp4 -vf "scale=640:480" output.mp4</strong>

In this example, the video will be resized to a width of 640 pixels and a height of 480 pixels. Adjust the values as needed.

resizing height and width of video

3. Trimming a Video

To trim a video and extract a specific portion, specify the start and end times using the -ss (start time) and -to (end time) options. Here’s an example:

<strong>ffmpeg -i input.mp4 -ss 00:00:10 -to 00:00:30 -c copy output.mp4</strong>

This command extracts a 20-second segment from the input video, starting at 10 seconds and ending at 30 seconds. The -c copy option ensures that the video and audio streams are copied without re-encoding, preserving the original quality.

trimming video using ffmpeg

4 Benefits of Installing FFmpeg

FFmpeg is a versatile multimedia framework that offers numerous benefits for audio and video processing tasks. Installing FFmpeg on your system opens up a world of possibilities and empowers you to accomplish various multimedia-related goals. Here are four key benefits of installing FFmpeg:

  • 🎛️ Wide Format Support: One of the significant advantages of FFmpeg is its extensive format support. Whether it’s audio or video, FFmpeg can handle a vast array of formats, ensuring compatibility with almost any multimedia file you encounter. From popular formats like MP3, MP4, and AVI to more niche formats, FFmpeg has got you covered. This wide format support makes FFmpeg a reliable tool for seamless format conversion, transcoding, and multimedia manipulation.
  •  🚀 Powerful Functionality: FFmpeg provides a wealth of powerful functionality for multimedia processing. It offers a comprehensive set of tools and libraries that enable you to perform complex tasks with ease. Whether you need to encode or decode videos, extract audio from videos, apply filters and effects, or perform video editing operations, FFmpeg provides the necessary functionality to accomplish these tasks efficiently. Its feature-rich nature makes it a go-to solution for multimedia professionals and enthusiasts alike.
  •  🧩 Customizability: Another key benefit of installing FFmpeg is the level of customizability it offers. With FFmpeg, you have granular control over various parameters and options for audio and video processing. You can fine-tune encoding settings, adjust quality parameters, apply specific filters, and more. This level of customizability allows you to tailor the output to your exact requirements, ensuring optimal results for your multimedia projects.
  •  👥 Open-Source and Community-Driven: FFmpeg is an open-source project with a vibrant and dedicated community of developers and users. This community-driven nature ensures continuous development, bug fixes, and improvements to the framework. By installing FFmpeg, you become part of this active community, gaining access to support, resources, and valuable insights from experienced users worldwide. The collaborative nature of FFmpeg guarantees its longevity and the availability of future updates and enhancements.

4 Common Errors When Installing and Using FFmpeg

FFmpeg is a powerful multimedia framework, but like any software, it can encounter certain errors during installation and usage. Understanding these common errors can help troubleshoot issues and ensure a smooth experience with FFmpeg. Here are four common errors you may encounter:

  •  📥 Installation Dependency Issues: One common error when installing FFmpeg is encountering dependency issues. FFmpeg relies on various libraries and codecs, and if these dependencies are missing or outdated, the installation process may fail. It is essential to carefully review the system requirements and ensure that all necessary dependencies are installed before proceeding with the installation.
  •  ⚙️ Command Execution Errors: When using FFmpeg, you may encounter errors related to command execution. These errors can occur due to incorrect command syntax, missing options, or incompatible input files. It is crucial to double-check the command syntax, including the input and output file paths, flags, and parameters. Verifying that the input files are in the expected format and properly accessible will help prevent command execution errors.
  •  📦 Codec and Format Compatibility Issues: FFmpeg supports a wide range of codecs and formats, but errors can occur when working with incompatible codecs or unsupported formats. If you encounter issues while decoding or encoding a specific file, it is advisable to check the codec and format compatibility. Ensure that your FFmpeg installation includes the necessary codecs for the desired operation and consider converting the file to a compatible format if needed.
  •  💻 Hardware and System Limitations: Hardware and system limitations can also contribute to errors when using FFmpeg. Resource-intensive operations like video encoding or decoding may strain the CPU, memory, or disk resources. Insufficient system resources or outdated hardware can lead to errors such as dropped frames, slow processing, or system crashes. It is important to ensure that your hardware meets the recommended specifications and optimize your system settings to handle the workload imposed by FFmpeg.

In Conclusion

I have provided you with a comprehensive guide on how to install FFmpeg and highlighted its uses, common errors, and benefits. By following the step-by-step installation process, you can now harness the power of FFmpeg to convert video formats, extract audio, resize videos, trim segments, and add watermarks or overlays.

To further expand your knowledge in the multimedia domain, I recommend exploring these additional articles: Optimizing Video Compression Techniques for Web Delivery, Advanced Audio Processing with FFmpeg, and Building a Video Streaming Platform Using FFmpeg and Ubuntu Server. Continuing your journey by diving into these suggested articles will expand your knowledge and enable you to unlock even more possibilities in the exciting field of multimedia processing.

Frequently Asked Questions

Can I update FFmpeg to a newer version once it’s installed?

Yes, FFmpeg can be updated to a newer version. The process for updating FFmpeg depends on the initial installation method. If you installed FFmpeg using a package manager like apt, you can update it by running the package manager’s update command. This will fetch the latest version available in the repository and install it on your system. However, if you manually compiled FFmpeg from source, updating requires repeating the compilation process with the new source code. It involves downloading the latest version, configuring the build, compiling, and then installing the updated version of FFmpeg.

Are there GUI (Graphical User Interface) options available for FFmpeg?

While FFmpeg itself is a command-line tool, there are several GUI applications and interfaces built on top of FFmpeg. These GUI options provide a user-friendly graphical environment for executing FFmpeg commands. They offer a visual interface with menus, buttons, and input fields to simplify the process for users who prefer working with a graphical interface rather than the command line. These GUI applications allow users to select the desired FFmpeg functionality, input/output files, and adjust settings through intuitive controls, making it easier to perform tasks such as video conversion, audio extraction, and video editing.

Can FFmpeg handle video files with non-standard codecs?

Absolutely! FFmpeg is known for its wide-ranging codec support. It is designed to handle a vast array of video codecs, including both popular and less common ones. This comprehensive codec support enables FFmpeg to work seamlessly with various video file formats and codecs, making it a reliable tool for multimedia processing. Whether you encounter video files encoded with standard or non-standard codecs, FFmpeg can efficiently decode, encode, and manipulate them. Its flexibility in handling non-standard codecs ensures that you can process and work with a diverse range of video content, enabling you to meet your specific needs.



Ojash is a skilled Linux expert and tech writer with over a decade of experience. He has extensive knowledge of Linux's file system, command-line interface, and software installations. Ojash is also an expert in shell scripting and automation, with experience in Bash, Python, and Perl. He has published numerous articles on Linux in various online publications, making him a valuable resource for both seasoned Linux users and beginners. Ojash is also an active member of the Linux community and participates in Linux forums.



Akshat is a software engineer, product designer and the co-founder of Scrutify. He's an experienced Linux professional and the senior editor of this blog. He is also an open-source contributor to many projects on Github and has written several technical guides on Linux. Apart from that, he’s also actively sharing his ideas and tutorials on Medium and Attirer. As the editor of this blog, Akshat brings his wealth of knowledge and experience to provide readers with valuable insights and advice on a wide range of Linux-related topics.

Share this article
Shareable URL
Prev Post

3 Effective Methods to Reboot a Linux Server from the Command Line

Next Post

How to Use the Netcat Command in Linux [5 Best Uses]

Leave a Reply

Your email address will not be published. Required fields are marked *

Read next