Python bindings for Google's Guetzli, a JPEG encoder that optimises JPEG compression
Project description
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.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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for pyguetzli-1.0.9-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33f9e92a0f5e0774570a7eb93cefa5ffe18e89b3737d4a9f05a22234d9bb225c |
|
MD5 | 06e654a0be08c949b9ccef9abe93e310 |
|
BLAKE2b-256 | 4542df7ffaa38ca9ec985a6d772f9f7899f0f6e11254182cbf6b0dc01af50299 |
Hashes for pyguetzli-1.0.9-cp39-cp39-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a91da7a37a9296254868dcff36475a31cfcc9a1171bf225b4d9099263ab53989 |
|
MD5 | 018e6c6ced06928fcacdb5a02a09ecd1 |
|
BLAKE2b-256 | 0d4b94f7b35d3ebc00e89441ba929c2ce4c4aefa8c022f8d47d56c88a066a749 |
Hashes for pyguetzli-1.0.9-cp39-cp39-manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9811a4706c0e9bb612fcc2b090aa8726362bb07a156f27d4e3623e1a8c78e91 |
|
MD5 | 8f0f436313ea5f8484530996fcee2a47 |
|
BLAKE2b-256 | d72a4c33662cb24593c38ac47bdf87bca00d25d28dd0062010a12b91a8a8f2a0 |
Hashes for pyguetzli-1.0.9-cp39-cp39-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 85f26b4c6359c23038bf6a9c4350074416945356c0612933be2eba04fb0ab939 |
|
MD5 | a1d2965f3282cc457ea5d17d314f66f8 |
|
BLAKE2b-256 | 51e9404a2ef506d6e957acb51ad2a39a296b5fb9bddced94eb97dbf735fd54ff |
Hashes for pyguetzli-1.0.9-cp39-cp39-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0ee8241438875a2b3bc18456f036092c0f287c2ae1922426cac1803baf716e1 |
|
MD5 | 0347bbdc0041a61bfabd0b2e74b5f4d5 |
|
BLAKE2b-256 | acd7298209335c591e4cf25c7cbbb781c99de8a9118d70a01ab3ee570d34babd |
Hashes for pyguetzli-1.0.9-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 753bc66ec9f49e34643fb3036ab3a98bb999dafb52554dedbdfabda42331443c |
|
MD5 | c8a8dc13a7f28c1d45efe776f18c85cc |
|
BLAKE2b-256 | da94fb42bb40478d85e893296024be16e390f13c215160538126d8e0383d61c4 |
Hashes for pyguetzli-1.0.9-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | da923c13ab93691e49295480e2a53f5620b00a3afe74e75212f78d3c2431d07b |
|
MD5 | 41b8a1becc9f00a22b8d5188de6f9917 |
|
BLAKE2b-256 | 39fabb936f212d9c7ab866da606d0d1104bf2ca0619cdfc53d6daa9c16b08166 |
Hashes for pyguetzli-1.0.9-cp38-cp38-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 183698a167cbca329046eb54f26e8bf0a79d04f85a1c696a586cea1db8d9cc0f |
|
MD5 | fb8e297deec4a32811eed015541a3e50 |
|
BLAKE2b-256 | 9db922f969072473a5f0d633cf0993ab63c3f543b241be920b628be80f61bff3 |
Hashes for pyguetzli-1.0.9-cp38-cp38-manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ba56b6949b81b4c9b772259289bd82f256194ca29ee6975adee99e12c7f24f0 |
|
MD5 | a625c1f9fec2991d1db88f430193bf2e |
|
BLAKE2b-256 | 29f7dc7df071eaff76e40ac7dbd93fe911e2bee5449a601832fefcd13a165bfa |
Hashes for pyguetzli-1.0.9-cp38-cp38-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 88c2d69fa4b5d26875e0b3faec046077da755ced27e4a4201e07bc4f681554bb |
|
MD5 | d7ca92cf537f0ad163c97f2a920f4009 |
|
BLAKE2b-256 | 2b6ca73306201d4ce7bda6e8a541c8527ce555fee2ea25fdc9f85a5f8358e854 |
Hashes for pyguetzli-1.0.9-cp38-cp38-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b22ca302e150a8a6ea8fb7a9085ef0f092be52bd62800dc31c167a9500fb90e |
|
MD5 | 958d7907a95abea71ba513798d72d355 |
|
BLAKE2b-256 | cd73396a8927e01ab4997c116c3d5e117eca49fa3eb1af0836d9ec0e4ab7166e |
Hashes for pyguetzli-1.0.9-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4559c152c9628d1f0c5f53f24d5d4b099f30986bf6a2876922faad847b9b4a32 |
|
MD5 | 7b9dc239189318385304938cf119c441 |
|
BLAKE2b-256 | e4fa6c2adf19eb7680f38afe49e1c30913eb785c05826df4095ad29a01d53e9f |
Hashes for pyguetzli-1.0.9-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a5ed90be0b448d35153e043eb12b4abdb8badf10281596f116771f5321c8743a |
|
MD5 | 49d2f7615ecbb5320511f16b8da4338e |
|
BLAKE2b-256 | e6dff696db3e4fd3d50914baea60af3677a4833f4c34d272e80f359330bf831d |
Hashes for pyguetzli-1.0.9-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff02463b797814844f9e8b6f3bce07138f46732e5e94ad2d93de005901bfe363 |
|
MD5 | 46fb9c42531b1018e17f47d531780896 |
|
BLAKE2b-256 | 636e3c01e1e8f1f24544245ad8cdb56b6413b124ed19bfe2e25f2fdf07ec6156 |
Hashes for pyguetzli-1.0.9-cp37-cp37m-manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c53afa3f3012fb42d5682dd2d5c1c2a41529d71a0ef0f77c5ba94839f23added |
|
MD5 | 9bbb4f807f3361297f5d8195a350eef2 |
|
BLAKE2b-256 | a22c30dc9d0a9320d808f7766b8029a3a19db47c271d7cbba2b9ddbb779c2aab |
Hashes for pyguetzli-1.0.9-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 31f53c3ee3207c5e3ccfc287a9e69b15686337d99cd945586de47c12ad0ac2b8 |
|
MD5 | d4a1f3b7b2ccfe8476cfbf6cb7ad4a26 |
|
BLAKE2b-256 | fe969d1b65426faffb96cd8fceea43a006355bfe6a817bc2cc7d13107d1d4ba6 |
Hashes for pyguetzli-1.0.9-cp37-cp37m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0242551bd7bf477acf937c9cd5a5ae326628b2edebe846c469d2e8cacab6888c |
|
MD5 | fffe8e686894a94a6a3ea49b52be832a |
|
BLAKE2b-256 | c134d561559c606b9322b9bdd0cb6f8ac4c9a0826728884328ecbbd7c673fa8e |
Hashes for pyguetzli-1.0.9-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ba66e81fc259b2b7e4fce46a2176d6149d721db52d3d01973b9cf125b7248d5 |
|
MD5 | 45a20f83858cb53d36bb2aace6d7772b |
|
BLAKE2b-256 | d2e3feb8e14f0902f685b3c73c53c63cc9402fc8ea370fffe08bab7ca24d6b84 |