Chromium Has Merged JpegXL
65 points
2 hours ago
| 3 comments
| chromium-review.googlesource.com
| HN
adzm
14 minutes ago
[-]
https://github.com/libjxl/jxl-rs jxl-rs is the underlying implementation. It's relatively new but Rust certainly calms security fears. This library wasn't really an option last time this came around in chromium.
reply
viktorcode
26 minutes ago
[-]
Anyone knows if their implementation supports animations? This is a feature missing from Apple's
reply
jakkos
1 hour ago
[-]
I've been hearing about fights over JpegXL and WebP (and AVIF?) for years, but don't know much about it.

From a quick look at various "benchmarks" JpegXL seems just be flat out better than WebP in both compression speed and size, why has there been such reluctance from Chromium to adopt it? Are there WebP benefits I'm missing?

My only experience with WebP has been downloading what is nominally a `.png` file but then being told "WebP is not supported" by some software when I try to open it.

reply
jmillikin
23 minutes ago
[-]
Most of the code in WebP and AVIF is shared with VP8/AV1, which means if your browser supports contemporary video codecs then it also gets pretty good lossy image codecs for free. JPEG-XL is a separate codebase, so it's far more effort to implement and merely providing better compression might not be worth it absent other considerations. The continued widespread use of JPEG is evidence that many web publishers don't care that much about squeezing out a few bytes.

Also from a security perspective the reference implementation of JPEG-XL isn't great. It's over a hundred kLoC of C++, and given the public support for memory safety by both Google and Mozilla it would be extremely embarrassing if a security vulnerability in libjxl lead to a zero-click zero-day in either Chrome or Firefox.

The timing is probably a sign that Chrome considers the Rust implementation of JPEG-XL to be mature enough (or at least heading in that direction) to start kicking the tires.

reply
coppsilgold
10 minutes ago
[-]
JPEG XL has progressive decoding

https://www.youtube.com/watch?v=UphN1_7nP8U

reply
archerx
2 minutes ago
[-]
Google created webp and that is why they are giving it unjustified preferential treatment and has been trying to unreasonably force it down the throat of the internet.
reply
speps
1 hour ago
[-]
It was an issue with the main JPEGXL library being unmaintained and possibly open for security flaws. Some people got together and wrote a new one in Rust which then became an acceptable choice for a secure browser.
reply
a-french-anon
33 minutes ago
[-]
Unmaintained? You must be mistaken, libjxl was getting a healthy stream of commits.

The issue was the use of C++ instead of Rust or WUFFS (that Chromium uses for a lot of formats).

reply
jacobp100
1 hour ago
[-]
JpegXL and AVIF are comparable formats. Google argued you only needed one, and each additional format is a security vulnerability.
reply
out_of_protocol
49 minutes ago
[-]
- avif is better at low bpp (low-quality images), terrible in lossless

- jxl is better at high bpp, best in lossless mode

reply