libjxl is an open-source library for encoding and decoding images in the JPEG XL format. It provides the core codec functionality needed to compress source images into JPEG XL and decompress JPEG XL files back into common raster image representations.
The library supports adjustable quality, distance, and effort settings during encoding, and handles conversion between different color spaces during encode or decode operations. It also enables reading and writing of embedded metadata such as EXIF, XMP, and color profiles.
For performance, libjxl includes benchmarking tools for decode speed and supports distributing compression and decompression work across multiple threads to improve throughput.