Looks like I forgot to run OptiPNG. After that and ScreenshotCompress, I got it down to 2.44 KB, though TinyPNG's is still smaller.
I wonder, what does TinyPNG use that our programs don't? Could we start using that site or another newer compressor instead?
TinyPNG uses lossy compression. I believe OptiPNG is lossless only.
TinyPNG and the various other suites which provide the same function use several algorithms to combine colors and thus reduce the palette/bit depth. One of the popular lossy algorithms: http://pngquant.org/
Ah, that explains it! I'm glad we've been sticking to lossless then; allowing any quality loss in our screenshots could be a slippery slope.
I can go ahead and compress the first 11 screenshots that ventuz posted (the first half) and either post the smallest file sizes I get here or replace them as soon as I finish (which probably won't be tonight).
I just want to chime in to say that using color quantization (ie.: pngquant) can really shrink down the size without any color difference if used correctly (that is, if you specify an equal or greater number of colors as parameters, up to 256). It simply looks for the most used colors in the picture, then dither extra colors (hence why it can be lossless if there are not unmapped colors) and convert the picture to a palette-based format.
It can really be used for GB/NES-era screenshots. SNES can go up to 511 colors, though, so not an option there.
For example, there are 18 colors in the GBC SpongeBob screenshot, so it can be converted without issue:
Got these down to 2453 bytes and 7214 bytes respectively by adding pngout, advdef and deflopt to the mix. pngout does that lossless quantization automatically by the way. I think some other of these tools does that as well.
Like so:
if ! gifsicle -O2 -b "$1"; then
in="$1"
tmp="compress.sh-tmp-"$$".png"
fin="_$1"
rm -f "$fin"
sizes="-n1 -n2 -n3 -n4 -n5 -n6 -n7 -n8 -n9 -n10 -n11 -n12 -n13"
filters="0 1 2 3 4 5"
advpng -z -4 "$in"
optipng -o7 "$in" && advpng -z -4 "$in"
advdef -z -4 "$in" && DeflOpt "$in"
zopflipng -m "$in" "$tmp" && mv -f "$tmp" "$in"
for filter in $filters;do
for bufsize in $sizes;do
rm -f "$tmp"
while [ $(jobs -p|wc -l) -ge 4 ]; do sleep 0.2; done
if true; then
f="$tmp"."$BASHPID".png
pngout -v -f$filter $bufsize "$in" "$f"
advdef -z -4 "$f" && DeflOpt "$f"
flock -x 333
bsize="`stat -c %s $in`"
size="`stat -c %s "$f"`"
if [ $bsize -gt $size ]; then
mv -f "$f" "$fin"
else
rm -f "$f"
fi
fi &
done
done 333< "$in"
wait
mv -f "$fin" "$in"
fi
Doing this used to be standard practice (with tools available back then) when I still administered the site... I wonder why it is not anymore.
Joined: 12/8/2012
Posts: 706
Location: Missouri, USA
The SOTN screenshots are really looking good, Kurabu. It looks like you're getting the hang of updating screenshots, while keeping them at the lowest file size possible.
"But as it is written, Eye hath not seen, nor ear heard, neither have entered into the heart of man, the things which God hath prepared for them that love him." - 1 Corinthians 2:9
I like the idea of scaling them down, I felt they were too big before.
I was wondering if, in general, they may be look better with the black areas removed, i.e. like this:
With Mega Man X1, X2 and X3, it's really just a matter of turning the black area transparent. With Mega Man 3, 4, 5 and 6, one'd crop out the 8 black columns on the left of each screenshot and put them back together again.
There's one caveat in that the black bars are part of the actual NES output, and therefore technically shouldn't be cropped out. However, I think they look really distracting here.
Joined: 10/12/2011
Posts: 6444
Location: The land down under.
Screenshot isn't 320x240 (4:3) as what a PS game should be so...
shudders
<Mothrayas> what is most shuddering is the usage of photobucket in this day and age
Disables Comments and Ratings for the YouTube account.Something better for yourself and also others.
I respectfully disagree with changing the screenshot for Mega Man 9 to a 256x224 one, because while the game is a retro throwback to the NES Mega Man games, the screenshot you propose is not what the console outputs. The Wii can output 480p, and since our screenshots have to be resized to 320x240 (or 384x216 if it's 16:9) (because they'd be way too big for the page otherwise), the screenshot that's currently in place is much closer to the console output.
In my honest opinion, the screenshots for Mega Man 10 should be restored back to what they once were (as in, 320x240), because of what I said in my post (concerning Mega Man 9, but it's pretty much the same for Mega Man 10).