Apply an aggressive set of ultimately deterministic optimizations to
raster image files where an actual file size reduction of not less than
50% was possible without the removal of intrinsic properties such as
alpha channels. Rendered image dimensions were always left unchanged.
The primary mechanisms employed during optimization are:
- PNG color mode conversion from TrueColor to indexed palette
+ Accomplished using NeuQuant neural-net color quantization algorithm
- Stripping of data blocks containing irrelevant information, such as:
+ XMP metadata fields
+ Embedded comment fields
+ ICC color profiles (simple graphics with basic color schemes only)
+ EXIF profiles
- Re-compression using "best" or "smallest" profile presets
All modifications are performed on lossless image formats and closely
visually inspected after processing to ensure no loss of apparent
details or introduction of new, unwanted artifacts.
Toolset used:
- RIOT (Radical Image Optimization Tool), v2024.1.0 64-bit
- AdvanceCOMP (part of the Advance Projects), v2.6 64-bit
- optiPNG, v7.9.1 64-bit
- PNGOUT, v2015.02.13 32-bit
Signed-off-by: Peter J. Mello <admin@petermello.net>
* Make paths portable for CloudSync when building manifest
* Enable CloudSync on Windows builds
* Fix "fetech server file" - Forgot to commit this, oops!
* Fix definition conflict with gzguts.h
* "Enable Cloud Sync for Windows UWP builds"
---------
Co-authored-by: WindowsDEV <WindowsDEV@WindowsDEV-VM.lan>
* [WINRT] Enable logging on __WINRT__ and bypass verbosidy in debug
* [UWP] wrong configuration prevents GLES to compile, common functions defines GL symbols
* [UWP] configure project to allow OPENGL on default configuration and copy MESA DLLs into UWP release
* [UWP] add MESA headers
* [UWP] add MESA EGL.lib needed for GLES context. However HAVE_OPENGL is better as GL cores use desktop version, so this is left for reference and to make the solution build with HAVE_OPENGLES
* [UWP] UWP is missing some GDI function definitions, implemented into MESA Gallium
* [UWP] Configure Release project too
* [UWP] Add mesa alpha-2 release dlls
* [UWP] allow griffin and vide_driver to have an OPENGL context
* [UWP] allow wgl context to work with mesa under WINRT
* [UWP] BUG: have to modify height/width getters and align them to MESA because the screen resolution is not right in gl context. Pending further investigation
* [UWP] fix ANGLE build
* [UWP] remove duplicate import code.
* (UWP) Cleanup filters file
* MESA screen destroy fix and Yabasanshiro hack. Align to alpha-2-hack tag
---------
Co-authored-by: Gabriel Morazán <35014183+GABO1423@users.noreply.github.com>
* Rename the `MIN_MATCH` defined by xdelta3 to `XD3_MIN_MATCH`
- zlib defines its own macro by that name, but with a different value
* Don't redefine `SIZEOF_ARRAY` in xdelta3 if it already exists
* Don't define ssize_t in xdelta3, rely on libretro's definition instead
* Enable xdelta3 support in MSVC 2015-2019
* Fix some invalid MSBuild condition syntax
* Always build xdelta with XD3_USE_LARGESIZET as 1
* Fix an `#if` in task_patch.c
* Enable `HAVE_XDELTA` in the UWP build
* First crack at fixing Xdelta support for Android