Readit News logoReadit News
JyrkiAlakuijala commented on Consider using Zstandard and/or LZ4 instead of Deflate   github.com/w3c/png/issues... · Posted by u/marklit
jchw · a month ago
The zstd library is already included by most major browsers since it is a supported content encoding. Though I guess that does leave out Safari, but Safari should probably support Zstd for that, too. (I would've preferred that over Brotli, but oh well.)
JyrkiAlakuijala · a month ago
zstd compresses less, so you wait a bit more for your data
JyrkiAlakuijala commented on Consider using Zstandard and/or LZ4 instead of Deflate   github.com/w3c/png/issues... · Posted by u/marklit
ryao · a month ago
So far, it is following the same pattern. Safari adopts it, no one else does and then one day, Safari drops it. It is currently on step 2. When step 3 occurs, the cycle will be complete.
JyrkiAlakuijala · a month ago
except DNG, ProRAW, DICOM, GDAL, TIFF, Apple's and Microsoft's operating systems, Linux distros, and Windows support JPEG XL

otherwise the same

JyrkiAlakuijala commented on Consider using Zstandard and/or LZ4 instead of Deflate   github.com/w3c/png/issues... · Posted by u/marklit
jchw · a month ago
JPEG XL definitely has advantages over PNG but there is one serious seemingly insurmountable obstacle:

https://caniuse.com/jpegxl

Nothing really supports it. Latest Safari at least has support for it not feature-flagged or anything, but it doesn't support JPEG XL animations.

To be fair, nothing supports a theoretical PNG with Zstandard compression either. While that would be an obstacle to using PNG with Zstandard for a while, I kinda suspect it wouldn't be that long of a wait because many things that support PNG today also support Zstandard anyways, so it's not a huge leap for them to add Zstandard support to their PNG codecs. Adding JPEG-XL support is a relatively bigger ticket that has struggled to cross the finish line.

The thing I'm really surprised about is that you still can't use arithmetic coding with JPEG. I think the original reason is due to patents, but I don't think there have been active patents around that in years now.

JyrkiAlakuijala · a month ago
PNG with ZStandard or Brotli is much worse than WebP lossless.
JyrkiAlakuijala commented on The JPEG XL Image Coding History, Features, Coding Tools, Design Rationale   arxiv.org/abs/2506.05987... · Posted by u/ksec
Dwedit · 2 months ago
WEBP is two image formats bolted together.

First, there's Lossy WEBP, based on VP8 video compression. It is better than JPEG, but mediocre by today's standards. Lossy AVIF and Lossy JXL greatly outclass lossy WEBP.

Second, there's Lossless WEBP, which is not in any way based on VP8. Lossless WEBP is a stellar image format that not only compresses very well, but also decompresses very quickly. Its biggest competition is Lossless JXL, which usually compresses to a smaller file, but decoding that image is slow enough to be annoying. Sometimes lossless WEBP produces a smaller file than lossless JXL.

JyrkiAlakuijala · 2 months ago
Thank you. I agree with the sentiment that WebP lossless has stand the test of time better than WebP lossy. In some comparisons even Jpegli is more attractive from compression density point view than WebP lossy.

Disclaimer: I am the designer of WebP lossless and Jpegli.

JyrkiAlakuijala commented on The JPEG XL Image Coding History, Features, Coding Tools, Design Rationale   arxiv.org/abs/2506.05987... · Posted by u/ksec
donatzsky · 2 months ago
It wasn't killed off. Support was removed from Chrome, for what appears to be rather spurious reasons, but practically everyone else are busy implementing it.
JyrkiAlakuijala · 2 months ago
> killed off

my guesswork is that JPEG XL will likely outlive Chrome by 100+ years

JyrkiAlakuijala commented on Compression of Spectral Images Using Spectral JPEG XL   jcgt.org/published/0014/0... · Posted by u/ksec
fc417fc802 · 6 months ago
It seemed like most of their issues were due to the lossy compression (ie wanting different parameters per sub-image). If they had opted for lossless JPEG XL wouldn't things have "just worked"?

Unrelated, I'd also be curious to know how their initial data transformation varies from that of your TIFF scheme.

JyrkiAlakuijala · 6 months ago
Lossy compression can be megabytes vs. tens or hundreds of megabytes per image kind of question, i.e., worth all the sweat it brings.
JyrkiAlakuijala commented on Compression of Spectral Images Using Spectral JPEG XL   jcgt.org/published/0014/0... · Posted by u/ksec
tetrahedon · 6 months ago
Did you consider other compression methods? For us, ZSTD is quite good for TIFF files.
JyrkiAlakuijala · 6 months ago
ZSTD/Tiff is quite far from JPEG XL in compression density. There are many technical reasons why this is the case.
JyrkiAlakuijala commented on Compression of Spectral Images Using Spectral JPEG XL   jcgt.org/published/0014/0... · Posted by u/ksec
Scaevolus · 6 months ago
JPEG XL's XYB color space is perceptual and based on LMS, but you don't have to use it, and you can store 16-bit floats directly. The paper notes that the libjxl library interface lacks some necessary features:

"In principle, JPEG XL supports having one main image and up to 255 sub-images, which sounds like a good match for c0 and f1, . . . , fn−1. Unfortunately, the current implementation in libjxl does not allow us to tweak the compression ratio and subsampling on a per-sub-image basis. Due to these limitations, we currently use one JPEG XL file per channel so that we have full control over the compression parameters."

This follows a general trend in modern codecs where the format itself allows for many different tools, and the job of the encoder is to make good use of them. See "Encoder Coding Tool Selection Guideline" for a nice chart of the possibilities: https://ds.jpeg.org/whitepapers/jpeg-xl-whitepaper.pdf

JyrkiAlakuijala · 6 months ago
I believe JPEG XL allows different scaling per layer, including decent default interpolation.

But usually exotic things are easier to engineer if you do them outside of the container, then you don't need to figure out how the standard works.

JyrkiAlakuijala commented on JPEG XL: What It Is and Why You Should Care (2024)   petapixel.com/2024/10/02/... · Posted by u/ksec
klysm · 7 months ago
Yeah this is dumb. The DNG spec handles this fine
JyrkiAlakuijala · 7 months ago
While DNG uses JPEG XL internally for great compression, its implementation sacrifices some of JPEG XL's inherent advantages. For instance, JPEG XL's progressive rendering and preview capabilities are lost within the DNG container. Additionally, JPEG XL's lack of frame boundaries (it has consistent filtering defined over all frame/tile boundaries -- being the only image codec that gets this right!!), is negated when used in DNG's tiled structure. This tiling introduces frame boundary artifacts at lower quality levels, similar to how other codecs behave in tiled contexts. Although these are minor issues, a pure JPEG XL implementation would offer superior progressive display, previewing, and artifact-free compression compared to the DNG-wrapped version.
JyrkiAlakuijala commented on How JPEG XL compares to other image codecs   cloudinary.com/blog/how_j... · Posted by u/bentocorp
chronogram · 10 months ago
Pretty good news! I imagine that it'll take a while before libjxl and jpegli won't both supply a cjpegli binary so that'll be mildly annoying at the start, but hopefully this way it'll be adopted quicker so it'll accept more input formats and image software will switch over to jpegli native export instead of using the libjpeg compatible controls.

It's a really excellent software. Its default output quality is storage quality, while the file size is acceptable for mobile data and cloud storage of pictures in most countries. It producing progressive pictures by default still helps when quickly swiping through a whole album of vacation pictures stored on cloud storage, and its progressive output actually reduces size rather than add to it. And it's compatible with everything so now I just throw everything lossy I produce through its default settings until JXL becomes natively supported in Chrome and Windows.

JyrkiAlakuijala · 10 months ago
Thank you for such a kind praise for Jpegli! This made my day.

u/JyrkiAlakuijala

KarmaCake day1119June 29, 2016View Original