Announcement

Collapse
No announcement yet.

Actualized Version of PNGOUT?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Actualized Version of PNGOUT?

    Hi,

    do you think it's possible to update the IrfanView plugin version of PNGOUT to the newest standalone version of PNGOUT?

    IrfanView is my favourite an possibly the best pictureviewer (and much more) around, it would be nice to see the best (at least I think so) png-compression in it!

    Thanks,
    bohdan

    #2
    Try PNG Crush. I think you will find it much faster and more convenient to use.

    Though I haven't tried the latest version of PNG OUT, the standard plugin is so slow that it is not worth using.

    I just did a quick test on a random PNG file

    Original 306 Kbytes
    PNG OUT 307 Kbytes (after 4 minutes) Yes! It actually got bigger!
    PNG Crush 303 Kbytes (after 2 seconds)
    Last edited by Bhikkhu Pesala; 29.09.2009, 12:24 PM.
    Before you post ... Edit your profile • IrfanView 4.62 • Windows 10 Home 19045.2486

    Irfan PaintIrfan View HelpIrfanPaint HelpRiot.dllMore SkinsFastStone CaptureUploads

    Comment


      #3
      A second test with a screen shot of this page

      Original 108 Kbytes
      PNG OUT 95 Kbytes (After a few minutes)
      PNG Crush 86 Kbytes (After 2 seconds)

      The author claims that his utility is 5-10% better than others including PNG Crush, and he may say that I am not using the best settings, but I am just using the default settings. The difference in performance is so astonishing, I wonder how it could be worth trying to find the right settings if the defaults are so poor?

      Here is a Tutorial on PNG OUT Do you really want to read and understand all that?
      Last edited by Bhikkhu Pesala; 29.09.2009, 09:35 AM.
      Before you post ... Edit your profile • IrfanView 4.62 • Windows 10 Home 19045.2486

      Irfan PaintIrfan View HelpIrfanPaint HelpRiot.dllMore SkinsFastStone CaptureUploads

      Comment


        #4
        IMHO one of the problems of the PNGOut plugin is that it updates continuously the progress window, at every micro-step it makes. Heck, replacing the content of a textbox, scrolling it down and update the window is not an inexpensive operation, and if you repeat it at every bit changed in the output it will slow down the whole process. In my opinion, is one of the situations in which showing the progress of the operation takes more time than making the operation actually progress.
        IrfanPaint developer
        The latest stable IrfanPaint version is the 0.4.13.70.
        IrfanPaint is now open-source (released under BSD license).

        Comment


          #5
          Sorry Bhikkhu Pesala if I can't agree with you but my tests have shown that PNGOUT compresses better than PNGCrush.

          In my personal test (with a screenshot of this site) I got following results:
          Code:
          142.608 Bytes - IrfanView Standard PNG-Output (Compression=9)
          141.754 Bytes - PNGCrush (commandlineversion, -brute)
          131.768 Bytes - IrfanView PNGOUT (everything on "Auto", Passes=Infinite)
          131.660 Bytes - PNGOUT (commandlineversion, default settings)
          In terms of compression it seems clear, PNGCrush is not much better than IrfanView's default implementation of PNG.
          The only negative thing is compression time. In this point you are right. But I noticed, that the commandlineversion of PNGOUT is many times faster than the IrfanView plugin version. Maybe MItaly is right with his point? This would justify an actualized version of the Plugin even more!


          Here is a Tutorial on PNG OUT Do you really want to read and understand all that?
          Well, I already understand most of these settings, although default settings of PNGOUT are just fine.
          PNGOUT is much better documented in my opinion, I think it's more userfriendly than PNGCrush.
          What settings do you use with PNGCrush to achieve higher compression than with PNGOUT?


          P.S. I attatched my test-files so you can try on your own.
          Attached Files

          Comment


            #6
            Originally posted by bohdan View Post
            I think it's more user friendly than PNGCrush.
            What settings do you use with PNGCrush to achieve higher compression than with PNGOUT?
            PNG crush is not the easiest program in the world to set up, but the process is really not at all complex, and is well documented.
            Open Control Panel and choose Folder Options. Select the File Types tab, and scroll down to the 'PNG' entry. Click on 'Advanced', then click on 'New...'.

            In 'Action', type Crush, and in 'Application used to perform action', type the following:

            C:\Downloads\pngcrush\pngcrush.exe -e 2.png "%1"

            The first portion should be the location of the pngcrush.exe file that you extracted from the archive. The '-e 2.png' bit specifies what the outputted PNG image will be called, which in the case it'll be the filename with '2' appended to it (so the crushed version of 'catpicture.png' would be called 'catpicture2.png'). You could also use the following:

            C:\Downloads\pngcrush\pngcrush.exe -brute -e 2.png "%1"

            This does the same as the above but does a 'brute force' crush - rather than use one of a few common methods to crush the file, it will use all of them. It'll take longer, especially on older hardware, but may result in a smaller PNG file.

            And you're done. Now, when you right-click on a PNG file, you can select 'Crush' and have Pngcrush your image for you. Remember that the compression is lossless - you won't lose any quality by using the tool.
            I am using the first option, not the -brute option.

            Once it is set up there are no options, you just right-click in Explorer and select "crush" what could possibly be more user-friendly than that?

            PNG OUT consistently produces larger files using the default settings (96K from the attached file instead of 85K), but as I said, if it is so much slower (sixty times slower) then it just is not worth using even if it does sometimes create a 5% smaller file.

            PNG OUT eventually finished (after about twenty minutes) and the result is as before — 96 Kbytes.
            Attached Files
            Last edited by Bhikkhu Pesala; 29.09.2009, 02:24 PM.
            Before you post ... Edit your profile • IrfanView 4.62 • Windows 10 Home 19045.2486

            Irfan PaintIrfan View HelpIrfanPaint HelpRiot.dllMore SkinsFastStone CaptureUploads

            Comment


              #7
              I thought i'd chip in here as i've had plenty of PNG experience over the last 13/14 years of working with it.

              In the last serious batch of tests i did(was a few years ago) png crush gave better size results(on average) on larger 24-Bit images than pngout, but pngout performed better on lower bit depths and smaller sized images.

              If you want to brute force your way to the smallest possible PNG file size use the following little bundle of joy:



              Extract that into it's own directory and then drop a PNG file you want to shrink onto the pngslim.cmd file and let it do it's stuff. As this is a brute force method trying hundreds of parameter combinations it can take a while depending on the size of the image but it should give the smallest possible file.
              Due to the random nature of the huffman table trials you may not get the best result on the 1st run, although you will only really make a few bytes difference with multiple runs so possibly not worth the time.

              Comment


                #8
                Thank you. I was playing with png files for few years now. I wrote my own batch to test out all possible pngout settings. I noticed that sometimes optipng+pngout gave better restults than pngout alone but I didn't think that connecting all those applications in the order they are inside that batch file would help reduce filesizes furthermore.

                So after a while of using pngslim I got this feeling that something needs to be changed a bit. I like when programs give me more details so I rewrote pngslim.cmd as pngslimv.cmd (v stands for verbose). It does exactly the same thing as pngslim but adds a lot of title [string] commands to tell you what palette test is actually run, which number of blocks in deflate compression is processed or even progress of random trials. Also I added echo'ing of date time everytime any of the trial event starts. Drop files on either pngslim.cmd (original version) or pngslimv.cmd (for more info while processing files) to start batch.

                Also pngout and optipng got updated and archive was packed with 7-zip + k-zip + zipmix + deflopt to reduce its size =)

                Last edited by Mr_KrzYch00; 08.06.2010, 12:13 PM.

                Comment

                Working...
                X