Skip to content

jxl-oxide v0.4.0

Compare
Choose a tag to compare
@tirr-c tirr-c released this 03 Sep 16:37
· 251 commits to main since this release
7853f90

Version 0.4.0 of jxl-oxide improves memory usage with updated frame renderer, and features cropped decoding.

Cropped decoding

jxl-oxide now supports rendering only part of the image. A region of interest can be specified using --crop option of jxl-dec since jxl-oxide-cli 0.2.3, or CropInfo struct in jxl-oxide. The renderer will only decode necessary parts of the bitstream.

Note that the syntax of --crop is unstable and subject to change.

Breaking changes

  • PassGroup and HfCoeff are removed. Instead, they are decoded into grids directly.
  • Frame decoding is rewritten; interface of jxl_frame::Frame has changed.
  • jxl_render and jxl_oxide methods now accept crop regions.
  • jxl_oxide::JxlRenderer is merged into jxl_oxide::JxlImage.
  • ImageMetadata::apply_orientation now accepts signed coordinates instead of unsigned ones.
  • is_delta_palette method is replaced with is_palette.

New features

  • jxl-oxide-cli: Add output_format option by @tirr-c in #59

Bugfixes

  • jxl-frame: Fix global MA tree node limit to match libjxl by @tirr-c in #66
  • jxl-oxide-cli: Apply orientation to reported image dimension by @tirr-c in #72

Docs

Full Changelog: 0.3.0...0.4.0