About supporting WebP?

Help
2012-10-20
2013-12-01
  • MicroStupid

    MicroStupid - 2012-10-20

    hi, all
        Is there a schedule to add WebP support in GM? IM has already done.

     
  • Bob Friesenhahn

    Bob Friesenhahn - 2012-10-20

    GM does not currently have a schedule so there is no current schedule to add WebP support.  Adding it does not seem difficult and the webp library license is suitable for use with GraphicsMagick.  The implementation in ImageMagick is trivial.

    It would be very easy to add delegates.mgk entries to support WebP via the 'cwebp' and 'dwebp' utilities.  It seems odd that these utilities do not read and write the same file formats.  For example, 'dwebp' can write PAM, PPM, and PGM but 'cwebp' can not read any of these formats.

    Bob

     
  • Bob Friesenhahn

    Bob Friesenhahn - 2012-10-20

    I am disappointed that 'cwebp' is not able to successfully write a maximum sized ( 16383x16383) webp file by default or even with the options that the documentation says to use when it fails.  When it fails, it leaves behind a broken .webp output file.

    Even an 8000x6000 file fails to write.

     
  • MicroStupid

    MicroStupid - 2012-10-22

    Thanks bfriesen. Images in WebP format have relatively smaller size than JPEG and PNG, thus can save a lot traffic cost in our system. I'm using IM‘s Magick++ lib to achieve this right now. And I'm planning to transfer to GM. So here is a demand. Would you pls put  this feature on the table?

     
  • Bob Friesenhahn

    Bob Friesenhahn - 2012-10-22

    The feature is definitely under consideration.  I am disappointed that webp does not support at least the limits of JPEG and disappointed that tuning parameters are required to successfully write larger output.  However, I suspect that the use of "web" in the name may suggest use in web browsers and support for images 8000 pixels across is not  important there.  I am still concerned about memory use, which is one reason why I was testing with larger images to see the resources that webp consumes and to see how resource consumption may be reduced.

     
  • MicroStupid

    MicroStupid - 2012-10-22

    Yes, I agree with the "web" explanation. Looking forward  to your results. :)

     
  • dmessingsf

    dmessingsf - 2012-12-16

    Hi Bob,

    can you tell me if you are still actively working on adding the webp coder? Also if I wanted to write it on my own, can you suggest another coder to use as a template?

     
  • Bob Friesenhahn

    Bob Friesenhahn - 2012-12-16

    I never started with implementing a coder for webp.  I only experimented with webp utilities to see what the implementation limits are.

    While JBIG is only a black/white format, the JBIG coder (coders/jbig.c) also depends on a simple external library like webp and needs to do similar things so it should be a good starting point.  Since webp can only deal with small images, it might not be necessary to implement incremental decode/encode for it.  Dealing with webp's unreliability with larger images needs to be handled by the design.  Perhaps the image write size could be artificially limited in order to avoid the problem that the webp coder throws an error due to image size.  Otherwise, webp encoder errors need to be gracefully handled.

    Any contributed code needs to be able to be copyright "GraphicsMagick Group" under the existing MIT/X11 license statement.

     
  • timebug

    timebug - 2013-05-14

    Hi All,

    I write a coder for webp and also create a patch for GM 1.3.17.

    See more: https://github.com/timebug/graphicsmagick-webp-patch

    It works for me. So, I think someone else will need it :-)

     
    • Bob Friesenhahn

      Bob Friesenhahn - 2013-12-01

      On Tue, 14 May 2013, timebug wrote:

      Hi All,

      I write a coder for webp and also create a patch for GM 1.3.17.

      See more: https://github.com/timebug/graphicsmagick-webp-patch

      It works for me. So, I think someone else will need it :-)

      Probably so. I have incorporated your WebP work into GraphicsMagick
      Mercurial.

      Windows Visual Studio builds are not supported yet.

      There seem to be a large number of features missing still,
      particularly given the recent addition of animation to WebP and the
      lack of support for attached profiles. Adding these features can be
      for later.

      Bob

      --
      Bob Friesenhahn
      bfriesen@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
      GraphicsMagick Maintainer, http://www.GraphicsMagick.org/

       
  • Pavel

    Pavel - 2013-07-19

    Hi,
    any progress with WebP support? Timebug, do you have patch for 1.3.18?

     
  • Pavel

    Pavel - 2013-11-11

    Thank you Timebug.

    Bob is there any chance, that WebP would make it into 1.3.19 release?

     
    • Bob Friesenhahn

      Bob Friesenhahn - 2013-11-12

      On Mon, 11 Nov 2013, Pavel wrote:

      Thank you Timebug.

      Bob is there any chance, that WebP would make it into 1.3.19 release?

      That is the stated intention.

      Where do you see the most usage of WebP. Is it only used with Android
      cell phones/tablets, Chrome, and Opera, or is there actually broader
      usage?

      In spite of images taking the most space, for web performance on
      typical broadband connections I very much doubt that image size is the
      bottleneck for the typical web page.

      For example, look at the HTML/Javascript source code for the page at
      http://www.webmonkey.com/2013/03/put-your-site-on-a-diet-with-googles-image-shrinking-webp-format/
      and see how incredibly complex a relatively simple page is. Images
      are coded in repeating patterns which can be handled in tight loops by
      heavily optimized code but HTML/Javascript takes quite a lot more work
      to decode, interpret, and render.

      The SourceForge pages take the cake for the greatest page complexity.
      That explains why they are so incredibly slow.

      Bob

      Bob Friesenhahn
      bfriesen@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
      GraphicsMagick Maintainer, http://www.GraphicsMagick.org/

       
  • Pavel

    Pavel - 2013-11-12

    Usage of WebP would be mostly for web application and browsers that support it. Images are around 30-50% of page weight on first hit. JS, CSS are minified, HTML is without white spaces, PNG are crushed, HTML, JS, CSS, JSON compressed, expiration headers set. WebP is probably last optimization left (maybe one more SPDY). I may bump up quality of images (jpeg at 75 now) or take lower page weight. I also probably use WebP for original images storing to save SSD space.

    Pavel

     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks