main-fdk-build branch contains a fork of HandBrake that uses the “stripped” version of the FDK library from Fedora (a third-party modified version of the Fraunhofer FDK AAC Codec library for Android) that has patent-encumbered AAC features removed. The
main-fdk-build branch also removes all HE-AAC options from the user interface and HandBrake code, so that the HandBrake build with the stripped FDK library can only be used to encode low-complexity AAC, which should avoid any AAC features currently covered by unexpired patents.
Limitations and Changes
- Presently, upstream changes are merged into the
main-fdk-buildbranches each evening by a CI script.
- Binary builds for Linux are not built nightly; when they are run manually, they make Flatpak builds.
- Builds are not signed.
More on FDK
The licensing situation of the FDK library is complicated. The source of the library is open and has a copyleft license for copyright purposes, but Fraunhofer grants no patent license.
Copyright: The FFmpeg developers have deemed the original FDK library to be GPL incompatible. In deference to that determination, HandBrake's developers no longer distribute binaries of HandBrake with FDK compiled in. The position of both the FFmpeg and HandBrake projects is that binaries with FDK built in cannot be distributed by reason of the GPL incompatibility, even though end-users may compile FDK for their own use. The incremental difficulty of compiling HandBrake with FDK is trivial — adding the
--enable-fdk-aac flag is the developers' recommended solution.
Patents: A separate issue concerns the patents necessary to use the FDK library, because the original FDK library supports simple AAC (initially specified in MPEG-2) as well as features of AAC introduced in MPEG-4, and HE-AAC. MPEG-4 and HE-AAC are still covered by patents today. A stripped version of the FDK library exists and has been submitted for inclusion in Fedora; that version of the library pares down FDK to the features in MPEG-2 where the last remaining patents in the United States have already expired.
Above, builds without FDK are public. Builds of the fork with the stripped version of the FDK library are also public. No builds with the unmodified FDK library (supporting HE-AAC) are available.