Recent Releases

0.11.026 Nov 2024 08:25 major feature: Added: - Gain Map API : `JxlGainMapBundle` struct and API functions to read and write gain map bundles`JxlGainMapWriteBundle` and. `JxlGainMapReadBundle` as well as handling compressed ICC profiles: `JxlICCProfileEncode` and `JxlICCProfileDecode`. Decoder API: added `JXL_DEC_BOX_COMPLETE` event to signal that the output. Buffer for the current box has received all contents. Previously, this was to be determined from the fact that the decoder had moved on either to. `JXL_DEC_SUCCESS` or to another subsequent `JXL_DEC_BOX`. This change is. Made backward-compatible by the fact that the new event must be explicitly Subscribed to, and that `JXL_DEC_SUCCESS` / `JXL_DEC_BOX` still occur Afterwards and still imply that the previous box must be complete. ### Changed / clarified. Avoiding abort in release build.
0.10.223 Mar 2024 00:45 minor bugfix: : - in (lossless) encoding. - re-enable installation of MIME file. - in streaming mode.
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 (