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
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.)
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
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
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.
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.
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.
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.
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.
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.
Because if they did company wide alignment, you would kill their promotion pipeline. Want harmony? Then in Google you build your own app (see N+1 chat apps) to get that feature, get promoted and dump the project on someone else.
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.
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.
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.
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.
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).
Is hardware decoding even commonly used for still image codecs?
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
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.)
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
Does Windows already display WebP files in File Explorer? :-|
Yes. https://imgur.com/a/lRSM128
It has done for some years
> 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
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
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.
I highly doubt that is what's happening. More likely the server is serving a webp under a .png filename or something.
I have observed the behavior you suspect many times.
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.
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.
That seems more likely. I still hate webp.
Does it actually request the image that it already downloaded again to save it to a file? Seems rather silly?
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.
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.
At what year would you say the web should have stabilized on the basics?
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.
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.
Because if they did company wide alignment, you would kill their promotion pipeline. Want harmony? Then in Google you build your own app (see N+1 chat apps) to get that feature, get promoted and dump the project on someone else.
Avif.
Especially for animated images. Comparing webp or avif sizes to gif is easily a factor of five to ten when animated.
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.
Since all modern browsers support AVIF, I'd skip WEBP and just use AVIF (possibly with a fallback for JPG/PNG).
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.
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.
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.
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.
X doesn't support animated webp, slightly annoying.
XPM works just fine though.
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/