HandBrake 1.6 released, how to install it on linux
Introduction
HandBrake is an open source video encoder used to convert videos from a format to another. Although one can tweak the settings around to produce a video to his or her needs, default presets help to get the job done with just a few clicks without prior technical knowledge in video encoding.
Presets are categorized as below:
- General holds presets for general use.
- Web adapts the video for sharing through email and social media.
- Devices encodes the video for compatibility with Roku, Iphone, Playstation, Xbox, Chromecast, Android and Amazon Fire.
- Matroska encodes the video to various schemes for the MKV container.
- Hardware.
- Production encodes the video for professional video editing, it produces very large files when compared with the initial source.
It has support for three output containers:
- MPEG-4
- Matroska
- WebM
Although it is shipped with a graphical user interface, the command line version exists for the advanced user.
To launch it from the console type:
HandBrakeCLI --help
HandBrake 1.6 release
According to the release note posted on the HandBrake's official github page, a few new presets and various video encoders have been added to the 1.6 version.
The following presets are added:
- AV1 General
- AV1 QSV 4K (Hardware)
- MKV (Matroska)
- General 4K HEVC
Encoders listed below are new:
- AV1
- NVENC HEVC 10-bit
- VCN HEVC 10-bit
- VP9 10-bit
The x264 encoder is now equipped with new levels, respectively H.264 levels 6, 6.1, and 6.2. VP8 presets have been removed and new translations are added.
vp8 presets in HandBrake 1.5 |
- Bulgarian (Български)
- Finnish (Suomi)
- Georgian (ქართული)
There is also a plan to remove the Theora encoder in a future release.
Install HandBrake 1.6 on linux
Debian, Ubuntu, Linux Mint
sudo apt-get update
sudo apt-get install autoconf automake autopoint appstream build-essential cmake git libass-dev libbz2-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libjansson-dev liblzma-dev libmp3lame-dev libnuma-dev libogg-dev libopus-dev libsamplerate-dev libspeex-dev libtheora-dev libtool libtool-bin libturbojpeg0-dev libvorbis-dev libx264-dev libxml2-dev libvpx-dev m4 make meson nasm ninja-build patch pkg-config tar zlib1g-dev clang
Fedora, CentOS
Fedora
To update the system type:
sudo dnf update
To install the development tools and libraries type:
sudo dnf groupinstall "Development Tools" "C Development Tools and Libraries"
sudo dnf install 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 python speex-devel tar turbojpeg-devel xz-devel zlib-devel gtk3-devel gettext-devel
To install RPM Fusion Free repositories and additional sources type:
sudo dnf localinstall --nogpgcheck https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(cat /etc/system-release | awk '{ print $3}').noarch.rpm
sudo dnf install x264-devel
CentOS
To update the system type:
sudo dnf update
To install development tools type:
sudo dnf groupinstall "Development Tools"
sudo dnf install cmake fribidi-devel git jansson-devel libxml2-devel numactl-devel python3 xz-devel
To enable CentOS PowerTools repository and install additional dependencies type:
sudo dnf config-manager --set-enabled PowerTools
sudo dnf install lame-devel libogg-devel libsamplerate-devel libtheora-devel libvorbis-devel libvpx-devel meson nasm ninja-build opus-devel speex-devel turbojpeg-devel
To install the EPEL repository and related additional dependencies type:
sudo dnf install epel-release
sudo dnf install libass-devel
To install the RPM Fusion repository and additional dependencies type:
sudo dnf localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
sudo dnf install x264-devel
To install graphical interface dependencies type:
sudo dnf install dbus-glib-devel gstreamer1-devel gstreamer1-libav gstreamer1-plugins-base-devel intltool libgudev1-devel libnotify-devel webkit2gtk3-devel
Download and compile the source code
To download the source code for HandBrake 1.6 type:
wget https://github.com/HandBrake/HandBrake/releases/download/1.6.1/HandBrake-1.6.1-source.tar.bz2
To decompress and extract type:
bunzip2 HandBrake-1.6.1-source.tar.bz2
tar xvf HandBrake-1.6.1-source.tar
To configure type:
cd HandBrake-1.6.1
./configure --launch-jobs=$(nproc) --launch
Then run make:
cd build
make
To install HandBrake 1.6 type:
sudo make --directory=. install
To uninstall HandBrake 1.6 type:
sudo make --directory=build uninstall
HandBrake 1.6 in Fedora 37 |
HandBrake 1.6 on Linux Mint Vanessa |
Encode videos with the default presets
After some time of experimenting with various presets, the General Very Fast 2160p60 4k AV1 fits well my personal needs.
All I had to do is select this preset, load the source video and click the Start button at the top.
Encoding with the General Very Fast 2160p60 4K AV1 default preset |
I managed to reduce the original file size from 338,8 megabytes to 286 megabytes and still maintaining the quality. The only negative aspect during the encoding, was the duration. It took HandBrake close to one hour.
The following can be used as a checkup when dubious about selecting a default preset to encode videos according to your specific needs.
Final thoughts
Through this article I shared instructions on how to install HandBrake 1.6 from source on various linux platforms such as Ubuntu, Linux Mint, Debian, Fedora and CentOS. I also shared information on the latest changes in HandBrake.
If you experience errors or problems while trying to install HandBrake 1.6 on your linux distribution, feel free to share your case in the comments section. I will try my best to help.
Leave a Comment