Progressive decoding: JPEG vs JPEG XL vs AVIF
Jon Sneyers1 HN recommenders · 2021–2026
21K views · demo · dated · Uploaded 2020-11-18
A short side-by-side demo of a large image loading over a slow connection in JPEG, progressive mozjpeg, JPEG XL and AVIF. It shows how each codec renders partial data.
HN uses it as visual evidence that JPEG XL decodes progressively while AVIF shows nothing until fully loaded.
19:42But what is the Fourier Transform? A visual introduction.
3Blue1Brown
26:53What the heck is the event loop anyway? | Philip Roberts | JSConf EU
JSConf
36:45Rich Harris - Rethinking reactivity
You Gotta Love Frontend
23:53D/A and A/D | Digital Show and Tell (Monty Montgomery @ xiph.org)
FL Studio
1:42:09Crockford on JavaScript - Volume 1: The Early Years
YUI Library
37:37RailsConf 2016 - Turbolinks 5: I Can’t Believe It’s Not Native! by Sam Stephenson
Confreaks
1:03:48JavaScript: The Good Parts
Google TechTalks
28:23The Fast Fourier Transform (FFT): Most Ingenious Algorithm Ever?
Reducible
5 comments from Hacker News
Some notable features of JPEG XL that don't show up in side-by-sides: 1) Progressive decoding. Like the original .jpg, .jxl can give you a low-quality image when a fraction of the file is loaded, then a decent-quality image, then the final image. This can give JPEG XL the edge in perceived load speed even when the full .avif is smaller than the full .jxl. (Old demo from a JXL contributor at [VIDEO] ) 2) Fast conversion: JPEG XL encoding/decoding is fast without dedicated hardware. Facebook found encode/decode speed and progressive decoding to be points in favor of JPEG XL for their use: [LINK] 3) .jpg repacking: JPEG XL can pack a JPEG1 about 20% smaller without any additional loss; the original .jpg file can be recovered bit-for-bit. 4) Lossless mode. JXL's lossless mode is the successor to FLIF/FUIF, is really good, and also has progressive decoding. AVIF has a lossless mode too, but JPEG XL seems ahead here. (I know the parent comment is from a JXL contributor, I'm saying this for other folks.) I think those will give JPEG XL a niche on the Web. Meanwhile I suspect e.g. Android phone cameras will save .avif someday, like iPhones save .heic now. Phones want the encode hardware anyway for video, and you can crunch a zillion megapixels down to a smaller file with AVIF before attention-grabbing artifacts crop up--at low bitrates AVIF seems good at preserving sharp lines and mostly blurring low-contrast details (compare Tiny images). Finally, worth noting the codecs are differe
Apart from limited resolution probably the biggest problem with AVIF: It doesn't support progressive decoding. Which could effectively cancel out its smaller file size for any web applications. AVIF only shows when it is 100% finished. See [VIDEO] This comparison video is admittedly a little unfair though, because AVIF would have easily 30% lower file size than JPEG XL on ordinary images with medium quality.
High quality progressive decoding at reduced filesizes is a big positive for me. There is no other format that supports that. [VIDEO]
A couple of videos comparing progressive decoding of jpeg, jxl and avif: [VIDEO] [LINK] There's more on the same channel, generation loss ones are really interesting.
Progressive decoding isn't expected to speed up decoding, it's expected to speed up displaying large image files, especially for downloads via slow mobile connections. Example: [VIDEO]