Iris

Iris is a fast & efficient image encoder built to help provide a more beautiful Web. Designed around the intricacies of the human visual system and thoroughly evaluated under industry-leading psychovisual metrics, Iris takes Web-first image compression technology to a new level.

Sun Peering Through Trees

Iris for WebP

WebP was introduced in 2010 with the goal of providing better compression for Web images. While it claimed to offer significant efficiency advantages over JPEG, in practice this wasn't always true. Its adoption was also slow due to an initial lack of widespread browser support and further lackluster support outside of the Web ecosystem. This led to WebP being perceived as a confusing addition to the Web. Iris-WebP changes all of that.

Iris-WebP provides a fast, efficient WebP encoder designed for the human eye. Images encoded with Iris-WebP look significantly better than those encoded with the reference WebP encoder, and Iris-WebP performance outclasses encoders for slower, newer Web-first formats like AVIF. Plus, WebP support is ubiquitous now, and large websites serve billions of WebP images every single day.

Fast

Iris-WebP's slowest encodes are close to AVIF's fastest, making it significantly faster than the latest modern Web codecs while still expertly preserving image fidelity.

Efficient

Achieve over 40% better compression than the best JPEG encoders, leading to faster page load times and greatly reduced bandwidth at a negligible compatibility cost.

High Quality

Iris-WebP is designed with the human visual system in mind, allowing up to 21% better compression than the reference WebP encoder (often within 1% of AVIF).

Metrics

The numbers below were aggregated from the Kodak Lossless True Color Image Suite using the SSIMULACRA2 metric.

Compared to libjpeg's encoder, Iris-WebP achieves over 74% better compression on average. Compared to the highly efficient jpegli, Iris is over 41% better. Within the same WebP codec, Iris outperforms the reference WebP encoder included in libwebp by almost 22%.

Efficiency Gains Compared to Other Encoders

Image libwebp libjpegli libjpeg
1.png 20.72% 29.736% 55.529%
2.png 32.737% 57.45% 104.437%
3.png 18.182% 67.187% 109.427%
4.png 23.991% 41.668% 78.088%
5.png 12.307% 26.671% 44.074%
6.png 30.169% 27.56% 63.299%
7.png 15.389% 58.442% 86.45%
8.png 16.322% 29.975% 47.19%
9.png 19.571% 67.579% 109.357%
10.png 20.668% 59.087% 95.159%
11.png 24.620% 39.464% 72.380%
12.png 34.446% 61.516% 111.106%
13.png 14.564% 7.965% 26.949%
14.png 21.281% 30.482% 57.939%
15.png 24.043% 54.772% 92.947%
16.png 31.278% 33.031% 81.294%
17.png 19.200% 47.594% 79.650%
18.png 21.583% 25.551% 51.007%
19.png 22.543% 28.969% 61.002%
20.png 20.878% 54.173% 88.938%
21.png 19.845% 38.009% 75.028%
22.png 23.344% 23.921% 57.395%
23.png 15.019% 59.299% 85.158%
24.png 21.206% 29.016% 52.465%
Average 21.829% 41.630% 74.428%

Aside from passing `-optimize` to libjpeg & `-m 6` to libwebp to set the speed, everything else was left stock. Iris is speed-matched to libwebp.

When benchmarked at reasonable speeds, Iris-WebP comes close to the performance of highly optimized libaom for AVIF:

Iris on Daala's Subset2

This is unprecedented performance for a WebP encoder, considering AVIF is eight years newer than WebP.

Using Iris-WebP

Want to use Iris-WebP today? Send us an email!