Remix.run Logo
Chrome Jpegxl Issue Reopened(issues.chromium.org)
102 points by markdog12 5 hours ago | 24 comments
wizee 2 hours ago | parent | next [-]

JPEG-XL provides the best migration path for image conversion from JPEG, with lossless recompression. It also supports arbitrary HDR bit depths (up to 32 bits per channel) unlike AVIF, and generally its HDR support is much better than AVIF. Other operating systems and applications were making strides towards adopting this format, but Google was up till now stubbornly holding the web back in their refusal to support JPEG-XL in favour of AVIF which they were pushing. I’m glad to hear they’re finally reconsidering. Let’s hope this leads to resources being dedicated to help build and maintain a performant and memory safe decoder (in Rust?).

homebrewer an hour ago | parent | next [-]

It's not just Google, Mozilla has no desire to introduce a barely supported massive C++ decoder for marginal gains either:

https://github.com/mozilla/standards-positions/pull/1064

avif is just better for typical web image quality, it produces better looking images and its artifacts aren't as annoying (smoothing instead of blocking and ringing around sharp edges).

You also get it for basically free because it's just an av1 key frame. Every browser needs an av1 decoder already unless it's willing to forego users who would like to be able to watch Netflix and YouTube.

kps 44 minutes ago | parent | next [-]

Not everything in the world is passive end-of-the-line presentation. JPEG-XL is the only one that tries to be a general-purpose image format.

asadotzler 19 minutes ago | parent [-]

If that's the case, let it be a feature of image editing packages that can output formats that are for the web. It's a web standard we're talking about here, not a general-purpose image format, so asking browsers to carry that big code load seems unreasonable when existing formats do most of what we need and want for the web.

crote 8 minutes ago | parent [-]

People generally expect browsers to display general-purpose image formats. It's why they support formats like classical JPEG, instead of just GIF and PNG.

Turns out people really like being able to just drag-and-drop an image from their camera into a website - being forced to re-encode first it isn't exactly popular.

xeeeeeeeeeeenu 25 minutes ago | parent | prev | next [-]

>avif is just better for typical web image quality,

What does "typical web image quality" even mean? I see lots of benchmarks with very low BPPs, like 0.5 or even lower, and that's where video-based image codecs shine.

However, I just visited CNN.com and these are the BPPs of the first 10 images my browser loaded: 1.40, 2.29, 1.88, 18.03 (PNG "CNN headlines" logo), 1.19, 2.01, 2.21, 2.32, 1.14, 2.45.

I believe people are underestimating the BPP values that are actually used on the web. I'm not saying that low-BPP images don't exist, but clearly it isn't hard to find examples of higher-quality images in the wild.

jnd-cz an hour ago | parent | prev [-]

Can AVIF display 10 bit HDR with larger color gamut that any modern phone nowadays is capable of capturing?

arccy an hour ago | parent [-]

if you actually read your parent comment: "typical web image quality"

ansgri an hour ago | parent [-]

Typical web image quality is like it is partly because of lack of support. It’s literally more difficult to show a static HDR photo than a whole video!

zozbot234 26 minutes ago | parent [-]

PNG supports HDR with up to 16 bits per channel, see https://www.w3.org/TR/png-3/ and the cICP, mDCV and cLLI chunks.

twotwotwo an hour ago | parent | prev | next [-]

Wanted to note https://issues.chromium.org/issues/40141863 on making the lossless JPEG recompression a Content-Encoding, which provides a way that, say, a CDN could deploy it in a way that's fully transparent to end users (if the user clicks Save it would save a .jpg).

(And: this is great! I think JPEG XL has chance of being adopted with the recompression "bridge" and fast decoding options, and things like progressive decoding for its VarDCT mode are practical advantages too.)

kllrnohj an hour ago | parent | prev | next [-]

> and generally its HDR support is much better than AVIF

Not anymore. JPEG had the best HDR support with ISO 21496-1 weirdly enough, but AVIF also just recently got that capability with 1.2 ( https://aomedia.org/blog%20posts/Libavif-Improves-Support-fo... ).

The last discussion in libjxl about this was seemingly taking the stance it wasn't necessary since JXL has "native HDR" which completely fails to understand the problem space entirely.

kps 2 hours ago | parent | prev [-]

> (in Rust?)

Looks like that's the idea: https://issues.chromium.org/issues/462919304

crazygringo 2 hours ago | parent | prev | next [-]

Dupe. From yesterday (183 points, 82 comments):

https://news.ycombinator.com/item?id=46021179

markdog12 2 hours ago | parent [-]

Ah, I think I searched for "jpegxl", that's why there was no match.

markdog12 5 hours ago | parent | prev | next [-]

"Yes, re-opening.".

> Given these positive signals, we would welcome contributions to integrate a performant and memory-safe JPEG XL decoder in Chromium. In order to enable it by default in Chromium we would need a commitment to long-term maintenance. With those and our usual launch criteria met, we would ship it in Chrome.

https://groups.google.com/a/chromium.org/g/blink-dev/c/WjCKc...

FerritMans 2 hours ago | parent | prev | next [-]

Love this, been waiting for Google to integrate this, from my experience with AVIF and JPEGXL, JPEGXL is much more promising for the next 20years.

masswerk 2 hours ago | parent | prev | next [-]

Nice example for how a standard, like PDF, can even persuade/force one of the mighty to adopt a crucial bit of technology, so that this may become a common standard in its own right (i.e. "cascading standards").

albert_e 35 minutes ago | parent | prev | next [-]

> Chrome Jpegxl Issue Reopened

> (this is the tracking bug for this feature)

Is it just me -- or it's confusing to use the terms issue / bug / feature interchangeably?

ChrisArchitect 2 hours ago | parent | prev | next [-]

[dupe] https://news.ycombinator.com/item?id=46021179

Pxtl 2 hours ago | parent | prev | next [-]

> Lossless JPEG recompression (byte-exact JPEG recompression, saving about 20%) for legacy images

Lossless recompression is the main interesting thing on offer here compared to other new formats... and honestly with only 20% improvement I can't say I'm super excited by this, compared to the pain of dealing with yet another new image format.

For example, ask a normal social media user how they feel about .webp and expect to get an earful. The problem is that even if your browser supports the new format, there's no guarantee that every other tool you use supports it, from the OS to every site you want to re-upload to, etc.

F3nd0 33 minutes ago | parent [-]

If I remember correctly, WebP was single-handedly forced into adoption by Chrome, while offering only marginal improvements over existing formats. Mozilla even worked on an improved JPEG encoder, MozJPEG, to show it could compete with WebP very well. Then came HEIF and AVIF, which, like WebP, were just repurposed video codecs.

JPEG XL is the first image format in a long while that's been actually designed for images and brings a substantial improvement to quality while also covering a wide range of uses and preserving features that video codecs don't have. It supports progressive decoding, seamless very large image sizes, potentially large amount of channels, is reasonably resilient against generation loss, and more. The fact that it has no major drawbacks alone gives it much more merit than WebP has ever had. Lossless recompression is in addition to all of that.

The difference is that this time around, Google has single-handedly held back the adoption of JPEG XL, while a number of other parties have expressed interest.

Dwedit 19 minutes ago | parent [-]

Having a PNG go from 164.5K to 127.1K as lossless WEBP is not what I'd call "marginal". An improvement of over 20% is huge for lossless compression.

Going from lossless WEBP to lossless JXL is marginal though, and is not worth the big decode performance loss.

claudiojulio 2 hours ago | parent | prev [-]

To hell with Chrome!