Announcement

Collapse
No announcement yet.

GIMP Can Now Finally Handle WebP Image FIles

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

  • GIMP Can Now Finally Handle WebP Image FIles

    Phoronix: GIMP Can Now FInally Handle WebP Image FIles

    The latest feature to land in the GIMP 2.9 development code for the much anticipated GIMP 2.10 milestone is support for WebP image files...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    I use it at work (Tattoodo), but had a hard time getting the image size to actually be smaller then MozJpeg and still give consistently good results for all images. We have a fairly large image collection so if any one wants to go compare some real life results it might be interesting to graph some of the data.

    Comment


    • #3
      We have been waiting for GIMP 2.10 for way too long...

      Comment


      • #4
        I'm ideologically opposed to WebP, but, for people who need to use it, this is good, I suppose.

        I think it's too much compatibility breakage for too little gain (especially when even mozjpeg can beat it) and the whole WebP family of functionality (there's lossly, lossless, and animated variants) feel too much like Google's just trying to obsolete perfectly good standards (without active patent threats) purely so they can control the standard.

        If I had to support it, I'd probably transcode to something else like JPEG or PNG on upload.

        Comment


        • #5
          The last time I got really excited about an image format was when netpbm was release. Back in those days knew everyone that GIF stood for "girls in files" and JPEG was CPU-intensive and seemed to be as complicated as rocket science for a file format. netpbm allowed for an easy manipulation of images with scripts and it supported many formats while its own format was kept simple and anyone could adopt it. It is very easy to write C or C++ code and have it produce a netpbm-compatible file. No special library is required and no need to remember a hundred parameters. I still occasionally use ppm files for their simplicity.

          While JPEG allows for a very high compression of images and therefore requires low bandwidths for them to be send over the Internet (I still remember how I, as a student, downloaded naked girls with a 9600bps modem over the telephone line) has it always only been a consumer-oriented file format, because its lossy compression means that any successive image manipulation will very likely cause further degeneration of the image.

          So lately do I use PNG as my favourite storage format for images, next to DNG for the raw, unprocessed images of my camera. DNG itself is based on TIFF if I remember correctly... What I don't like about PNG is the compression time. So when I process images would I have to turn off the compression for intermediate files, and so do I not use it and rather fall back to netpbm or ImageMagick's internal format mpc, which is a raw format based on memory mappings.

          What do I think about WebP? Honestly, I haven't heard about it until today. Not on a conscious level anyway. I have been quite happy with JPEG and PNG for the final images. Still, now that I read about it do I think it is a good idea simply because it promises a progress in compression efficiency. Images don't get smaller and devices support higher resolutions with almost every year now. It's almost as if I got my 1080p monitor only yesterday and I already want a new one with 4K resolution... And, no, not for porn.

          For most image conversion tasks have I been using ImageMagick. It supports so many formats, and checking now does it support WebP, too, that I simply don't care any more what formats people use. I have been relying on ImageMagick's convert command to support them all.

          Do I care about GIMP now being able to handle WebP images? Obviously not. What GIMP desperately needs is 16-bit colour depth support, which is said to be coming with 2.10. GIMP is a professional image manipulation software and yet editing images at only 8-bit colour depth has begun to feel wrong.

          Comment


          • #6
            Oh yes I use WebP and I'm happy with it. I started to deal with WebP format because the Dæmon engine (the engine behind the upcoming Unvanquished game) support WebP natively, and it's a very nice option in comparison with other more-knwon format.

            For example, my asset sources are usually stored with well-known lossless formats like png for textures or flac for sound, but at build time, my tool converts sounds to opus, and textures to webp or crn, choosing the better format for each use case. The crn format (a texture format optimized for GPU, like ddx) is good for the most common usage, but sometime it's not the better one.

            The crn format is very nice because it can be sent directly to the GPU without processing, but sometime it does not fit the need, for example when wee need few artifacts (crn is a lossy compression that can can gives worst results than jpeg) or no artifact at all.

            So, these are my major webp usage:

            1. lossy compression with less artifacts than jpeg and less final size than jpeg when crn is not a choice, for example skyboxes.

            Skyboxes are textures painted over a box around the world, having visible artifacts is not an option. Here is a size and quality comparison (taken from this article between jpeg, lossy webp and original png (compressed with optipng) with a generic skybox by Ingar:



            These doted stars make jpeg algorithm crazy.

            2. lossless compression when it lossy compression is not a choice, for example lightmaps.

            Lightmaps are textures baked at build time that contains light and shadow informations, these textures are applied at run time, they are precomputed lighting, that saves a lot of memory and cpu resources. Some lightmaps can be animated too, for example a blinking light can be precomputed too. This way realtime lights and shadows just have to be computed at render time for some remaining effects only. Lightmaps are generated for every surface of the whole world, unless tiled textures that can be reused many times on each surface of the same material, lightmaps are unique. Because of that, generating too big lightmaps leads to heavy vram usage, and leads to long loading time. So, because lightmaps are usually small textures rescaled at render time, artifacts is not tolerable at all. If you get artifacts like jpeg artifacts in a lightmap, this artifact will just be upscaled over your whole screen, it's not tolerable. In addition to this, each lightmap file usually store many lightmaps textures, so, if you get artifacts, you get lights or shadows from one texture that overflows on other textures, which leads to horrible effects.

            So, lossless compression is a need for lightmaps. And WebP lossless compression is more efficient than png one.

            I have not lightmaps sample to show, but for example with skyboxes you can look at my file format comparison where png (bruteforced with optipng) are 10% larger than lossless webp.

            3. large lossless pictures in git source tree

            Another example is one exception I do in my source trees, in my source trees, I store 4K levelshots with the WebP format instead of PNG to save a lot of space because git source management system was not designed for big files. PNG 4K levelshots are more than 30% larger than lossless WebP one (see this comparison).

            So, WebP is not an option if you don't control the rendering tool of your audience like the web where you must comply with every existing device, but WebP is a very good choice if you control the rendering tool, for example if you are a game developer since people render your assets with your tool. That's why I'm very happy with bleeding-edge tools like WebP/opus/crn file formats even if they are not widely known : players don't care, these formats are the better choice for downloading and storing game levels, and the game engine takes care for the format for them.

            Comment


            • #7
              why my comments are unapproved ?

              Comment


              • #8
                2.9 supports 16 bit already; for the best windows build go to http://www.partha.com/

                Comment


                • #9
                  Oh, Partha remade his website ! I hope there will one day a newer darktable windows build with working translation.

                  By the way, I wrote a testimonial about WebP like asked by Michael in the news post, but my testimonial was unapproved, it looks like the phoronix forum is for troll only. I just lost my time.

                  Comment


                  • #10
                    Originally posted by illwieckz View Post
                    By the way, I wrote a testimonial about WebP like asked by Michael in the news post, but my testimonial was unapproved, it looks like the phoronix forum is for troll only. I just lost my time.
                    That seems to happen to everybody. At least 10% of the posts seem to be complains about vbulletin swallowing posts. It has yet to happen to me though.

                    Comment

                    Working...
                    X