Talk:PNGOUT

Latest comment: 2 years ago by Adx in topic Performance

Free? edit

Um, since when is commercial software with a trial considered "free"? Perhaps Adobe Flash is free as well, if that's the case... Esn 01:28, 12 May 2007 (UTC)Reply

Ok, seems that I misread the links a bit. But perhaps something should be added to this article about the commercial, "professional" version? Esn 01:30, 12 May 2007 (UTC)Reply
Is this ok? Cristan 01:54, 12 May 2007 (UTC)Reply

Ports edit

Since there are ports to Linux and Mac OS X, shouldn't we report them in the infobox? --Ysangkok 19:16, 17 May 2007 (UTC)Reply

I doubt it. They're not made by Ken Silverman nor are they official. Information about them will be a nice addition in the article itself though. Cristan 19:26, 17 May 2007 (UTC)Reply
Ken Silverman's site clearly offers only the .exe executable for Microsoft Windows. Accordingly, I have changed the Infobox description from "cross platform" to "Microsoft Windows" He also states on his freeware page that the compression algorithm is proprietary and common to commercial software that he sells, so it's not likely that any clone of pngout is a "port" of Silverman's original, but rather, a clone. — Quicksilver (Hydrargyrum)T @ 17:59, 17 January 2017 (UTC)Reply

Colourspace reductions edit

"PNGOUT also performs automatic bit depth, color and palette reduction where appropriate." Is this true? My 20050422 Linux version certainly doesn't; I always preprocess my PNGs with pngrewrite. If pngout does do this now, can you indicate when this functionality was added? Is it documented somewhere? The tutorial at http://advsys.net/ken/util/pngout.htm still says "It won't reduce the number of colors in images or convert the colors to grayscale unless all the colors correspond to PNG grayscale values already." Is it out of date? – gpvos (talk) 10:32, 28 May 2007 (UTC)

A lot has happened to PNGOUT since 2005. PNGOUTWin was released early 2006 with many new features, some of which have filtered through to PNGOUT, and both programs have been worked on a lot since then. I think the colour reduction feature was added last October. Unfortunately, I don't think the tutorial has been updated since PNGOUTWin was released.
In any case, try getting a more recent Linux port from here. If you run it without parameters, it will tell you about the newer command line options. It doesn't explicitly mention the addition of colour reduction, but does say you can disable it with '/ks'.
You shouldn't need to preprocess images with pngrewrite any more. And, if you omit the pngrewrite step, then you won't have to manually compare the input and output files to check for a size decrease; by default, PNGOUT won't write a larger file, but just retain the input file. CountingPine 17:02, 28 May 2007 (UTC)Reply
Additional note: Looking again at the tutorial text, "It won't reduce the number of colours in images". PNGOUT can reduce the color type, and it can remove unused colours from a palette. But what it means, is that it won't change the color values of the pixels in the image. For example, if an image uses more than 256 colours, it won't remove colours (thereby changing the image) to shoehorn it into a palette. CountingPine 22:50, 30 May 2007 (UTC)Reply
In fact your quote just said this program does it. "It won't reduce the number of colors ... UNLESS ...", so in some situations, it does. Your quote simply implies it won't remove any of the visible colors, but others could be removed. Cristan 11:22, 28 May 2007 (UTC)Reply

An explanation to clarify the above notes: PNGOUT will never reduce the number of actual, visible unique colors. PNGOUT never makes changes to the final form of the displayed image. What it will do, if there are 256 or fewer unique colors in the visible image, is reduce the number of palette (color) entries in the PNG file. For example, if there are only 50 unique colors in the image, the new PNG file will have only a 50-color palette with no wasted entries, instead of a 256-color palette with 206 wasted entries. In most cases where this can be done, it results in a major reduction in file size to store exactly the same image. In addition, if every "color" is just a shade of black/grey/white (i.e., red, green, and blue are exactly equal for each palette entry), PNGOUT can make the PNG a greyscale image (monochrome with only white, no color tint) instead of a color image. Note that all these changes affect only file efficiency and, as PNGOUT says, never reduce the colors or make any other changes to the visible image itself, only to how it's stored. --Closeapple (talk) 23:19, 19 November 2007 (UTC)Reply

Other programs related to PNGOUT worth mentioning edit

I think freeware programs like PNGGauntlet (a GUI for PNGOUT) - http://brh.numbera.com/software/pnggauntlet/ and Irfanview's PNGOUT plugin - http://www.irfanview.com/plugins.htm should also be mentioned in the article. Very useful as the only GUI for PNGOUT mentioned in this article is not freeware. —Preceding unsigned comment added by 124.217.75.211 (talk) 08:39, 2 March 2008 (UTC)Reply

