Skip to content
Practical JPEG Repacker
C++ Python C Java Other
Branch: master
Clone or download
Latest commit e30ac7f Oct 31, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
c Fix typo (#56) Oct 31, 2019
contrib Add early JPEG XL support for Python image processing libraries. (#40) Sep 9, 2019
docs (fixup emscripten build) (#44) Oct 10, 2019
java Update (#43) Oct 10, 2019
third_party Update (#48) Oct 18, 2019
wasm (fixup emscripten build) (#44) Oct 10, 2019
.gitmodules Update (#48) Oct 18, 2019
.travis.yml Travis CI: Add GCC 8, GCC 9, Clang and Xcode build (#54) Oct 31, 2019
BUILD Update (#48) Oct 18, 2019
CMakeLists.txt Prepase WASM codec (#23) Aug 22, 2019 Update (#10) May 9, 2019
LICENSE Update (#10) May 9, 2019
Makefile Update (#21) Aug 21, 2019 Readme: Add Windows compile instructions (#53) Oct 31, 2019
brunsli.cmake Update (#52) Oct 28, 2019
compiler_config_setting.bzl Add JNI wrapper (#38) Sep 2, 2019


Travis Build Status

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

Stay tuned!

Build instructions

Clone and prepare

Run the following commands to clone and prepare brunsli:

git clone --depth=1
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:

msbuild brunsli.sln
You can’t perform that action at this time.