How to Install HandBrake on Fedora Linux

Installing HandBrake on Fedora gives you an open-source video transcoder that converts nearly any video format to modern codecs like H.264, H.265, VP9, and AV1. You can compress 4K recordings for web streaming, convert DVD collections to MP4, batch process security camera footage, or prepare videos for mobile devices using hardware-accelerated encoding. HandBrake handles batch processing, device-specific presets, bitrate control, cropping, scaling, and subtitle integration through both GUI and command-line interfaces.

To install HandBrake on Fedora Linux, you have three methods: using RPM Fusion for system-integrated packages, Flatpak with Flathub for sandboxed installations, or building from source for the latest upstream features. Each method provides access to the complete HandBrake toolset with different update cadences and integration levels.

Choose Your HandBrake Installation Method

HandBrake is available through both RPM Fusion repositories and Flathub. RPM Fusion integrates directly with your system package manager for streamlined updates alongside your operating system, while Flatpak provides sandboxed installations with application-managed dependencies. Choose the method that aligns with your update preferences and system integration needs.

MethodChannelStabilityBest For
RPM FusionThird-party repositoryFedora-tested packagesUsers who prefer system-integrated packages with DNF-managed updates
FlatpakFlathubFaster upstream releasesUsers who want sandboxed applications with the latest upstream releases
Source BuildOfficial GitHubBleeding-edge commitsDevelopers and power users who need experimental features or custom compilation

RPM Fusion is recommended for most users because it integrates seamlessly with system updates and follows Fedora’s testing standards. Flatpak works well if you prefer application isolation or need features from the latest HandBrake release before they reach RPM Fusion. Building from source suits developers and users who need bleeding-edge features or custom compilation flags, but requires manual updates.

Method 1: Install HandBrake with RPM Fusion

Update Fedora Linux Before HandBrake Installation

Ensure your Fedora Linux system is up to date before proceeding with the installation. This helps avoid potential conflicts during installation and promotes good system maintenance.

To update your system, execute the following command in your terminal:

sudo dnf upgrade --refresh
Dependencies resolved.
Nothing to do.
Complete!

Import RPM Fusion Repositories For HandBrake

Utilizing the RPM Fusion third-party repositories is recommended for installing HandBrake on Fedora Linux. Follow the steps below to install the free and non-free RPM Fusion repositories.

Enable RPM Fusion Free Repository

The RPM Fusion Free Repository is required to install HandBrake. To enable it, run the following command in your terminal:

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
Installed:
  rpmfusion-free-release

Complete!

Enable RPM Fusion Non-free Repository (Optional)

The RPM Fusion Non-free Repository is optional and not required for HandBrake installation. However, if you want access to popular closed-source software in the future, you can enable it now. To do so, execute the following command:

sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Install HandBrake GUI Package

With the RPM Fusion Free repository enabled, install HandBrake using the DNF package manager. The HandBrake-gui package includes both the graphical interface and command-line tools:

sudo dnf install HandBrake-gui
Installed:
  HandBrake-gui

Complete!

Verify the installation by checking the HandBrake version:

HandBrakeCLI --version
HandBrake 1.8.2

Method 2: Install HandBrake via Flatpak and Flathub

Flatpak comes pre-installed on Fedora, making it a straightforward alternative to RPM Fusion. This section guides you through installing HandBrake via Flatpak and the Flathub repository.

Enable Flathub Repository For HandBrake Installation

First, you must enable the Flathub repository for Flatpak on your Fedora system. Flathub is a central repository for Flatpak applications and provides easy access to a wide range of software.

To enable Flathub, run the following command in your terminal:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Verify the Flathub repository was added successfully:

flatpak remotes
flathub	system

Install HandBrake via Flatpak Command

With the Flathub repository enabled, you can now install HandBrake using Flatpak. Execute the following command in your terminal:

flatpak install flathub fr.handbrake.ghb -y

Verify the installation was successful:

flatpak list | grep -i handbrake
HandBrake	fr.handbrake.ghb

HandBrake Flatpak Installation Troubleshoot

In case you encounter an error message like “Unable to load summary from remote flathub: Can’t fetch summary from disabled remote ‘flathub’,” you will need to enable the Flathub remote using the command below:

flatpak remote-modify --enable flathub

Verify the remote is now enabled:

