Under Which Open-Source License is libvpx Distributed?
This article provides a direct overview of the open-source licensing model governing the libvpx library. It explains the specific software license used for distribution, details the accompanying patent grant, and outlines the history and compatibility of this licensing structure for developers.
The libvpx License: 3-Clause BSD
The libvpx video codec library—which serves as the reference software implementation for the VP8 and VP9 video coding formats—is distributed under the 3-Clause BSD License (also known as the “Modified BSD License” or “New BSD License”).
This is a highly permissive open-source license that allows developers to freely use, modify, and distribute the software in both source and binary forms, provided that the original copyright notice, list of conditions, and disclaimer are retained.
The Accompanying Patent Grant
In addition to the 3-Clause BSD License, the WebM Project (backed by Google) distributes libvpx with an additional, explicit Patent License. This grant provides users with a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable patent license to use the patented technologies implemented within the library.
This patent grant is designed to protect users and developers from royalty claims, though it contains a termination clause: if a user files a patent infringement lawsuit against WebM or any other party claiming that the libvpx implementation infringes on their patents, their royalty-free patent rights for libvpx are immediately terminated.
Historical Context and GPL Compatibility
When Google first released libvpx in May 2010, the library was distributed under a custom BSD-like license that integrated the patent grant directly into the software license. This initial structure drew criticism from the Free Software Foundation (FSF) and various open-source communities, who argued that the integrated patent clause made the license incompatible with the GNU General Public License (GPL).
To resolve this issue, Google updated the licensing structure in June 2010. They separated the patent grant from the software license, officially adopting the standard 3-Clause BSD License for the code and keeping the patent grant as a separate document.
Following this change, both the Free Software Foundation and the Open Source Initiative (OSI) confirmed that the libvpx licensing model is fully compatible with the GPL, allowing it to be widely integrated into major open-source projects like FFmpeg, VLC, and various web browsers.