A spec-conforming JPEG XL decoder written in pure Rust.
If you want to use it as a library, add jxl-oxide in Cargo.toml. jxl-oxide is a blanket crate
which covers various components of jxl-oxide.
[dependencies]
jxl-oxide = "0.12.5"Install jxl-oxide-cli using cargo install. It will install a binary named jxl-oxide.
cargo install jxl-oxide-cli
jxl-oxide and jxl-oxide-cli have different sets of feature flags.
For jxl-oxide:
rayon(default): Enable multithreading usingrayon.lcms2: Integrate into Little CMS 2 which supports arbitrary ICC profiles and enables CMYK to RGB conversion. Note that this will add dependencies written in C.moxcms: Integrate intomoxcmscrate which supports arbitrary ICC profiles likelcms2.moxcmsis written in pure Rust, so it won't add any additional C dependency.image: Integrate into theimagecrate.jxl_oxide::integration::JxlDecoderwill be made available.
For jxl-oxide-cli:
rayon(default): Enable multithreading usingrayon.mimalloc(default): Use mimalloc as memory allocator.__devtools(unstable): Enable devtool subcommands.__ffmpeg(unstable): Link to FFmpeg and enable video encoding in devtool subcommands.
Dual-licensed under MIT and Apache 2.0.