flatpak remotes
flathub	system

After running this command, retry the HandBrake installation using the flatpak install earlier command.

Method 3: Build HandBrake from Source (Optional)

Building HandBrake from source provides access to the latest upstream commits, experimental features, and custom compilation flags unavailable in packaged versions. This method suits developers contributing to HandBrake or users requiring bleeding-edge codec support.

Install Build Dependencies

Install the complete development toolchain and HandBrake dependencies from official Fedora repositories and RPM Fusion:

sudo dnf install autoconf automake binutils bzip2-devel cmake fontconfig-devel freetype-devel fribidi-devel gcc-c++ git harfbuzz-devel jansson-devel lame-devel lbzip2 libass-devel libogg-devel libsamplerate-devel libtheora-devel libtool libvorbis-devel libxml2-devel libvpx-devel m4 make meson nasm ninja-build numactl-devel opus-devel patch pkgconf python speex-devel tar turbojpeg-devel xz-devel zlib-devel
Installed:
  autoconf automake binutils ... [70+ packages]

Complete!

Install x264 encoder support from RPM Fusion Free repository:

sudo dnf install x264-devel
Installed:
  x264-devel x264-libs

Complete!

For Intel Quick Sync Video hardware acceleration, install QSV development libraries:

sudo dnf install libva-devel libdrm-devel

To build the GTK graphical interface, install GUI dependencies:

sudo dnf install desktop-file-utils gstreamer1-libav gstreamer1-plugins-base-devel gstreamer1-plugins-good gtk4-devel

Clone HandBrake Source Repository

Clone the official HandBrake repository and check out the latest stable release tag:

git clone https://github.com/HandBrake/HandBrake.git ~/HandBrake
cd ~/HandBrake

List available release tags and check out the version you want to build:

git tag | grep -E '^[0-9]+\.[0-9]+\.[0-9]+$' | tail -5
1.7.1
1.7.2
1.7.3
1.8.0
1.8.2

Check out the latest stable version from the list above (1.8.2 at time of writing):

git checkout 1.8.2

Configure and Compile HandBrake

Run the configuration script to prepare the build environment. Add --disable-gtk if you only need the command-line version:

./configure --launch-jobs=$(nproc) --launch
Building dependencies...
Configuring HandBrake...
Building HandBrake [estimated 15-45 minutes]

The build process compiles all dependencies and HandBrake itself. Expect 15-45 minutes depending on CPU performance and whether you included the GUI.

Install Compiled HandBrake Binaries

After compilation completes successfully, install the binaries to system paths:

cd build
sudo make install

Verify the installation by checking the HandBrake version:

HandBrakeCLI --version
HandBrake 1.8.2

Launch the GUI from the applications menu or run ghb in the terminal. Source builds install to /usr/local/bin which takes precedence over RPM/Flatpak installations.

Building from source requires manual updates. Subscribe to the HandBrake releases feed and rebuild when new versions ship if you need the latest features. For automatic updates, use RPM Fusion or Flatpak installations instead.

Launch HandBrake

Now that you have successfully installed HandBrake, you can launch the application using either the Command Line Interface (CLI) or the Graphical User Interface (GUI), depending on your preference.

Launch HandBrake from Terminal

Launch the HandBrake GUI from the terminal with the following command:

ghb

For those who installed HandBrake using Flatpak, you will need to use the following command instead:

flatpak run fr.handbrake.ghb

Launch HandBrake from Applications Menu

While launching HandBrake from the terminal may be convenient for some, most users will find it more practical to use the GUI. To launch HandBrake through the graphical interface, follow the steps below:

  1. Click on Activities in the top-left corner of your desktop.
  2. Select Show Applications (represented by a grid icon) at the screen’s bottom.
  3. Locate and click on the HandBrake application icon to launch the program.

Update and Remove HandBrake

Update HandBrake

Although updates should appear in notifications, it’s always a good idea to check for updates manually using the terminal. To do so, use one of the following commands depending on your installation method:

Update via DNF

sudo dnf upgrade --refresh
Dependencies resolved.
Nothing to do.
Complete!

Update via Flatpak

flatpak update
Looking for updates...
Nothing to do.

Remove HandBrake

If you no longer need HandBrake, use the appropriate command below based on your installation method to remove the application:

Remove via DNF

