HOME

TheInfoList



OR:

libvpx is a
free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
video codec
library A library is a collection of materials, books or media that are accessible for use and not just for display purposes. A library provides physical (hard copies) or digital access (soft copies) materials, and may be a physical location or a vir ...
from
Google Google LLC () is an American multinational technology company focusing on search engine technology, online advertising, cloud computing, computer software, quantum computing, e-commerce, artificial intelligence, and consumer electronics. I ...
and the
Alliance for Open Media The Alliance for Open Media (AOMedia) is a non-profit industry consortium that develops open, royalty-free technology for multimedia delivery headquartered in Wakefield, Massachusetts. It uses the ideas and principles of open web standard devel ...
(AOMedia). It serves as the reference software implementation for the
VP8 VP8 is an open and royalty-free video compression format released by On2 Technologies in 2008. Initially released as a proprietary successor to On2's previous VP7 format, VP8 was released as an open and royalty-free format in May 2010 after Goo ...
and
VP9 VP9 is an open and royalty-free video coding format developed by Google. VP9 is the successor to VP8 and competes mainly with MPEG's High Efficiency Video Coding (HEVC/H.265). At first, VP9 was mainly used on Google's video platform YouTube. ...
video coding formats, and for AV1 a special
fork In cutlery or kitchenware, a fork (from la, furca 'pitchfork') is a utensil, now usually made of metal, whose long handle terminates in a head that branches into several narrow and often slightly curved tines with which one can spear foods ei ...
named libaom that was stripped of backwards compatibility. As free software it is published also in
source code In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the w ...
under the terms of the revised
BSD license BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD lice ...
. It ships with the
commandline A command-line interpreter or command-line processor uses a command-line interface (CLI) to receive commands from a user in the form of lines of text. This provides a means of setting parameters for the environment, invoking executables and pro ...
tools vpxenc/aomenc and vpxdec/aomdec that build on its functionality.


History

