pyguetzli
                                
                                 pyguetzli copied to clipboard
                                
                                    pyguetzli copied to clipboard
                            
                            
                            
                        Python bindings for Google's Guetzli, a JPEG encoder that optimises JPEG compression
PyGuetzli
|Github| |Discord| |PYPI Version| |Build Status| |License|
PyGuetzli is a Python binding for Google’s
Guetzli <https://github.com/google/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
- Installation <https://wanadev.github.io/pyguetzli/install.html>_
- Guetzli Python Module <https://wanadev.github.io/pyguetzli/guetzli.html>_
- Using with PIL / Pillow images <https://wanadev.github.io/pyguetzli/pil_image.html>_
- Contributing / Reporting a bug <https://wanadev.github.io/pyguetzli/contributing.html>_
More topics at https://wanadev.github.io/pyguetzli/
Usage Example
.. code-block:: python
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
- 
[NEXT] (changes on masterbut not released yet):- Nothing yet ;)
 
- 
v1.0.15: - Added Python 3.12 support (@flozz)
- Removed Python 3.7 support (@flozz)
 
- 
v1.0.14: - Guetzli: Apply a better patch to fix the crash caused by a bad access to a vector revealed when compiled with "-D_GLIBCXX_ASSERTIONS" (David Odin)
 
- 
v1.0.13: - Added Python 3.11 support
 
- 
v1.0.12: - Guetzli: Fixed a crash caused by a bad access to a vector revealed when compiled with "-D_GLIBCXX_ASSERTIONS" (David Odin)
 
- 
v1.0.11: - arm64and- universal2wheels for macOS
- x86and- x68_64wheels for musl-based Linux distro (Alpine,...)
- win32wheels for Windows (- x86_64were already available)
 
- 
v1.0.10: Python 3.10 support and wheels 
- 
v1.0.9: Provides prebuilt wheel packages 
- 
v1.0.8: Updates Guetzli and python dependencies 
- 
v1.0.7: Fixes unicode issue when installing pyguetzli (#4) 
- 
v1.0.6: Fixes a typo in compilator options on unix 
- 
v1.0.5: Adds optimization flags when compiling Guetzli 
- 
v1.0.4: MS Windows support 
- 
v1.0.3: Updates Guetzli library 
- 
v1.0.2: PIL Images: fixes crash with non RGB/RGBA images (grayscale, indexed,…) 
- 
v1.0.1: Adds --std=c++11flag when building Guetzli
- 
v1.0.0: - New and simpler API
- Built-in function to deal with PIL / Pillow Images
- Documentation (Sphinx)
- Guetzli update
 
- 
v0.9.0: Initial release 
.. |Github| image:: https://img.shields.io/github/stars/wanadev/pyguetzli?label=Github&logo=github :target: https://github.com/wanadev/pyguetzli .. |Discord| image:: https://img.shields.io/badge/chat-Discord-8c9eff?logo=discord&logoColor=ffffff :target: https://discord.gg/BmUkEdMuFp .. |PYPI Version| image:: https://img.shields.io/pypi/v/pyguetzli.svg :target: https://pypi.python.org/pypi/pyguetzli .. |Build Status| image:: https://github.com/wanadev/pyguetzli/actions/workflows/python-ci.yml/badge.svg :target: https://github.com/wanadev/pyguetzli/actions .. |License| image:: https://img.shields.io/pypi/l/pyguetzli.svg :target: https://github.com/wanadev/pyguetzli/blob/master/LICENSE