#jxl #jpeg-xl

sys jpegxl-sys

Rust wrapper for JPEG XL reference implementation

15 releases

0.3.7 Apr 13, 2021
0.3.5-alpha.0 Mar 24, 2021
0.3.2 Feb 16, 2021
0.3.0 Jan 30, 2021
0.1.6 Aug 25, 2020

#144 in Images

Download history 56/week @ 2021-01-16 26/week @ 2021-01-23 63/week @ 2021-01-30 39/week @ 2021-02-06 225/week @ 2021-02-13 9/week @ 2021-02-20 13/week @ 2021-02-27 66/week @ 2021-03-06 72/week @ 2021-03-13 76/week @ 2021-03-20 46/week @ 2021-03-27 44/week @ 2021-04-03 71/week @ 2021-04-10 93/week @ 2021-04-17 17/week @ 2021-04-24 26/week @ 2021-05-01

251 downloads per month
Used in jpegxl-rs

GPL-3.0-or-later

61KB
1.5K SLoC

jpegxl-sys

jpegxl-sys is a wrapper over jpeg-xl library. Check out the original library here.

Building

Building jpeg-xl and statically linking is by default, requiring git command in PATH.

Since the library uses GCC extensions, you need to have a working GCC/Clang toolchain on Windows.

If you wish to use existing library and dynamic linking, then use the feature system-jxl. Set the custom include path and lib path with DEP_JXL_INCLUDE and DEP_JXL_LIB respectively.

Usage

Check out testing units in src/lib.rs for some examples.

Multithread

Because libjxl_threads uses std::thread, if you build and statically link jpeg-xl, you need to link libc++ or libstdc++ standard library as well. Using dynamic library doesn't need this requirement.

If you don't want the dependency, you can disable the threads feature.

Dependencies

~170KB