Video Coding Formats Supported by libvpx
This article provides a direct overview of the specific video coding
formats implemented by the open-source library libvpx. It
identifies the core video compression standards supported by the
library, outlines their key features, and explains their relevance in
digital video streaming.
The libvpx software library is a free, open-source codec
library published by the WebM Project and funded by Google. It serves as
the official reference implementation for two major video coding
formats: VP8 and VP9.
VP8 Video Coding Format
VP8 was originally developed by On2 Technologies and released in 2008. Following Google’s acquisition of On2 in 2010, the format was open-sourced and made royalty-free. * Target: VP8 was designed to compete directly with the widely used H.264 (MPEG-4 AVC) standard. * Performance: It offers high-quality video compression suitable for web delivery and real-time communications. * Common Use Cases: VP8 is a core codec used in the WebRTC standard for real-time video conferencing and is commonly packaged inside the WebM container format for web browsers.
VP9 Video Coding Format
VP9 is the successor to VP8, officially released by Google in 2013. It is also an open and royalty-free format. * Target: VP9 was developed to compete with the High Efficiency Video Coding (HEVC/H.265) standard. * Performance: It provides a significant compression improvement over VP8, reducing the required bandwidth by approximately 50% while maintaining the same visual quality. It supports resolutions up to 4K and higher, as well as High Dynamic Range (HDR) color profiles. * Common Use Cases: VP9 is heavily utilized by major streaming platforms, such as YouTube, to deliver high-definition and 4K video content efficiently to web browsers and mobile devices.
Note on AV1
While the Alliance for Open Media (which includes Google) developed
AV1 as the successor to VP9, AV1 is not implemented by
libvpx. Instead, AV1’s reference implementation is housed
in a separate library called libaom. libvpx
remains dedicated strictly to the maintenance and encoding/decoding of
the VP8 and VP9 formats.