WebP Image Format Could Replace JPEG, PNG and GIF
In September 2010, Google announced the WebP image format with lossy compression. Since last month, WebP can also support animation, ICC profile, XMP metadata and tiling. Today, it announced lossless compression and transparency support.
WebP could be used as an alternative to JPEG, with 25–34% better compression compared to JPEG images at equivalent SSIM index as well as PNG as it now supports lossless compression and transparency – also known as alpha channel – in both the lossless and lossy modes. On average, Google got a 45% reduction in size when starting with PNGs found on the web, and a 28% reduction in size compared to PNGs that are re-compressed with pngcrush and pngout.
Photos typically encoded as JPEG can be encoded in WebP lossy mode to achieve smaller file size. Icons and graphics can be encoded better in WebP lossless mode than in PNG. WebP lossy with alpha can be used to create transparent images that have minimal visual degradation, yet are much smaller in file size.
WebP could also replace GIF since it support animations.
WebP seems to have the advantage of all three most used images format (JPEG, PNG and GIF) without their limitations: e.g. JPEG can not support transparency and GIF only support 8-bit color depth. PNG does rather a good job, but does not support lossy compression and WebP seems to offer better lossless compression.
WebP is supported by the Chrome Browser natively (unsurprisingly) and by for Internet Explorer, Opera 11.10 and Android 4.0 (ICS) via the Google Chrome Frame plug-in. But apparently, Mozilla has rejected this new format for now so you won;t see it supported in Firefox and Thunderbird at least for a while.
If you want to get your hands dirty with this new image format, you can convert some existing images with cwebp and dwebp tools in Windows, Linux or MacOS, download the library (libwebp-0.13) and utilities source code to add WebP to your application or port it to your platform. In another document, Google also used webp2png, png2webpll (WebP lossless) and png2webp (WebP lossy) to convert PNG to WebP, but I could not find those tools anywhere.