Updated: 9 October 2026 · Applies to: Fedora 44 (tested, dnf5, FFmpeg 8.1.3) and Fedora 43 with RPM Fusion

To install FFmpeg on Fedora, run sudo dnf install ffmpeg. That gives you ffmpeg-free, Fedora's own build with a limited set of codecs (no x264 or x265 encoders, no HEVC decoder). For the full FFmpeg, enable the RPM Fusion repositories and swap the package:

sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf swap ffmpeg-free ffmpeg --allowerasing

Both builds are the same FFmpeg version (8.1.3 on Fedora 44 at the time of writing); only the codec list differs.

ffmpeg-free or full FFmpeg: which one do you need?

We tested both builds on Fedora 44. ffmpeg-free handled:

  • Audio: MP3 (libmp3lame), AAC (aac and libfdk_aac), Opus and Vorbis.
  • Video: VP9 (libvpx-vp9), AV1 (libaom-av1, libsvtav1, librav1e) and H.264 through Cisco's OpenH264 (libopenh264, both encoding and decoding).
  • Copying streams without re-encoding (-c copy), cutting and remuxing.

What it could not do:

  • Encode with libx264 or libx265 (the usual choices for MP4 video).
  • Decode H.265/HEVC at all.
  • Decode every H.264 file: a normal 4:2:0 High profile video worked through OpenH264, a High 4:4:4 file failed.

If you only convert audio, make WebM or AV1, or copy streams, ffmpeg-free is enough. For MP4 encoding with x264 or x265, or for HEVC input such as phone videos, install the full build.

Option 1: install ffmpeg-free (no extra repository)

  1. Install it. With dnf5, the name ffmpeg resolves to ffmpeg-free while RPM Fusion is not enabled:
    sudo dnf install ffmpeg
  2. Check the result:
    $ rpm -q ffmpeg-free
    ffmpeg-free-8.1.3-1.fc44.x86_64
    $ ffmpeg -version | head -1
    ffmpeg version 8.1.3 Copyright (c) 2000-2026 the FFmpeg developers

Option 2: install the full FFmpeg from RPM Fusion

  1. Enable the RPM Fusion free and nonfree repositories (the command from RPM Fusion's own configuration page; $(rpm -E %fedora) fills in your Fedora version):
    sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
    Check that the repositories are there:
    $ dnf repolist
    repo id                   repo name
    fedora                    Fedora 44 - x86_64
    fedora-cisco-openh264     Fedora 44 openh264 (From Cisco) - x86_64
    rpmfusion-free            RPM Fusion for Fedora 44 - Free
    rpmfusion-free-updates    RPM Fusion for Fedora 44 - Free - Updates
    rpmfusion-nonfree         RPM Fusion for Fedora 44 - Nonfree
    rpmfusion-nonfree-updates RPM Fusion for Fedora 44 - Nonfree - Updates
    updates                   Fedora 44 - x86_64 - Updates
  2. Replace ffmpeg-free with the full build:
    sudo dnf swap ffmpeg-free ffmpeg --allowerasing
    dnf removes ffmpeg-free and its -free libraries and installs ffmpeg, ffmpeg-libs, x264-libs and x265-libs from RPM Fusion (about 15 MiB to download in our test). The first time, it asks you to import the RPM Fusion key:
    Importing OpenPGP key 0xD651FF2E:
     UserID     : "RPM Fusion free repository for Fedora (2020) <rpmfusion-buildsys@lists.rpmfusion.org>"
     Fingerprint: E9A491A3DE247814E7E067EAE06F8ECDD651FF2E
     From       : file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-44
    Answer y. The same command works when ffmpeg-free was never installed: dnf prints "No packages to remove for argument: ffmpeg-free" and installs ffmpeg.
  3. Check that the x264 and x265 encoders and the HEVC decoder are there:
    $ ffmpeg -hide_banner -encoders | grep -E "libx264|libx265"
     V....D libx264              libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (codec h264)
     V....D libx264rgb           libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 RGB (codec h264)
     V....D libx265              libx265 H.265 / HEVC (codec hevc)
    $ ffmpeg -hide_banner -decoders | grep -E " (h264|hevc) "
     VFS..D h264                 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
     VFS..D hevc                 HEVC (High Efficiency Video Coding)
  4. Make a short test video to confirm encoding works:
    ffmpeg -f lavfi -i testsrc=duration=3:size=1280x720:rate=25 -c:v libx264 -pix_fmt yuv420p test.mp4

Desktop playback and hardware acceleration

On a server or VPS you only need the ffmpeg package. On Fedora Workstation, RPM Fusion also recommends its multimedia group so that GStreamer apps can play the same formats:

sudo dnf install @multimedia --setopt="install_weak_deps=False" --exclude=PackageKit-gstreamer-plugin

According to RPM Fusion, the VA-API drivers for GPU decoding and encoding are intel-media-driver (recent Intel GPUs, libva-intel-driver for older ones), mesa-va-drivers-freeworld for AMD and libva-nvidia-driver for NVIDIA.

Common errors

  • Unknown encoder 'libx264' (the full message ends with Error opening output files: Encoder not found): you are running ffmpeg-free. Enable RPM Fusion and run the swap command above.
  • Decoding requested, but no decoder found for: hevc: ffmpeg-free has no H.265 decoder. Install the full build.
  • [dec:libopenh264] Decode error rate 1 exceeds maximum: OpenH264 could not decode that H.264 profile. The full build uses FFmpeg's own h264 decoder instead.
  • Conflicts between ffmpeg-free libraries and ffmpeg: this is why the swap needs --allowerasing; letting dnf remove the -free libraries is expected.
  • libopenh264 missing: the Cisco repository may be disabled. RPM Fusion gives this command for Fedora 41 and later: sudo dnf config-manager setopt fedora-cisco-openh264.enabled=1
  • Going back to ffmpeg-free: sudo dnf swap ffmpeg ffmpeg-free --allowerasing (tested).
  • After a Fedora upgrade: nothing to redo. The RPM Fusion repository files use $releasever, so they follow the new release.

For AlmaLinux, Rocky Linux, Ubuntu and Debian, see how to install FFmpeg on Linux; on a cPanel server, see how to install FFmpeg on a cPanel server. To check which version a repository offers before installing, see how to search packages and list repositories with dnf.

Official documentation: RPM Fusion configuration, RPM Fusion multimedia howto and FFmpeg documentation.

Related services

KVM VPS hosting

NVMe SSD and full root access, with Free Basic Managed Support.

Unmanaged dedicated servers

full root access and free IPMI KVM, with Free Basic Managed Support.

Linux server management

hardening, patching, monitoring and automation for Ubuntu, Debian, RHEL and AlmaLinux.

Was this answer helpful?

Still stuck? Open a ticket