TL;DR
Google has reversed its 2022 decision and will bring JPEG XL back to Chromium, driven by developer pressure and growing adoption, using a memory-safe Rust implementation.
The long-standing battle over the future of web imagery has reached a stunning conclusion. Google’s Chromium team, the gatekeepers for Chrome, Edge, and Brave, has officially announced plans to integrate a JPEG XL (JXL) decoder, effectively killing the “obsolete” tag that has dogged the format since 2022.
The move marks a rare and high-profile retreat for Google, which previously claimed the format lacked “ecosystem interest” despite a vocal outcry from photographers, developers, and open-source advocates.
The “Memory-Safe” Path Forward
While the previous experimental support for JXL relied on a C++ decoder, Google is setting a higher bar for its return. Rick Byers, a Chrome tech lead, emphasized that the team is looking for a “memory-safe” implementation.
This points directly toward Rust, a programming language designed to prevent the memory vulnerabilities common in C++. A proposal is already underway, led by Chromium committer Helmut Januschka, to utilize jxl-rs—a Rust-based decoder born out of Google’s own research department.
This approach addresses the security concerns previously cited by other browser vendors like Mozilla.
Why the Change of Heart?
What changed Google’s mind after three years of silence? Several factors appear to have created a “perfect storm” for JXL’s comeback:
- The PDF Factor: The recent decision by the PDF Association to make JXL a preferred solution made it nearly impossible for Chromium to ignore the format, as Chrome serves as a primary PDF viewer for millions.
- The Interop 2026 Survey: Results from the State of HTML survey showed that JXL support was a top priority for web developers, signalling that ecosystem interest was actually at an all-time high.
- The Safari Precedent: With Apple already offering partial support in Safari, Google faced the risk of being the odd man out in the race for high-fidelity, high-efficiency web content.
A New Era for Web Media
JPEG XL is widely considered superior to both the aging JPEG and the newer AVIF in several key areas. It offers lossless transcoding of old JPEGs (reducing file size by 20% without losing a single pixel of data) and supports massive resolutions and high bit-depths essential for professional HDR photography.
Seamless JPEG XL Integration with JDeli
For developers and organizations looking to capitalize on this resurgence immediately, JDeli provides a robust, high-performance image library that simplifies JPEG XL adoption.
Our pure java library allows Java applications to read and write JXL files with ease, offering a reliable bridge for legacy systems transitioning to modern standards.
Its high-speed processing and support for complex image metadata make it an ideal choice for enterprise environments that require the ultra-high resolution and HDR capabilities the PDF Association now champions.
What’s Next?
The “chicken and egg” problem that has plagued JPEG XL, where browsers won’t support it because there’s no content, and creators won’t use it because there’s no browser support, is effectively over.
With Chromium on board, Adobe and other software giants are expected to fast-track native JXL export tools.
Are you a Java Developer working with Image files?
// Read an image
BufferedImage bufferedImage = JDeli.read(avifImageFile);
// Write an image
JDeli.write(bufferedImage, "avif", outputStreamOrFile);// Read an image
BufferedImage bufferedImage = JDeli.read(dicomImageFile);// Read an image
BufferedImage bufferedImage = JDeli.read(heicImageFile);
// Write an image
JDeli.write(bufferedImage, "heic", outputStreamOrFile);// Read an image
BufferedImage bufferedImage = JDeli.read(jpegImageFile);
// Write an image
JDeli.write(bufferedImage, "jpeg", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(jpeg2000ImageFile);
// Write an image
JDeli.write(bufferedImage, "jpx", outputStreamOrFile);
// Write an image
JDeli.write(bufferedImage, "pdf", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(pngImageFile);
// Write an image
JDeli.write(bufferedImage, "png", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(tiffImageFile);
// Write an image
JDeli.write(bufferedImage, "tiff", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(webpImageFile);
// Write an image
JDeli.write(bufferedImage, "webp", outputStreamOrFile);
What is JDeli?
JDeli is a commercial Java Image library that is used to read, write, convert, manipulate and process many different image formats.
Why use JDeli?
To handle many well known formats such as JPEG, PNG, TIFF as well as newer formats like AVIF, HEIC and JPEG XL in java with no calls to any external system or third party library.
What licenses are available?
We have 3 licenses available:
Server for on premises and cloud servers, Distribution for use in a named end user applications, and Custom for more demanding requirements.
How does JDeli compare?
We work hard to make sure JDeli performance is better than or similar to other java image libraries. Check out our benchmarks to see just how well JDeli performs.