beeim image processor for web
beeim is an experimental lossless and lossy image processor (PNG) designed to transform the image data for Web (more)
v0.04
usage — examples
beeim -s1 myfolder
beeim -predicter=N *.png
encoder
bitdepth
| original |
-bitdepth=8 -s4 |
| 115.76 KB |
90.01 KB |
| colortype 3 — 4 bits/pixels, 16 colors |
colortype 3 — 8 bits/pixels, 16 colors |
colortype
| original |
-colortype=0 -filter=7 -s4 |
| 38.56 KB |
35.23 KB |
| original |
losslessly optimized |
palette sorting
alpha
one transparent
| original |
-aedges -rgb: 229 229 229 -s4 |
| 148.24 KB |
99.91 KB |
| colortype 6 — RGB & alpha |
colortype 2 — RGB + tRNS |
one transparent
| original |
-aedges -rgb: 229 229 229 -s4 |
| 33.53 KB |
26.41 KB |
| colortype 3 — tRNS: 73 |
colortype 3 — tRNS: 1 |
color to alpha
| original |
-aalpha -filter=6 -s4 |
| 207.10 KB |
187.12 KB |
| colortype 2 — RGB |
colortype 6 — RGB & alpha |
predicter
higher quality
| original |
-predicter=100 |
| 537.87 KB |
271.15 KB |
| butteraugli |
0.8346427679 — 3-norm: 0.324535 |
| ssimulacra2 |
94.45217471 |
| dssim |
0.00006582 |
| encoding speed (no deflate) |
0.03s |
lower quality
| original |
-predicter=1 |
| 537.87 KB |
107.14 KB |
| butteraugli |
2.5087327957 — 3-norm: 1.301013 |
| ssimulacra2 |
78.00423028 |
| dssim |
0.00194928 |
| encoding speed (no deflate) |
0.02s |
quantizer
higher quality
| original |
-quantizer=100 |
| 537.87 KB |
296.62 KB |
| colortype 6 — 82616 colors |
colortype 6 — 36443 colors |
| butteraugli |
0.6894908547 — 3-norm: 0.260471 |
| ssimulacra2 |
95.13557670 |
| dssim |
0.00003641 |
| encoding speed (no deflate) |
0.04s |
lower quality
| original |
-quantizer=1 |
| 537.87 KB |
179.62 KB |
| colortype 6 — 82616 colors |
colortype 6 — 8276 colors |
| butteraugli |
3.0035052299 — 3-norm: 1.325476 |
| ssimulacra2 |
83.94996991 |
| dssim |
0.00105349 |
| encoding speed (no deflate) |
0.02s |
palettizer
256 colors max
| original |
-spalette=1 |
| 92.33 KB |
35.25 KB |
| colortype 6 — 6918 colors |
colortype 3 — 256 colors |
| butteraugli |
1.3800112009 — 3-norm: 0.321013 |
| ssimulacra2 |
93.89273547 |
| dssim |
0.00002056 |
| encoding speed (no deflate) |
0.01s |
svgz
PNG to SVGZ
| original |
WebP (default) |
-quality=75 |
| 302.60 KB |
64.64 KB |
55.11 KB |
| butteraugli |
4.3000140190 |
2.7391533852 |
| ssimulacra2 |
78.31788628 |
84.30371809 |
| dssim |
0.00107136 |
0.00062889 |
| encoding speed (total) |
0.03s |
0.03s |
<img src="file.svgz" alt="desc" width="512" height="512">
AddType image/svg+xml .svgz
AddEncoding gzip .svgz
beeim myfile.svgz
pngbr
AddType image/png pngbr
AddEncoding br pngbr
beeim
-----------------------------------------------------------------
beeim v0.04 - experimental web image processor
-----------------------------------------------------------------
css-ig.net/beeim - by Cedric Louvrier
-----------------------------------------------------------------
-colortype=N [0,2,3,4,6] set colortype
-filter=N [0-9] set filter
-bitdepth=N [1,2,4,8] set bitdepth
* if applicable on image data *
-psorting=N [0-13] try this group of palette sorting
-psub=N [1-8] isolate this sorting from the group
-psortb=N [1-3] try all sorting - set internal effort
-pre pre-optimize image data without compression
-reset remove image data optimization
-inflate uncompress the image data
-reflate=N [1-100] recompress the image data
-deflate=N [1-100] additional iterations over profiles
-qflate=N [1-2] optimize deflate stream from:
1: low, 2: med/high compressed source
-grayscale=N [1-3] grayscale - 1: RGB, 2: line, 3: average
-graycolor=N [1-3] (default) auto, 1: red, 2: green, 3: blue
-resize=N [24-4096] image downscaler (keep ratio)
-rotate=N 1: 90, 2: 180, 3: 270
-crop auto-crop image data
-posterize=N [1-100] posterizer level
-predicter=N [1-100] lossy filter using prediction
-quantizer=N [1-100] color quantizer strenght
-palette=N [1-100] convert to palette using liq
-spalette=N [1-100] convert to palette (pingo's)
-palpha apply palette only on RGB, preserve alpha
would be use with -spalette or -palette=N
-apremul=N [0-1] (un)premultiply alpha
-aedges set transparency to one color only
-anotrans blend colors to remove transparency
-aalpha create an alpha channel from the image
-aextract encode RGB and A files
-acombine search RGB and A files and combine
-alpha always encode with an alpha channel
-atransform=N transform RGB data:
1: extend, 2: color noise, 3: gray noise
use -filter=N to transform with this filter
-jpeg=N [1-100] convert and set JPEG quality
-jsample=N [0-3] 0: 444, 1: 420 sharp, 2: 420, 3: 400
-jprogressive=N [0-2] 0: no, 1: yes, 2: y+scans
-webp=N [1-100] convert and set WebP quality
-wsample=N [0-1] 0: VP8, 1: VP8 sharp
-webpl encode to WebP lossless
-wpal keep palette from PNG, auto use predictors
-pngbr encode to pngbr (brotli)
-svgz=N [1-100] convert to SVGZ
user could affect image in SVGZ with -jsample=N
feed its own svgz file to convert to PNG
-rgb: N N N use this color for transforms (if applicable)
-s0 to -s4 optimization strategies / compression level
-nodeflate no compression
-force always overwrite files
license
- beeim would be free for use
- you would use beeim for exclusive private usage only & at your own risk
- repackaging, redistributing, downloading, reselling or reusing beeim through any other service (Web, GUI, etc.) would *not* be permitted, even for non-commercial / non-profit purpose
- you may use PNG files produced by beeim for whatever purpose
download