JPEG XL is a new royalty-free format by the JPEG Group that excels at doing {near-,visually,mathematically}lossless compression. Compared to video-inspired codecs like WebP and AVIF, it claims to preserve photographic texture better. It works well for photographs and synthetic images alike, so it may as well become some sort of universal format for Commons.
The bitstream is frozen on December 25, 2020. ImageMagick already has RW support by delegating to the reference implementation library (Apache License 2.0).
https://www.mediawiki.org/wiki/Manual:Adding_support_for_new_filetypes
Mime: image/jxl
Extension: jxl
Magic bytes: 0xFF0A (raw bytestream) or 0x0000000C 4A584C20 0D0A870A (iso bmff, aka QuickTime/mp4, allows for exit and xmp )
- community support
- add magic bytes support to mimeanalyzer
- Add mediahandler class
- Extract dimensions
- Determine target thumb fileformat
- Extract exit and xmp
- add to allowed uploads list
- add support to thumbor and convert with imagemagick
- animation support
Import detail for implementation: metadata such as Exif or XMP, can be stored in the container format but has no impact on image rendering. Exif orientation for example, is a field ignored by applications since the orientation defined in the codestream takes precedence. Will have to check if we need to actively ignore it somewhere.