programs: Optimize GIFs (Pt 2) #238
Reference in New Issue
Block a user
No description provided.
Delete Branch "ace-dent/kolibrios-gitea:PR-OptimizeGIFs2"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Lossless optimization of GIF image files.
Processed with
gifsicle -O3
(extreme) orgifsicle --no-loopcount --no-comments
(when only minimal adjustment is permitted).LZW stream optimized with
flexigif -p -f -a=1
. Methods selected to ensure optimal compression with final KPACK step, since better LZW may reduce LZMA used in bundling programs; evaluated with:xz --format=lzma --check=none --lzma1=mode=normal,dict=64KiB,nice=273,lc=3,lp=0,pb=2 -k -c in.gif > out.lzma
Tested with GIF Inspector and via code review.
📦 Program graphics (compiled or included with software):
demos/free3d04
, saved 1489 bytes, ~4%.media/midamp/
3 files, saving 131 bytes, average ~4%.testing/cpuid/trunk/cyrix.gif
, saved 25 bytes, ~3%.📖 Documentation only artwork (distributed outside a program):
Beat/Beat.gif
, saved 29 bytes, ~0.5%.🥀 Old vestigial images, no longer used (pending deletion):
demos/3detx60b/
2 files, saving 762 bytes, average ~5%.cpuid
c08af2b870Lossless optimization of GIF image files. Selective use of `gifsicle -O3` and/or `flexigif -p -f -a=1`, ensuring optimal KPACK LZMA compression. 📦 Program graphics (compiled or included with software): - Slimmed `cpuid/trunk/cyrix.gif`, saved 25 bytes (~3%).
midamp
Lossless optimization of GIF image files. Selective use of `gifsicle -O3` and `flexigif -p -f -a=1`, while ensuring optimal KPACK LZMA compression. 📦 Program graphics (compiled or included with software): - Slimmed `midamp/trunk/bottom.gif`, saved 87 bytes (~6%). - Slimmed `midamp/trunk/buttons.gif`, saved 29 bytes (~4%). - Slimmed `midamp/trunk/hdr.gif`, saved 15 bytes (~1%).
Beat
Lossless optimization of GIF image files, using `gifsicle -O3 --no-comments`. 📖 Documentation only artwork (distributed outside a program): - Slimmed `Beat/Beat.gif` 5607 → 5578 bytes, saved 29 bytes (~0.5%)
free3d04
Lossless optimization of GIF image files. Used `gifsicle -O3` and `flexigif -p -f -a=1`, while ensuring optimal KPACK LZMA compression. 📦 Program graphics (compiled or included with software): - Slimmed `demos/free3d04` 29787 → 28298 bytes, saved 1489 bytes, ~4%.
3detx60b
Lossless optimization of GIF image files. Using `gifsicle -O3` and `flexigif -p -f -a=1`, while ensuring optimal KPACK LZMA compression. 📦 Program graphics (compiled or included with software): - Slimmed `3detx60b/map.gif` 6026 → 5570 bytes, saved 456 bytes, ~7%. - Slimmed `3detx60b/texpack.gif` 9439 → 9133 bytes, saved 306 bytes, ~3%.
WIP: programs: Optimize GIFs (Pt 2)to programs: Optimize GIFs (Pt 2)Tested and looks fine. This PR saves ~1.3 KiB in final distributions.
Why not merge with #235?
Thanks @Sweetbread -
Does it matter? I prefer smaller atomic commits, than monolithic ones. Normally it makes review and merging easier.
It's also because I'm unsure about Gitea and Team KolibriOS approach to PR's. 😃
I'm talking about PRs, not commits
@Sweetbread - same logic. Big PR's are difficult to review for quality...
Some projects are slow to review, accept and merge PR's, so it can also avoid conflicts if they are sat around for too long.
In future I can combine PR's where it makes sense.
Let's see how long it takes for these 2 trivial PR's to get merged... 😉
I tested
free3d04
,midamp
andbeat
, all works okay for me.Can't properly test
cpuid
, as I don't have Cyrix CPU.And can't test
3detx60b
, as I don't found this program in image.But probably, this changes also shouldn't break anything.
@Burer - thanks for your time and testing!
af75b2fb54
to281b386b65