A spec-conforming JPEG XL decoder written in pure Rust1.
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.10.1"
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.)image
: Integrate into theimage
crate.jxl_oxide::integration::JxlDecoder
will 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.
Footnotes
-
Integration with Little CMS 2, which is written in C, can be enabled with
lcms2
feature. ↩