Brunsli is a lossless JPEG repacking library.
Brunsli allows for a 22% decrease in file size while allowing the original JPEG to be recovered byte-by-byte.
VERY GOOD NEWS: Brunsli is on its way to become standardized. Brunsli has been specified as the lossless JPEG transport layer in the Committee Draft of JPEG XL Image Coding System and is ready to power faster and more economical transfer and storage of photographs.
We are committed making JPEG XL a first-class citizen of the open-source and closed-source worlds, and we will integrate it into image and networking related tools.
The currently planned/on-going integration work includes:
- one-shot C API / dynamic library
- WASM module
- Node.js module
- Java bindings
- Python libraries support (OpenCV, imageio, PythonMagic, PIL, etc.)
- Python bindings
- Nginx transcoding module
- Nginx serving module
- Apache transcoding module
- Apache serving module
Clone and prepare
Run the following commands to clone and prepare brunsli:
git clone --depth=1 https://github.com/google/brunsli.git cd brunsli git submodule update --init --recursive mkdir bin cd bin cmake ..
Linux & macOS
On Linux and macOS, compile and install by running:
make -j make -j install
On Windows, compile with Visual Studio: