Woah, JPEG XL is making a comeback in Chrome:
https://windowsreport.com/google-revisits-jpeg-xl-in-chromium-after-earlier-removal/Meanwhile Mozilla awaits for decoder to be re-implemented in Rust in order to bring it to Firefox:
https://github.com/mozilla/standards-positions/pull/1064All while current libjxl-based implementation works with a set of patches.
Google developer mentions animation support, with these patches all of the advanced features on JPEG XL test page work: advanced colour management, transparency, animations.
Forks of Firefox have these patches, Waterfox:
https://github.com/BrowserWorks/waterfox/pull/2938And Librewolf:
https://codeberg.org/librewolf/source/src/branch/main/patches/JXL_improved_support.patchSadly, these fail to be applied cleanly to newer Firefox code base and no one seems to care enough to fix it.
It's not perfect, it might require some testing — and of course it would require porting to newer code base, but it does work!
See for yourself, here is my own build of old ESR (115):
https://nosh0b10.m0xee.net/m0xEE/p/1763414039.727405It also works on mobile:
https://nosh0b10.m0xee.net/m0xEE/p/1762130588.104733No, support for WebP is not broken — it's disabled on purpose, I have actually patched the about:config setting that made it optional back in after Mozilla for some reason (hehe 😏) removed it in version 119.
So this is what we could have today — without going the roundabout way with Rust. And Google claimed in the past that there is no interest for it — I'm interested, and we get support for AVIF, HEIF and WebP — in which I'm personally not interested in the slightest.
And libwebp, which Firefox uses for WebP support is not in Rust — but not only they are not waiting for Rust implementation, they make support for it non-optional right after critical vulnerability gets found in its code:
https://thehackernews.com/2023/09/mozilla-rushes-to-patch-webp-critical.htmlVulnerability gets discovered in September, in October Mozilla releases Firefox 119:
https://www.firefox.com/en-US/firefox/119.0/releasenotes/ removing image.webp.enabled from about:config making support for WebP non-optional. Support provided by exact same library affected by the vulnerability — albeit already patched.
No requirement for it being in Rust in sight!
Support for
#WebP becomes mandatory, experimental incomplete support for JPEG XL can't even be enabled with image.jxl.enabled set to true in about:config — it can only be enabled at build time, by default it's only enabled in Nightly developer builds.
Why do these image formats get glaringly different treatment?
#jpegXL