libvpx originates from the video codec company
On2 Technologies On2 Technologies, formerly known as The Duck Corporation, was a small publicly traded company (on the American Stock Exchange), founded in New York City in 1992 and headquartered in Clifton Park, New York, that designed video codec technology. I ...
that sold its first software codec in mid-90s. libvpx was released as free software by Google on May 19, 2010, after the acquisition of On2 Technologies for an estimate of over 120 million US dollars. In June 2010, Google amended the VP8 codec software license to the
3-clause BSD license BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD lice ...
after some contention over whether the original license was actually
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
. Google was criticised for dumping untidy code with bad documentation for the initial release of libvpx and developing behind closed doors without involving the community in the process. The development process was opened after the release of VP9. Preliminary support for VP9 was added to libvpx on June 17, 2013. It was officially introduced with the release of version 1.3 on December 2, which also supports
lossless compression Lossless compression is a class of data compression that allows the original data to be perfectly reconstructed from the compressed data with no loss of information. Lossless compression is possible because most real-world data exhibits statistic ...
. In April 2015, Google released a significant update to its libvpx library, with version 1.4.0 adding support for encoding VP9 with 10-bit and 12-bit bit depth, 4:2:2 and 4:4:4
chroma subsampling Chroma subsampling is the practice of encoding images by implementing less resolution for chroma information than for luma information, taking advantage of the human visual system's lower acuity for color differences than for luminance. It is u ...
(VP9 profiles 1, 2, and 3), and VP9 multithreaded decoding/encoding. Versions 1.5 (November 2015, 1.6 (July 2016), 1.7 (January 2018), and 1.8 (February 2019) delivered significant speedups, both for encoding and decoding.


Features

libvpx implements single-pass and two-pass encoding modes, with either bitrate or quality target settings. libvpx offers an asymmetric codec – with encoding taking much longer than decoding – and options for configuring encoding expense independently from decoding complexity. A lookahead of up to 25 frames can be configured, which improves compression efficiency but introduces latency and thereby hurts real-time performance. libvpx includes a mode where the maximum CPU resources possible will be used while still keeping the encoding speed almost exactly equivalent to the playback speed (realtime), keeping the quality as high as possible without lag. libvpx supports Rec. 601, Rec. 709,
Rec. 2020 ITU-R Recommendation BT.2020, more commonly known by the abbreviations Rec. 2020 or BT.2020, defines various aspects of ultra-high-definition television (UHDTV) with standard dynamic range (SDR) and wide color gamut (WCG), including pictur ...
, SMPTE-170, SMPTE-240, and
sRGB sRGB is a standard RGB (red, green, blue) color space that HP and Microsoft created cooperatively in 1996 to use on monitors, printers, and the World Wide Web. It was subsequently standardized by the International Electrotechnical Commission ( ...
color space A color space is a specific organization of colors. In combination with color profiling supported by various physical devices, it supports reproducible representations of colorwhether such representation entails an analog or a digital represen ...
s.


Performance

At high resolutions (e.g., UHD) VP9 encoded by libvpx for VOD applications provides a significant improvement over
H.264 Advanced Video Coding (AVC), also referred to as H.264 or MPEG-4 Part 10, is a video compression standard based on block-oriented, motion-compensated coding. It is by far the most commonly used format for the recording, compression, and distri ...
encoded by
x264 x264 is a free and open-source software library and a command-line utility developed by VideoLAN for encoding video streams into the H.264/MPEG-4 AVC video coding format. It is released under the terms of the GNU General Public License. Histo ...
.
HEVC High Efficiency Video Coding (HEVC), also known as H.265 and MPEG-H Part 2, is a video compression standard designed as part of the MPEG-H project as a successor to the widely used Advanced Video Coding (AVC, H.264, or MPEG-4 Part 10). In compar ...
encoded by
x265 x265 is a software codec for creating digital video streams in the High Efficiency Video Coding (HEVC/H.265) video compression format developed by the Joint Collaborative Team on Video Coding (JCT-VC). It is available as a command-line app or ...
may achieve even better quality, but the royalty-free nature of VP9 makes it a compelling option for delivering high resolution video on supported platforms. Decoding performance is relatively slow, partially in order to keep the code base easier to maintain. Compared to the initial release of libvpx, ffvp8 from the FFmpeg project improved performance by 22 to over 66%. In 2016, alternative VP9 decoders still achieved 25–50% faster decoding.


Technology

libvpx is written in C and
assembly language In computer programming, assembly language (or assembler language, or symbolic machine code), often referred to simply as Assembly and commonly abbreviated as ASM or asm, is any low-level programming language with a very strong correspondence b ...
. It does not have complete
SIMD Single instruction, multiple data (SIMD) is a type of parallel processing in Flynn's taxonomy. SIMD can be internal (part of the hardware design) and it can be directly accessible through an instruction set architecture (ISA), but it should ...
coverage as of 2015.


Usage

libvpx is used by major OTT video services including
YouTube YouTube is a global online video sharing and social media platform headquartered in San Bruno, California. It was launched on February 14, 2005, by Steve Chen, Chad Hurley, and Jawed Karim. It is owned by Google, and is the second most vis ...
,
Netflix Netflix, Inc. is an American subscription video on-demand over-the-top streaming service and production company based in Los Gatos, California. Founded in 1997 by Reed Hastings and Marc Randolph in Scotts Valley, California, it offers a film ...
,
Amazon Amazon most often refers to: * Amazons, a tribe of female warriors in Greek mythology * Amazon rainforest, a rainforest covering most of the Amazon basin * Amazon River, in South America * Amazon (company), an American multinational technology co ...
, JW Player,
Brightcove Brightcove, Inc. () is a Boston, Massachusetts–based software company that produces an online video platform. History Brightcove was founded in 2004 by Jeremy Allaire, who served as Executive Chairman until April 2016, and Bob Mason. The c ...
, and
Telestream Telestream, Inc. is an American privately held computer software company. History The company, founded in 1998, is headquartered in Nevada City, California with personnel in France, Germany, Sweden, Poland, Canada and the UK. Telestream pr ...
, among which are the biggest sources of internet traffic with Netflix alone accounting for nearly a third of all internet traffic in the United States as of 2017. There are alternatives for decoding VP8 and VP9, both commercial and closed source as well as open source. For encoding there are only commercial alternatives and some unfinished experimental software for VP8 including xvp8 as of 2016.


References


External links

* {{Google FOSS Free video codecs C (programming language) libraries Free software programmed in C Free computer libraries Google software