I guess I'm using WebP now?

(anderegg.ca)

78 points | by Brajeshwar 2 days ago

13 comments

  • Gualdrapo 6 hours ago

    So as every time I read something decrying how webp is allegedly "annoying", the conclusion is that the problem was never about webp itself but the tooling and ecosystem to handle it

    • yjftsjthsd-h 5 hours ago

      Is there a real distinction? It can be a great format, but if actually using it sucks then in practice it's a pain to use/encounter. (I don't actually have this problem personally - all my apps seem to handle it fine - but the argument seems reasonable.)

      • afavour 23 minutes ago

        Absolutely there is. If it works seamlessly for potentially endless end users and the burden is only on the singular you… yeah, it’s worth the extra effort on your part.

        • bawolff 9 minutes ago

          nah, life is a trade off between developer effort and the result. There is a reason we don't hand code everything in assembly anymore - it just isn't worth it.

        • kllrnohj 4 hours ago

          Yes, it's important to distinguish annoyances of the codec from annoyances of the ecosystem.

          Ecosystem being slow to adopt it is something that can be fixed or improved, but also more importantly (given jpegxl & avif comparisons) are things that will impact any new image format.

          Meanwhile annoyances of the codec tend to be things that are dramatically harder to deal with. Like HEIC being a license minefield and also slow as shit. Or that many of these newer image codecs do not have ways to work with them in a memory efficient manner like jpeg does (see eg libjpeg-turbo's sample size & skip scanline options). Or WebP insisted on being in a RIFF container for... uh... absolutely no fucking reason whatsoever afaict. Fortunately RIFF is so trivial that this overhead doesn't actually matter in practice, but then HEIC & AVIF dials up the annoying container bullshit to 11 thanks to their video heritage with ISOBMFF

          • zahlman 2 hours ago

            It seems much harder to get an audience as someone complaining about technical details of codecs and their implementations, than as someone complaining about the formats (which in practical terms is always going to mean the ecosystem, or really, how broad the support base is or what the user has to do in order to deal with it).

            • Dylan16807 3 hours ago

              > Like HEIC being a license minefield and also slow as shit.

              How much slower? I'm finding very conflicting numbers.

              But on the timescale of "wow this still doesn't support webp" those patents will solve themselves soon.

              • kllrnohj 1 hour ago

                hardware-decoded HEIC is around 10x slower than JPEG.

                software-decoded HEIC is around 100x slower than JPEG.

                WebP is something like 20-50% slower than JPEG, so still solidly an order of magnitude faster than best case hardware-accelerated HEIC decoding.

                • phoghed 36 minutes ago

                  How slow are we talking though? 10x slower than instant and not noticeable for the average use case? Dog slow and everyone will always notice?

              • yjftsjthsd-h 3 hours ago

                Perhaps it's a matter of who hits the pain point? Ugly specs make annoyed devs, licensing problems make distributors unhappy, and ecosystem issues leave users unimpressed. (With some spillover between categories, of course.)

            • pornel 58 minutes ago

              It's still annoying that if you set quality anywhere below 100, you get half-resolution color (VP8 only has 4:2:0 chroma subsampling).

              • dspillett 3 hours ago

                I haven't seen much if anything saying webp itself is annoying directly, and your conclusion agrees with what I've seen. The complaining I've seen is about the tooling available (mainly from non-techies who don't care to know how to convert to another image format because, and I agree, why should they?) that once you've got a webp image file from one site the next site you try to upload it to doesn't accept them. For those of us who can convert the tooling has been there for ages, as have editors happy to load and save the format.

                Though TBH I still use JPEG, PNG, or GIF, depending on use case, out of habit. The size saving for the same quality of lossy compression is not something I've found myself hankering for. It is different if you run a site that sends out millions of every image, but nothing I do is that popular and is never likely to be, and no one stuck on a really slow connection where the difference would matter to them is going to be accessing my stuff.

                • testing22321 5 hours ago

                  > the conclusion is that the problem was never about webp itself but the tooling and ecosystem to handle it

                  That is true in life.

                  EVs aren’t annoying, the charging infrastructure is.

                  Etc

                  • thayne 2 hours ago

                    That isn't entirely true. EVs' smaller range, and longer "refueling" time are annoyances by themselves, and compund the annoyance of not having good charging infrastructure.

                    OTOH, being able to charge while you are sleeping or working is pretty convenient.

                  • edwinjm 6 hours ago

                    Does Windows already display WebP files in File Explorer? :-|

                    • dfabulich 5 hours ago
                      • Daneel_ 1 hour ago

                        Windows 10's support isn't out of the box. You need to install an explorer extension, and even then it's a bit shaky.

                        I personally avoid webp because of the tooling/compatibility issues.

                        • buildsjets 50 minutes ago

                          Windows 10 support went EOL one year ago. It is an archaic operating system, so no doubt, it does not support modern technology out-of-the-box. Nevertheless, it can be modified to add such support with trivial effort.

                      • lloydatkinson 5 hours ago

                        It has done for some years

                      • azuanrb 5 hours ago

                        > the tooling and ecosystem to handle it

                        That’s the whole point, though. If the tools I use don’t handle it properly, it’s annoying. Saying it’s an ecosystem problem doesn’t change that.

                        How long has it been now? And from what I’ve seen, even Google’s own stuff doesn’t always handle it. That’s not helping their case.

                        • thayne 2 hours ago

                          Well, that's a problem with the tools you are using. Tools to work with webp have existed for a long time.

                          • al_borland 38 minutes ago

                            To not be annoying the tools don't have to just exist somewhere, they need to be ubiquitous. For example, If I'm looking to upload an image as an avatar on a website, will webp be supported? It's unlikely, even if the site itself might ultimately serve up a webp file. So then I'd have to use a tool to convert it to a more ubiquitous format before uploading it, likely doing a bunch of lossy conversion along the way. That's annoying.

                        • colordrops 5 hours ago

                          Yeah it's purely the fault of the tens of thousands of application devs that have been too stupid to recognize the obvious and immense benefits of webp over existing widely adopted formats /s

                          • stackghost 5 hours ago

                            Firefox actually silently and automatically converts images to webp in some cases when you Save As them, with no option to revert to the format you see in the DOM. It’s fucking infuriating. I hate webp because the support is so spotty.

                            • edflsafoiewq 5 hours ago

                              I highly doubt that is what's happening. More likely the server is serving a webp under a .png filename or something.

                              • 1e1a 5 hours ago

                                I have observed the behavior you suspect many times.

                              • the8472 5 hours ago

                                I don't think that's firefox doing it? I'd guess it's some CDNs doing the conversion. Or the URL says .jpg but when you look at the mimetype sent by the server it's actually webp. Extentions are meaningless for browsers.

                                • noisem4ker 5 hours ago

                                  It's not Firefox, it's the server. Edit and resend the request with header "Accept: image/jpeg" only and you'll most likely get a JPEG file.

                                  • stackghost 5 hours ago

                                    That seems more likely. I still hate webp.

                                    • what 5 hours ago

                                      Does it actually request the image that it already downloaded again to save it to a file? Seems rather silly?

                                      • ender341341 3 hours ago

                                        No, the server is just sending the file named 'foo.jpg', but encoded as a webp with webp mime type, so when you save the file it defaults to the webp extension cause it ends up treating the filename as a blob of text without an expected extension for the file type.

                                        • stackghost 43 minutes ago

                                          No, this is not what’s happening. Or at least not the phenomenon I am discussing.

                                • groundzeros2015 4 hours ago

                                  Webp does not have hardware decode and does not support progressive.

                                  I speculate the asymmetric push is a case of it solving Google’s problem (bandwidth cost) but not the end user’s problems (battery and latency).

                                  • Aurornis 4 hours ago

                                    Hardware JPEG decode isn’t as valuable on today’s hardware. CPU decode with SIMD instructions is fast and energy efficient. It’s such a negligible part of battery usage that it’s barely worth thinking about for fast modern CPUs.

                                    Even formats like H.264 are being dropped from some hardware decode engines because it’s so easy to do on CPUs now, as can be seen even on the Raspberry Pi 5. Many software stacks will skip hardware JPEG decode even when available because it’s extra maintenance and debugging overhead for such a little gain.

                                    Progressive decode is a feature that is good in theory but rarely used in practice. If you’re concerning yourself with power usage and memory footprints, progressive decode goes in the opposite direction. Users also don’t like progressive decode as much as developers think they will as it’s often perceived as something being broken.

                                    I think WebP made reasonable tradeoffs for the way images are actually used and delivered.

                                    • groundzeros2015 2 hours ago

                                      Then why do they put it on the phones? surely manufacturers would love to cut the part?

                                      • phire 48 minutes ago

                                        Since webp is little more than a vp8 iframe, and most SoCs already have a hardware vp8 video decoder, the additional hardware cost to decode webp is zero. Just takes a bit of firmware development effort.

                                        And while hardware image decoders might be dubious, hardware video decoders are very much worth it.

                                      • badatnames 4 hours ago

                                        > Even formats like H.264 are being dropped from some hardware decode engines because it’s so easy to do on CPUs now, as can be seen even on the Raspberry Pi 5

                                        CPU decode efficiency most certainly was not the reason h.264 was dropped on the Pi

                                        • Aurornis 3 hours ago

                                          Dropping it was an option because CPU decode was sufficient.

                                          • novafunc 2 hours ago

                                            Sufficient is objective. My hardware is certainly sufficient at decoding video without performance problems, but with with CPU decode, it takes more resources and ramps up the fans. While with GPU decoding, it's near silent.

                                      • usef- 4 hours ago

                                        It also lost much of its quality advantage over plain jpeg, given the improvements in jpeg encoders: the jpegli encoder (from google's jpegxl team) has improved plain jpeg encoding significantly.

                                        Most photo/design apps don't seem to be using SOTA jpeg encoders, though, so I think webp looks better in comparisons like OP's than it actually is. You maintain all the ultra-fast decoding of jpg when you use a modern encoder, too.

                                      • lxgr 4 hours ago

                                        Is hardware decoding even commonly used for still image codecs?

                                        • Aurornis 4 hours ago

                                          JPEG decoding is frequently included in systems with DSP blocks because it’s easy to add to a system that is already doing similar math for video decoding.

                                          It’s not always used when available. It can be a lot easier and safer while being fast enough to do it on the CPU. If the operating system has an image decoder path that will handle everything for you then it might be used (Apple hardware for example) but if you have to go out of your way to implement the API, common software will favor software decoding because nobody wants to maintain code testing branches for different hardware image decode platforms.

                                          • kllrnohj 4 hours ago

                                            Only for HEIC realistically, and that only still causes it to struggle to match jpeg or webp performance anyway

                                        • edent 6 hours ago

                                          Google aren't pushing WebP. Google Docs / Slides still don't support it.

                                          I appreciate Google isn't a monolith, but that lack of consistency makes it really hard to shake the impression certain tribes within it are at war with each other.

                                          • hn_go_brrrrr 5 hours ago

                                            It's not war, it's indifference. Why should Docs give a damn what Chrome's priorities are? The only reason they would is if there were effective leadership ensuring company-wide alignment, but there is no one filling that function.

                                          • bitpush 4 hours ago

                                            This is actually a good counter argument for 'Google is pushing X'. If they were pushing X, they'd make all their apps fall in line.

                                            Contrast this to, say, Apple - which when decides to push something, they go all in. And that's an example of top-down decision making.

                                            • MattSayar 2 hours ago

                                              Strangely enough, Google wouldn't index my personal website when I was using webp. Everything in my Search Console showed up as "crawled but not indexed." I had multiple friends with SEO backgrounds check out my site, but everything looked configured correctly.

                                              Switching all my images back to jpg solved it

                                            • IvanK_net 3 hours ago

                                              For the past two years, I have been exporting my images in WebP instead of JPG. If I share it online or send it by an email, I am pretty sure the other side will be able to see them.

                                              I honestly think that all phones and even professional cameras should replace JPG with WEBP, we will have like 30% smaller photos.

                                              The DNG format (for raw photos) allows JPEG XL compression (it used to allow only JPEG in the past). I wish some country made it mandatory for cameras to let user take photos in DNG (just like USB-C is mandatory in the EU).

                                              I am happy that HEIC from Apple did not take off (as it was proprietary, protected by patents).

                                              • Grimeton 6 hours ago

                                                Avif.

                                                Especially for animated images. Comparing webp or avif sizes to gif is easily a factor of five to ten when animated.

                                                • GavinAnderegg 4 hours ago

                                                  Author here: I'm also very much looking forward to using AVIF (and also JPEG XL), but it's another tooling question. I'm really hoping that Pixelmator Pro (now owned by Apple) will support them both soon. Photoshop (which I've recently dumped) supports WebP and AVIF, but not through the "Save for Web" or "Export As" flows. Having a nice export flow where you can easily compare compression vs. quality levels is really important to me, and I suspect to many others.

                                                • CodesInChaos 5 hours ago

                                                  Since all modern browsers support AVIF, I'd skip WEBP and just use AVIF (possibly with a fallback for JPG/PNG).

                                                  • zetanor 4 hours ago

                                                    When it comes to animations, is there much of a reason to use avif over webm? I suppose an avif fits into CSS and <img> without further code changes, but that's about it as far as I can think.

                                                    • Starlevel004 3 hours ago

                                                      An AVIF and a WebM + AV1 is basically identical file-size wise, but you can zoom in on an AVIF so for actual animated images it wins on that front.

                                                    • NelsonMinar 4 hours ago

                                                      I just switched to AVIF after several years of using WebP. Main reason for me is HDR support, but the smaller encoding is nice. Just beware of lossless AVIF, that's a trap.

                                                    • jgord 4 hours ago

                                                      I was amazed at how much better compression webp offered over jpg and png.

                                                      Using it in a web-browser 360 panorama viewer enabled pretty substantial latency and storage improvements.

                                                      close to 4x iirc.

                                                      ditto large "xray" style orthographic images of building scans generated from pointcloud laser scan data.

                                                      avif was even better compression for some cases, but seems to take a long time to generate, and less widespread browser support. Will look at jpeg-XL .. but Im guessing it will be a while until it has widespread support

                                                      • pornel 55 minutes ago

                                                        It's typically 15%-30% smaller than JPEG at comparable perceptual quality. Any reduction bigger than that is just loss of quality without further compression improvement, and you could have similarly reduced file sizes by recompressing/optimizing JPEG.

                                                        In JPEG file size grows exponentially with quality, which also means that "I can't tell the difference" decrease in JPEG quality makes a huge difference in file sizes.

                                                      • userbinator 5 hours ago

                                                        Just as with JPEG2000, I'm still not convinced the additional complexity is worth it. There seems to be a lot of immature technologies being pushed in the past few years, when IMHO the Web should've stabilised long ago on the basics. But I guess people need things to do to keep them employed... and Big Tech needs to maintain its monopolies.

                                                        • CodesInChaos 5 hours ago

                                                          The old JPG/PNG choice had a big problem: JPG handles sharp edges, including text, badly. PNG produces huge photo files. Images containing a mix of both don't work well in either format.

                                                          By contrast, when using a modern format like WEBP or AVIF, a single encoder configuration produces decent looking results across a variety of input images.

                                                          • pornel 44 minutes ago

                                                            WebP is actually two completely different compression formats developed by different teams at different times for different purposes (VP8 video codec + lossless add-on by Google).

                                                            The WebP encoder just has a switch when quality=100, then use the PNG-like format in .webp, otherwise use the JPEG-like format in .webp. WebP at quality < 100 will destroy text, sometimes worse than JPEG, because VP8 can't store color at full resolution. WebP at q=100 will blow up photo sizes by orders of magnitude, similarly to PNG.

                                                            AVIF and JPEG XL actually have ability to mix-and-match blurry and sharp compression modes within a single image.

                                                          • zahlman 2 hours ago

                                                            How is it "a single encoder configuration"? WEBP has separate lossy and lossless compression modes and simply gives both the same filename extension.

                                                          • anon84873628 5 hours ago

                                                            At what year would you say the web should have stabilized on the basics?

                                                            • userbinator 4 hours ago

                                                              As in JPEG, GIF, and PNG? Early 2000s. Maybe with a subset of SWF as a (animated)/vector format instead of horribly bloated SVG.

                                                          • seanwilson 4 hours ago

                                                            https://squoosh.app/editor is a great app to compare how well an image compresses with newer formats like AVIF and WebP, compared to JPG/PNG.

                                                            It feels more practical now to have a fast loading page with large images now without too much effort. It was far too much of a burden before to have to provide fallbacks to older formats, on top of different images for different screen sizes/densities.

                                                            • arjie 1 hour ago

                                                              I use webp on my blog a lot. The software automatically converts it when I post and so on. Surprisingly small files and I've never had any trouble opening them on any platform. Big fan.

                                                              • k310 1 day ago

                                                                One forum I use does not embed webp links. They show up as links, period, and it's a damn waste of my time to convert. Small is beautiful unless your forum is run by two people, not having the time to update code all the time.

                                                                Many image links that work for search engines don't work for the site and I have to download and then upload to a host to get an embeddable image link.

                                                                • repsilat 6 hours ago

                                                                  X doesn't support animated webp, slightly annoying.

                                                                  • rwmj 4 hours ago

                                                                    XPM works just fine though.

                                                                • layer8 4 hours ago

                                                                  The one annoying thing about WebP is that you can no longer see from the file extension whether some image is lossy or lossless.

                                                                  The other annoying thing is the name, because surprisingly we use images in non-web-related contexts as well. Admittedly, PNG technically has a very similar issue, but it’s less in your face.

                                                                  • nananana9 2 hours ago

                                                                    All this, and also PNG and JPEG both sound cool when you say them out loud. Web-pee on the other hand...

                                                                  • tjoff 5 hours ago

                                                                    Why? Just skip webp altogether, an annoying footnote that caused more issues than it solved.

                                                                    Go straight to jpeg xl and/or avif when the they are mature.

                                                                    • GavinAnderegg 4 hours ago

                                                                      Author here: as I wrote in the piece, I've recently dumped Photoshop for Pixelmator Pro. It doesn't currently support AVIF. Photoshop does, but not in a way that makes it easy to optimize an image for web export. JPEG XL is also exciting to me, but it's not generally available across browsers. WebP is the current best image format for my use-case, but I'm hoping others supplant it soon.

                                                                      • Gigachad 3 hours ago

                                                                        >but it's not generally available across browsers.

                                                                        Note that this is changing rapidly. Safari ships JXL, Chrome did a few days ago, and Firefox will in the next few days. Once this flows through to all the chromium based browsers we will see pretty much 100% support on the web.

                                                                    • louky 6 hours ago

                                                                      Annoyingly Google voice doesn't support it at all, either. I've installed a firefox extension[0] that saves any image as .JPG,.PNG, or .WEBP

                                                                      [0] https://addons.mozilla.org/en-US/firefox/addon/siat/