sudo dnf remove HandBrake-gui

If you wish to disable RPM Fusion, use the following commands:

Disable RPM Fusion Free Repository
sudo dnf config-manager --set-disabled rpmfusion-free
Disable RPM Fusion Non-Free Repository
sudo dnf config-manager --set-disabled rpmfusion-nonfree

To verify if the repositories have been disabled, use the dnf repolist | grep command:

dnf repolist | grep rpmfusion
(no output if disabled successfully)

If the repositories are disabled, you won’t see any output. The command will display a list of the repositories if they are still present.

Remove via Flatpak

The --delete-data flag permanently removes HandBrake’s configuration files and user data. Omit this flag if you plan to reinstall HandBrake later and want to preserve your settings.

flatpak remove --delete-data fr.handbrake.ghb -y

Troubleshoot HandBrake Issues

Fix Video Preview Corruption

If HandBrake displays video previews with negative/inverted colors or infrared-style artifacts immediately after importing a file, this indicates a rendering issue in the RPM Fusion build. This problem affects only the preview window; encoded output quality remains unaffected.

Switch to the Flatpak version which uses different rendering libraries:

sudo dnf remove HandBrake-gui -y
flatpak install flathub fr.handbrake.ghb -y

Launch the Flatpak version and reimport your source video to verify the preview renders correctly.

Enable AMD Hardware Encoding

AMD hardware encoding on Linux requires proper VAAPI drivers and runtime configuration. The Flatpak version often provides better hardware detection than the RPM Fusion build due to bundled Mesa libraries.

When selecting H.265 VCN or other AMD hardware encoding presets, HandBrake may silently fall back to H.264 software encoding even though your AMD GPU supports hardware acceleration. Environment: Fedora with AMD Ryzen APU or discrete GPU (5700G, 6000-series, 7000-series).

Check if VCE/VCN options are enabled in HandBrake preferences:

  1. Open HandBrake and navigate to PreferencesVideo tab
  2. Verify “AMD VCE Encoder” is enabled (not grayed out)
  3. If grayed out, close HandBrake and install mesa-va-drivers:
sudo dnf install mesa-va-drivers libva-utils -y

Verify VAAPI support is detected:

vainfo
VAProfileH264Main              : VAEntrypointEncSlice
VAProfileHEVCMain              : VAEntrypointEncSlice

If hardware encoding remains unavailable after installing drivers, switch to the Flatpak build which includes updated Mesa libraries:

flatpak install flathub fr.handbrake.ghb -y

The Flatpak version ships with runtime-bundled graphics drivers that often enable AMD VCN support when the RPM build cannot detect hardware acceleration.

Check HandBrake Version Differences

RPM Fusion packages undergo Fedora-specific testing and may lag several months behind upstream releases. Check current versions:

HandBrakeCLI --version
flatpak remote-info flathub fr.handbrake.ghb | grep Version
HandBrake 1.6.1 (RPM Fusion)
Version: 1.8.2 (Flatpak)

If you need the latest codec support, hardware encoder updates, or bug fixes documented in HandBrake release notes, use the Flatpak installation method or build from source.

Missing Codec or Format Support

HandBrake depends on system multimedia libraries for input format support. If HandBrake fails to open specific video files, install the full multimedia codec suite from RPM Fusion repositories:

sudo dnf install gstreamer1-plugins-{bad-\*,good-\*,base} gstreamer1-plugin-openh264 gstreamer1-libav --exclude=gstreamer1-plugins-bad-free-devel

Install MP3 encoding support:

sudo dnf install lame\* --exclude=lame-devel

Install hardware-accelerated video decoding libraries for Intel and AMD systems:

sudo dnf install ffmpeg ffmpeg-libs libva libva-utils

Restart HandBrake after installing codecs and reimport the problematic file. If the issue persists, verify the source file plays correctly in VLC Media Player to rule out file corruption.

Conclusion

You now have HandBrake installed and verified on Fedora, ready to transcode videos with hardware acceleration and batch processing. Whether you chose RPM Fusion for system integration or Flatpak for containerized updates, you can compress large video files, convert between formats, and prepare media for streaming platforms like Plex Media Server. For advanced encoding workflows, pair HandBrake with FFmpeg for command-line automation or use VLC Media Player to preview your transcoded output before distribution.

Leave a Comment