WebP
Filename extension | .webp [1] |
---|---|
Internet media type | image/webp |
Magic number | WEBP |
Developed by | |
Initial release | 30 September 2010[2] |
Type of format | Image format Lossy compression algorithm |
Contained by | Resource Interchange File Format (RIFF)[3] |
Free format? | No[4] |
Website | code |
WebP (pronounced "weppy")[5][6] is an image format for lossy compressed image files.[7] It is developed by Google, based on technology acquired with the purchase of On2 Technologies.[8] As a derivative of the video format VP8, it is a sister project to the multimedia container format WebM.[9] WebP related software is released under a BSD license.[10]
Technology
WebP's compression algorithm is based on the intra-frame coding of the VP8 video format[11] and the classical Resource Interchange File Format (RIFF) as a container format.[2] As such it is a block-based transformation scheme with eight bits of color depth and a luminance-chrominance model with chroma subsampling by a ratio of 1:2 (YCbCr 4:2:0).[12] Without further content the mandatory RIFF container leads to an overhead of only twenty bytes and can hold additional metadata.[2] The side length of WebP images is limited to 16383 pixels (14 bits).[4]
WebP is based on block prediction. Each block is predicted on the values from three blocks above it and from one block left to it (block decoding is done in raster-scan order: left to right and top to bottom). There are four basic modes of block prediction: horizontal, vertical, DC (one color) and TrueMotion. Mispredicted data and non-predicted blocks are compressed in a 4x4 pixel sub-block with Discrete cosine transform and (rare) Walsh–Hadamard transform. Both transforms are done with fixed point to avoid rounding errors. The output is compressed with entropy encoding.[12] WebP also has explicit support for parallel decoding.[12]
The free reference implementation consists of a converter software in the form of a command-line program for Linux (webpconv) and a programming library for the decoding (the same as for WebM). The open source community quickly managed to port the converter to other platforms, such as Windows.[13]
Usage
The format is supposed to be a new open standard for lossily compressed true color graphics on the web, thereby being presented as a direct competitor to the older JPEG scheme, to which it is meant to compare favorably with the production of smaller files for comparable image quality.[14]
Chrome was the first web browser to natively support WebP[15] , followed by Opera[16], though support is also currently available in all WebM-compatible browsers via a javascript shim.[17] Native support has also been released for the file viewer/converter Konvertor,[18] as well as the Pixelmator and Acorn graphics editors.[19][20] There is a free (and GPL) WebP file format plugin for Adobe Photoshop, with control over four encoding parameters.
Criticism
Jason Garrett-Glaser, a developer of the x264 encoder, gave several points of criticism for WebP.[11] Using a comparison of different encodings (JPEG, x264 and WebP) of a reference image, he stated that the quality of the WebP-encoded result was the worst of the three, mostly because of blurriness on the image. His main remark was that "libvpx, a much more powerful encoder than ffmpeg's jpeg encoder, loses because it tries too hard to optimize for PSNR" (peak signal-to-noise ratio), arguing instead that "good psy[cho-visual] optimizations are more important than anything else for compression." He also criticized Google's announcement, saying that it shouldn't have publicized the format before its results are better than JPEG's.[11]
See also
- WebM, a multimedia container format introduced by Google earlier in 2010, on which WebP is based
- JPEG 2000, an improvement intended to replace the older JPEG by the JPEG committee, introduced in 2000
- JPEG XR, a computationally-lightweight alternative to JPEG 2000, introduced in 2009
References
- ^ "WEBP file extension". DotWhat.net. Retrieved 2010-10-01.
- ^ a b c Rabbat, Richard (2010-09-30). "WebP, a new image format for the Web". Chromium Blog. Google. Retrieved 2010-10-01.
- ^ "RIFF Container". Google Code. Google. Retrieved 2010-10-01.
- ^ a b "WebP FAQs". Google Code. Google. Retrieved 2010-10-06.
- ^ WebP Home: "Did you know? WebP is pronounced 'weppy'. /(wĕpˈē)/"
- ^ Chapman, Stephen (2010-10-04). "Google's New WebP Image Standard Is All About SEO". ZDNet. Retrieved 2010-10-06.
- ^ Calore, Michael (2010-10-01). "Meet WebP, Google's New Image Format". Wired. Retrieved 2010-10-05.
- ^ Shankland, Stephen (2010-09-30). "Google offers JPEG alternative for faster Web". CNET News. CBS Interactive. Retrieved 2010-10-01.
- ^ Paul, Ryan (2010-10-02). "Google's new VP8-based image format could replace JPEG". Ars Technica. Retrieved 2010-10-05.
- ^ Rabbat, Richard (2010-10-03). "License/Patent clarification". Retrieved 2011-03-11.
- ^ a b c Garrett-Glaser, Jason (2010-09-30). "H.264 and VP8 for still image coding: WebP?". Diary Of An x264 Developer. Retrieved 2010-10-01.
- ^ a b c "VP8 Data Format and Decoding Guide" (PDF). Google. 2010-09-23. Retrieved 2010-10-02.
- ^ "WebP for .NET". Codeplex. Microsoft. 2010-10-01.
- ^ "Comparative Study of WebP, JPEG and JPEG 2000". Google Code. Google. Retrieved 2010-10-01.
- ^ Metz, Cade (2010-09-30). "Google open sources JPEG assassin". The Register. Retrieved 2010-10-03.
- ^ "CSS gradients, WebP, and Declarative UI". My_Opera. 2011-03-15. Retrieved 2011-03-15.
- ^ "Weppy: WebP in modern browsers today". 2010-10-11. Retrieved 2010-10-11.
- ^ "Images Formats (v 4.04)". Logipole. Retrieved 2010-10-11.
- ^ David, Chartier (2010-10-04). "Pixelmator to Add Support for Google's WebP Image Format". PC World. IDG. Retrieved 2010-10-05.
- ^ Saulius (2010-10-06). "Pixelmator 1.6.2 Adds WebP Support". Pixelmator Weblog. Retrieved 2010-10-06.