pingo optimizer

pingo, a fast image optimizer

pingo is an experimental, fast Web PNG/JPG optimizer which offer lossless, web lossless or lossy compression. it performs image reductions over iterations thanks to recursive multi-processing and multithreading systems


auto optimizer for Web convert PNG or JPG to sRGB
do image compression automatically supports CMYK JPG — iCCP/ICC color or gray
auto JPG image rotation APNG optimization
auto rotation according to the orientation tag optimize animated PNG losslessly or lossy
image transformations clean all private data
PNG <-> JPG, grayscale, scaling, no trans remove private or useless data from images


highly optimized speed — compression multiprocessing — multithreading
palette sorting, advanced filters, SIMD opt. process multiple files and multiblocks comp.
multiple adaptive lossy targets high quality
set lossy filtering, quantization or paletted detect JPG quality, no color differences
management of some corrupted files
try to handle corrupted files automatically

manual v0.98


always do backup before using pingo. try on test files/folders especially made for this. understand that this tool is processing all files in subfolders. it could convert/reduce the visual quality of your files and overwrite them without any backup or warning

see some examples for pingo usage

options range type effect
-auto | -auto=N auto [1-100] optimize the image for Web (default)
-s0 to -s9 0 — 9 web lossless web lossless optimization | compression level
-pngquality=N 1 — 100 lossy auto-select lossy type
-pngfilter=N 1 — 100 lossy (type) use lossy filter to transform data
-pngpalette=N 1 — 100 lossy (type) quantize to paletted (256 colors max)
-pngcolor=N 1 — 100 lossy (type) reduce number of colors (soft)
-pngrgb=N 1 — 100 lossy (type) reduce number of colors (strong)
-pngconvert=N 0 — 12 lossless-lossy convert JPG to PNG using a filter
-pngstrip=N 0 — 3 lossy remove non-critical PNG chunks (see details)
-jpgquality=N 1 — 100 lossy set JPG quality
-jpgsample=N 0 — 2 lossy set JPG subsampling
-jpgtable=N 0 — 5 lossy set JPG quantization table
-jpgfilter=N 0 — 10 lossy enhance details and adapt quality
-jpgconvert lossy convert PNG to JPG <=> -rgb
-jpgscale lossy auto-scaling for high definition JPG
-jpgstrip=N 0 — 3 lossy remove non-critical JPG segments (see details)
-apng=N 0 — 4 lossless-lossy define APNG optimization type (see details)
-apngquality=N 1 — 100 lossy set APNG quality
-fast lossy just remove chunks or segments <=> -strip=N
-strip=N 0 — 3 lossy remove PNG/JPG chunks/segments (see details)
-srgb=N 0 — 3 lossy control the conversion to sRGB (see details)
transformations effect
-srgb force conversion to sRGB for PNG and JPG (always overwrite)
-grayscale convert image data to grayscale
-notrans convert RGB data to remove transparency <=> -rgb
-rgb: N N N set background color in red, green and blue (0-255) <=> -notrans or -jpgconvert
shortcuts effect
-lossless enable strict lossless optimization
-compress, -c just do recompression
-nocompression, -nc keep the data uncompressed for output
-soft lossy but high quality presets (PNG and JPG)
-text convert an input JPG text image to PNG
trials effect
-uncompress, -u just do uncompression
-reset force filter none, convert RGB data if alpha is 0, uncompress
controls effect
-nomulti, -low disable multiblocks/multiprocessing
-multiprocess=N enable or disable the multiprocessing (default enabled)
-multiblocks=N set the number of threads (default: 4)
-trials=N set the trials level in some profiles
-verbose=N set the verbose level (0=quiet, 1=result, 2=result and %, 3=result, % and size)
-q, -quiet set verbose to 0
no[value] effect
-nopng disable PNG processing
-nojpg disable JPG processing
-noapng disable APNG processing
-nostrip do not remove PNG/JPG chunks/markers
-nopngstrip do not remove PNG chunks
-nojpgstrip do not remove JPG markers
-nosrgb avoid sRGB conversion for PNG and JPG
-nopngsrgb avoid sRGB conversion for PNG
-nojpgsrgb avoid sRGB conversion for JPG
-nojpgcheck do not check JPG quality
-nodate restore modification date
-noalpha do not change RGB if alpha is 0
-notrials just do recompression
-nodithering disable diffusion (palette/filter)
-norotation ignore JPG orientation tag
-noconversion do not convert PNG to JPG in auto
-nocheck disable checking in auto
-noext do not check/change extension according to file header