Sounds like a good idea. Be bold, go for it! By the way, when you use Talk pages, you should "sign" your posts by typing "~~~~" at the end of them. CountingPine (talk) 18:52, 4 March 2008 (UTC)Reply

Lossless edit

So is it or not lossless? —Preceding unsigned comment added by 130.161.157.206 (talkcontribs) 16:31, 27 October 2008

PNGOUT is lossless. It can remove header data (and removes it by default unless you specify -k), but the image data itself is never degraded; PNGOUT will only output data with the same colors for each pixel as the input, regardless of what algorithm or color type is selected. --Closeapple (talk) 10:07, 30 October 2008 (UTC)Reply

Performance edit

From my experience, PNGOUT is inefficient for relatively large images. In two senses: it works slower and, even more important, produces larger outputs than pngcrush does. Are there any [reliable] studies of this aspect to include in the article? I think, it is quite valuable information. — Preceding unsigned comment added by Mikhail Ryazanov (talkcontribs) 03:45, 3 February 2011 (UTC)Reply

In my tests, it also notoriously corrupts images, something no other PNG optimizer I tried suffers from. As for best compression, the winner almost always is using paired optipng -o4 -i0 -fix with advpng -z4 (tests done before zopfli came out though). KiloByte (talk) 12:03, 27 May 2013 (UTC)Reply
Not indeed, guys. See my investigation. A short conclusion is pngout is really good in performance.

The reason is that you don't have proper arguments specified, and pngout itself is not a brute tool, its commercial version, pngoutwin, is. (If you have time, read the article above and try to understand it, then I believe you'll never bother with pngcrush or optipng.)

Although the image itself is lossless and thus 'identical', but the data sent to the deflater(zipper) is not, the data is filtered. By default(in case you run the cmdline without any switch), pngout only uses one specific filtering method(determinated by the colorspace), whereas by default pngcrush/optipng tries several filtering method. Therefore bydefault pngcrush/optipng might win by this stage. But don't forget they both use zlib as their deflater, which is proven to be inefficient (compared to other implementations, such as 7-zip's zip engine, zopfli, or pngout's kzip). What pngout indeed lacks is the command line doesn't offer a brute way to try with different filters, therefore you can use a script that is able to do this. Although I don't have a chance to try the commercial one offered by its 'official companion', pngoutwin, but from its introduction, I think it offers brute tries with different filters. However what a shame most open-source wrappers don't try with different filters. So I wrote one script offering the feature.(Though, the filter trying is actually implemented with the use of zopflipng in my script, and I just use pngout with /F6 to reuse the previous good filter found by zopflipng) Yumeyao (talk) 17:46, 28 December 2013 (UTC)Reply
I just performed an image reduction of File:GAFB Christmas Tree Alert Apron.png on Wikimedia Commons, originally uploaded as a 4.18 MB file, and resaved with the GIMP 2.6 open-source graphics editor, using an optimized, indexed palette of less than 256 color and selecting level "9" lossless compression. The file had previously been processed in 2012 with pngout and reduced to 170 kB, while GIMP managed to produce a file just 73 kB in size, less than half as large. The newer pngout program really did not fare well in comparison to the considerably older GIMP software. — Quicksilver (Hydrargyrum)T @ 18:16, 17 January 2017 (UTC)Reply
That's not a fair conclusion. It compares lossless with lossy compression. If I reduce it to 256 colours and save using PNGOUT in IrfanView, I get a file roughly as small (1KB larger, without tweaks). It's also not valid to assume the pngout processing in 2012 was done with a "latest" version, it could well have been earlier than the GIMP version you used (for example the upload in 2017 from the GIMP 2.6 of 2008). Also the colour reduction has resulted in a significant shift of the green background (grass) of that image. Not knocking your efforts or general intent, just the incorrect facts visible here. Adx (talk) 03:02, 27 September 2021 (UTC)Reply

Some possible info and references edit

I see many results in Google when searching for PNGOUT. Here are some reliable sources:

The authors of the above-linked articles are well-known (in the world of computing), and one has a Wikipedia page. As to PNGOUT's importance:

  • Ken Silverman: "PNGOUT optimizes the size of .PNG files losslessly. It uses the same deflate compressor I wrote for KZIP.EXE (see below). With the right options, it can often beat other programs by 5-10%." Quotes is from Ken Silverman's Utility Page.
  • Laurence Gellert: Compression utility pngout – a free lunch, bytes are on the menu. June 17, 2013. "Pngout compresses PNG files really really well (10-30% savings is typical). ... I use pngout as part of every release that adds or updates png graphics. Pngout squeezes down output from Photoshop, Paint.NET, or other graphics programs. After using this tool for several years I can say it has never corrupted a file or given me problems."

I may not have time to add info to the article. So feel free to incorporate the above info, citations, and more, into the article. --Timeshifter (talk) 05:26, 13 August 2015 (UTC)Reply