WebP in Chrome, Picasa, Gmail With a Slew of New Features and Improvements

Friday, May 20, 2011

Labels:

Since we announced WebP, a new image format based on WebM technology and the VP8 codec, we’ve been working hard with the open web community to improve and enhance it. Today we are happy to share news about a few new features and expanded support for WebP.

New Features

WebP's compression algorithms have been significantly improved while remaining completely
compatible with the previous releases. We hope the quality of a few sample images in the new gallery will delight you.

On the decoding side, we have integrated a fancy upsampler. Fancy upsampling reduces the pixelation of strong edges. You can see this feature when you zoom in, for example on a WebP image with red edges converted from this PNG original:

Original image in PNG format
Without fancy upsampling: strong stair-like pattern
With fancy upsampling: smoother edge

We also introduced the ability to incrementally decode the data as your computer downloads it from the web, a feature that allows the browser to display images without having to wait for the whole file to download. This feature is already enabled in Chrome 12.

On the encoding side, to further improve quality, we focused on segmenting the picture into areas with similar compressibility. For each of these segments, we tune the amount of compression and filtering differently, and bits are redistributed where they are most useful. Take for instance the image reproduced below [1]:

The easy segment contains lot of disparate signals and can be compressed more than the difficult one, which will be assigned more bits. In this example, the encoder only used two segments. By using even more segments (up to four), WebP is now able to retain many of the original details of the image [2]. This is in contrast to the frequent ringing artifacts one can clearly see in JPEG images.

The uneven distribution of bits between difficult and easy area is controlled in the new encoder using the -sns parameter, short for Spatial Noise Shaping. Its value can be set from 0 to 100 (0 meaning OFF) and with a default of 80. Note that when you enable SNS, PSNR may be degraded, but the overall visual quality is much improved.

We’ve added simple encoding and decoding example binaries to the libwebp library. In addition, we’ve added JNI support that allows Java programs to decode WebP images. Next up is transparency, also known as Alpha channel; we’re experimenting with it now and planning to add it to the next stable version of the codec. In parallel, we continue to improve the codec’s speed and will release a complete specification for the metadata format.

Increased adoption

WebP is now natively supported in Chrome and Opera. Google products including Gmail and Picasa Web Albums, have also added support to WebP so you can share, send and receive WebP images. WebP support is coming to AppEngine. In addition, Google Instant Previews now store images in WebP to reduce their storage needs.

Users that want to manipulate WebP images can now do so using software developed by the community including Pixelmator, ImageMagick, the WebP format plugin for Photoshop and the Java VP8 decoder. The open-source community has also contributed support for Mac OS X with MacPorts packages, Linux Debian, OpenSUSE and Gentoo packages and the Apache HTTP Server. On Windows, users who want to view WebP images natively, can download the WebP codec. This codec brings WebP support to such software as Microsoft Office 2010, Windows Media Center and Photo Edit.

The new features, quality improvements and increased adoption of WebP get us excited about its future. As always, we’re looking for more feedback as well as code contributions from the community. Let us know on the mailing list how your experiments are panning out and what new features you’d like to see in the future.


Image credits:
[1]: "Kayaker at Ekstremsportveko 2010, Voss". Image Author: Kjetil Birkeland Moe. Reproduced with permission of the author. PNG source, and Blog post by author with comparison of JPEG and WebP.

[2]: A storm at Pors-Loubous, Plogoff, Finistère, France. Image Author: Henri Camus. Permission: CC-BY; CC-BY-1.0. Source: http://commons.wikimedia.org/wiki/File:A_storm_at_Pors-Loubous.jpg

17 comments:

Jaime said...

Picasa may be able to upload WebP images and they can be viewed in Picasa Web Albums because they are in a browser, but the images still cannot be viewed in Picasa or Picasa Viewer. This alone is why I won't convert my large JPG library over to WebP. It'd be nice if that was the case, because I'd love to save 20-50% of the space used.

Richard Bradshaw said...

Any word on if/when transparency is coming? For me, a jpg type encoding with a png like transparency would be the best thing ever!

Avinash Agrawal said...

Webp and Html5 webm and Saving 3G bandwidth : Would this webp and html webm format save mobile broadband 3G bandwidth for Verizon and ATT and customer, and by what factor ? I have limited 3G bandwidth of around 1G per month. Any plans to make this webp and webm html5 default in Google Chrome and Android for picasa, youtube etc ?

Avinash Agrawal said...

Hello, would webp save 3G data bandwidth and mobile power ?

Omiod said...

Please add an option to convert all my jpegs in PicasaWeb to webP, and intergrate in in JS (for Chrome extensions for example)

ric said...

This comment has been removed by the author.

ric said...

Please give up on this nonsense and adopt the completely open and far more complete JpegXR.

Flash and IE9 have already done this.

That would be the best way to move the web forward instead of the NIH behavior you are currently displaying.

Tim said...

I still don't see the advantage over jpeg2000 or jpeg-xr.

And are you planning a useful comparison? I.e. one where the file sizes are the *same*, and it is a high enough compression rate that you can actually see the artefacts.

hdante said...

JPEG images look sharper. WebP images look like cheap low space versions of JPEG ones.

Mark said...

I agree with the previous comments. Why build yet another file format? Fancy upsampling... give me a break. It's not only trivial but irrelevant to the task.
Perhaps you could discuss why JpegXr is so obviously and permanently inferior?

Wellington said...

Any format superior to JPEG that want to make enough support is the adoption by camera makers. Just that! No matter JPEG2000, JPEG-XR or WEBP. The winner has to be in the end user's cameras.

Steven Roose said...

I don't actually see a difference between those close-ups...

Les said...

@ric, @tim
I am no expert on media formats, but these independent tests show a clear superiority (if they are accurate).

http://goldfishforthought.blogspot.com/2010/10/comparison-webp-jpeg-and-jpeg-xr.html

Citrus said...

PNG is the original image before compression? Comparing this and "WebP-compressed"image on the Photoshop, they are an exact match. why?

SyP said...

It may be true that Google Instant Previews stores WebP images, but it surely displays JPEG, even for Chrome browsers: "<_img alt="Preview image" id="vsi" src="data:image/jpeg;base64,/9j/4AA.................................."

Gus said...

Don't forget that Acorn also supports WebP as well: http://flyingmeat.com/acorn/

SemiSane said...

I'm not really delighted, e.g. frame 10 of the "Parkrun" sequence clearly looks much better in JPEG that in WebP, the latter is very blurry and a lot of details is lost.

Perhaps, you should have compressed with the same file sizes and show that WebP retains more details than JPEG. Right now it's just not always the case.