|Github| |Discord| |PYPI Version| |Build Status| |Black| |License|
.. figure:: https://github.com/wanadev/yoga/raw/master/logo.png :alt:
YOGA is a command-line tool and a library that can:
glTF and GLB
_.Images are opened using Pillow and optimized using Guetzli and MozJPEG for JPEGs, Zopflipng for PNGs and libwebp_ for WEBPs.
3D Models are converted and optimized using assimp_. If models contain or reference images, they are processed by YOGA's image optimizer.
EXAMPLE: Converting and optimizing an image from CLI::
yoga image input.png output.png
yoga image --output-format=jpeg --jpeg-quality=84 input.png output.jpg
yoga image --help
EXAMPLE: Converting and optimizing a 3D model from CLI::
yoga model input.fbx output.glb
yoga model --no-graph-optimization --no-meshes-optimization --image-output-format=jpeg --image-jpeg-quality=84 input.fbx output.glb
yoga model --help
.. _glTF and GLB: https://www.khronos.org/gltf/ .. _Pillow: https://github.com/python-pillow/Pillow .. _Guetzli: https://github.com/google/guetzli .. _MozJPEG: https://github.com/mozilla/mozjpeg .. _Zopflipng: https://github.com/google/zopfli .. _libwebp: https://chromium.googlesource.com/webm/libwebp/ .. _assimp: https://github.com/assimp/assimp
the install section of the documentation <https://wanadev.github.io/yoga/install.html>
_Command Line Interface (CLI) <https://wanadev.github.io/yoga/cli/index.html>
_Python API <https://wanadev.github.io/yoga/python/index.html>
_Contributing <https://wanadev.github.io/yoga/contributing.html>
_[NEXT] (changes on master
that have not been released yet):
v1.3.1-1:
This version has no code change from the v1.3.1. It is only an update of the distribution :
A brand new standalone version was build for Linux
The Windows standalone distribution was updated (changes in documentation)
dist: Added scripts to build a standalone binary version of YOGA on Linux
v1.3.1:
v1.3.0:
v1.2.3:
v1.2.2:
v1.2.1:
v1.2.0:
arm64
and universal2
wheels for macOSx86
and x68_64
wheels for musl-based Linux distro (Alpine,...)imagequant <https://github.com/wanadev/imagequant-python>
_v1.1.2:
v1.1.1 (not published):
v1.1.0:
JPEG Optimization:
Honor the JPEG orientation EXIF tag
JPEG optimization has been improved by using some optimizations from MozJPEG after the Guetzli encoding (from 2.4 % to 7.3 % of additional size reduction)
PNG Optimization:
YOGA can no more output a PNG larger than the input one when performing a PNG to PNG optimization
CLI:
Allow to cancel an optimization using Ctrl+C (NOTE: may not work on Windows)
Add a --version
option to get YOGA's version
Improve yoga --help
usage
Python versions:
Python 2.7 support dropped
NOTE for packagers:
new dependency to mozjpeg-lossless-optimization <https://github.com/wanadev/mozjpeg-lossless-optimization>
_
v1.0.0:
--png-slow-optimization
flag)--no-fix-infacing-normals
to disable Assimp's "fix
infacing normals" postprocess (#32, #33)v0.11.1:
v0.11.0:
v0.10.2:
v0.10.1:
v0.10.0:
v0.10.0b1:
v0.9.1b1:
v0.9.0b1: First release (only GLB output for models, no image auto output format)
.. |Github| image:: https://img.shields.io/github/stars/wanadev/yoga?label=Github&logo=github :target: https://github.com/wanadev/yoga .. |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/yoga.svg :target: https://pypi.python.org/pypi/yoga .. |Build Status| image:: https://github.com/wanadev/yoga/actions/workflows/python-ci.yml/badge.svg :target: https://github.com/wanadev/yoga/actions .. |Black| image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://black.readthedocs.io/en/stable/ .. |License| image:: https://img.shields.io/pypi/l/yoga.svg :target: https://github.com/wanadev/yoga/blob/master/LICENSE