PyGuetzli
PyGuetzli is a Python binding for Google’s Guetzli library.
Description of Guetzli from official’s repo:
Guetzli is a JPEG encoder that aims for excellent compression density at high visual quality. Guetzli-generated images are typically 20-30% smaller than images of equivalent quality generated by libjpeg. Guetzli generates only sequential (nonprogressive) JPEGs due to faster decompression speeds they offer.
Documentation
More topics at https://wanadev.github.io/pyguetzli/
Usage Example
import pyguetzli
input_jpeg = open("./test/image.jpg", "rb").read()
optimized_jpeg = pyguetzli.process_jpeg_bytes(input_jpeg)
output = open("./optimized.jpg", "wb")
output.write(optimized_jpeg)
Changelog
- 1.0.11:
arm64
anduniversal2
wheels for macOSx86
andx68_64
wheels for musl-based Linux distro (Alpine,...)win32
wheels for Windows (x86_64
were already available)
- 1.0.10: Python 3.10 support and wheels
- 1.0.9: Provides prebuilt wheel packages
- 1.0.8: Updates Guetzli and python dependencies
- 1.0.7: Fixes unicode issue when installing pyguetzli (#4)
- 1.0.6: Fixes a typo in compilator options on unix
- 1.0.5: Adds optimization flags when compiling Guetzli
- 1.0.4: MS Windows support
- 1.0.3: Updates Guetzli library
- 1.0.2: PIL Images: fixes crash with non RGB/RGBA images (grayscale, indexed,…)
- 1.0.1: Adds
--std=c++11
flag when building Guetzli - 1.0.0:
- New and simpler API
- Built-in function to deal with PIL / Pillow Images
- Documentation (Sphinx)
- Guetzli update
- 0.9.0: Initial release