Recent Releases

0.9.211 Feb 2024 21:09 security: Fixed bugs in the gdk-pixbuf plugin some build issues Note: This release is for evaluation purposes and may contain bugs, including security bugs, that may not be individually documented when fixed. See the SECURITY.md file for details. Always prefer to use the latest release.
0.9.008 Jan 2024 19:09 minor feature: Added encoder API: add JxlEncoderSetExtraChannelDistance to adjust the quality of extra channels (like alpha) separately. encoder API: new api functions for streaming encoding: JxlEncoderSetOutputProcessor JxlEncoderFlushInput JxlEncoderOutputProcessor struct JxlEncoderSetOutputCallback JxlChunkedFrameInputSource struct JxlEncoderAddChunkedFrame encoder API: new options for more fine-grained control over metadata preservation when using JxlEncoderAddJPEGFrame: JXL_ENC_FRAME_SETTING_JPEG_KEEP_EXIF JXL_ENC_FRAME_SETTING_JPEG_KEEP_XMP JXL_ENC_FRAME_SETTING_JPEG_KEEP_JUMBF encoder API: new function JxlEncoderSetUpsamplingMode to change the upsampling method, e.g. to use nearest-neighbor upsampling for pixel art decoder API: implemented JxlDecoderSetOutputColorProfile and JxlDecoderSetCms to enable decoding to desired colorspace. cjxl can now be used to explicitly add/update/strip Exif/XMP/JUMBF metadata using the decoder-hints syntax, e.g. cjxl input.ppm -x exif=input.exif output.jxl djxl can now be used to extract Exif/XMP/JUMBF metadata encoder API: new function JxlEncoderDistanceFromQuality for convenience to calculate a distance given a quality Removed API: the Butteraugli API (jxl/butteraugli.h) was removed. encoder and decoder API: all deprecated functions were removed: JxlDecoderDefaultPixelFormat, JxlEncoderOptionsSetLossless, JxlEncoderOptionsSetEffort, JxlEncoderOptionsSetDecodingSpeed, JxlEncoderOptionsSetDistance, JxlEncoderOptionsCreate, as well as the deprecated enumerator values JXL_DEC_EXTENSIONS, JXL_ENC_NOT_SUPPORTED, JXL_TYPE_BOOLEAN, JXL_TYPE_UINT32, and deprecated type JxlEncoderOptions. decoder API: the signature of JxlDecoderGetColorAsEncodedProfile, JxlDecoderGetICCProfileSize, and JxlDecoderGetColorAsICCProfile changed: a deprecated unused argument was removed. Changed / clarified changed the name of the cjxl flag photon_noise to photon_noise_iso fixed how large boxes are decoded (#2958) fixed encoding files with unreadable patches (