Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issues with images? #136

Closed
foolip opened this issue Sep 20, 2022 · 13 comments
Closed

Issues with images? #136

foolip opened this issue Sep 20, 2022 · 13 comments

Comments

@foolip
Copy link
Member

foolip commented Sep 20, 2022

This isn't a propsal, just a discussion.

In https://www.w3.org/2022/09/14-interop-minutes.html @ydaniv said:

Huge demand for SVG. Images are also a problem. Features like loading attribute. It's important to get this 100% across browsers. AVIF shipped in Safari, could be a chance to get servers to start transcoding to AVIF. Bugs can hurt performance.

@ydaniv I wonder if you have more information about images, to understand if a general "Images" focus area could make sense. Does the loading attribute not work properly across browsers still? (It seems to be supported.) Are there other issues around images you had in mind?

@mathiasbynens
Copy link

One image-related problem is browser vendors incrementally shipping support for new image formats, i.e. first shipping support for static images, and only later shipping support for animated images. A current example of this is AVIF: although all major browsers support AVIF for still images, only Chrome supports animated AVIF. Per @jensimmons’s tweet, Safari will support animated AVIF in Safari 16.1 (scheduled for release in October 2022), but that still leaves Firefox with only static AVIF support for the time being.

Until all browsers advertising AVIF support also support animations, this poses an interoperability problem where developers cannot rely on the browser to do format selection by using <picture> + <source>.

WPT covers animated AVIF in the ImageDecoder tests:
https://wpt.fyi/results/webcodecs/image-decoder.https.any.html?label=experimental&label=master&aligned (Subtests: “Test multi-track AVIF image decoding”) However, since ImageDecoder is not universally available yet, it would be nice to have some tests that do not depend on ImageDecoder as well, perhaps following the example in https://github.com/web-platform-tests/wpt/tree/master/apng.

(It would be even nicer if browser vendors would commit to not shipping partial implementations unless there are separate MIME types for the static vs. animated image formats.)

@ydaniv
Copy link

ydaniv commented Sep 20, 2022

Thanks @mathiasbynens, +1!

@foolip the issue that was on my mind at the time was this bug with loading=lazy in Webkit which prevents from using this feature altogether.
So it's bugs like this which cause interop headaches, but I'm not sure I can think of anything interesting here, interop-wise, since this is quite a specific scenario.
And fetchpriority doesn't look like something that can actually block anything critical.

So I gave this another thought (w/ @eportis-cloudinary - anything to add?), maybe nothing actionable at this point, besides the above, and random specific engine issues.

@foolip
Copy link
Member Author

foolip commented Sep 20, 2022

@ydaniv it looks like that bug was fixed just 7 days ago in WebKit/WebKit@0c40ba6. I'd guess that it'll be in the next Safari Technology Preview, but you'd have to read release notes (like these) to know for sure. If you have the possibility, perhaps you could re-test this in the next release of STP?

@gsnedders gsnedders added the focus-area-proposal Focus Area Proposal label Sep 22, 2022
@gsnedders gsnedders added this to the Interop 2023 milestone Sep 22, 2022
@gsnedders
Copy link
Member

Let's label this as a focus area proposal despite it being kinda undefined so we don't forget about this.

@mathiasbynens
Copy link

WPT covers animated AVIF in the ImageDecoder tests: https://wpt.fyi/results/webcodecs/image-decoder.https.any.html?label=experimental&label=master&aligned (Subtests: “Test multi-track AVIF image decoding”) However, since ImageDecoder is not universally available yet, it would be nice to have some tests that do not depend on ImageDecoder as well, perhaps following the example in https://github.com/web-platform-tests/wpt/tree/master/apng.

Update: It looks like we can’t “just” follow the APNG example. That test relies on last frame being shown after a certain timeout, which depends on the animation not looping — but AVIF animations always loop indefinitely.

@foolip
Copy link
Member Author

foolip commented Sep 23, 2022

@mathiasbynens can we have a very long animated AVIF? If variable frame length isn't possible, then just 1 red frame and lots of green ones? A total of 10 seconds or so should do it.

@ydaniv
Copy link

ydaniv commented Sep 23, 2022

@foolip sure, we're on it, hoping this will be in 16.1

@mathiasbynens
Copy link

@mathiasbynens can we have a very long animated AVIF? If variable frame length isn't possible, then just 1 red frame and lots of green ones? A total of 10 seconds or so should do it.

web-platform-tests/wpt#36044

@styfle
Copy link

styfle commented Sep 28, 2022

I also discovered this Safari loading="lazy" gray border bug that has been marked fixed but not released to stable yet.

@styfle
Copy link

styfle commented Sep 28, 2022

And this Firefox white background while loading image bug which is not fixed yet. It is very noticeable for websites with dark backgrounds.

@mathiasbynens
Copy link

Interop 2023 proposals relevant to this topic:

mathiasbynens added a commit to web-platform-tests/wpt that referenced this issue Oct 5, 2022
@foolip
Copy link
Member Author

foolip commented Oct 5, 2022

I'll go ahead and close this issue, as it's not a full proposal. If anyone has image-related features they'd like to suggest for Interop 2023, please see https://github.com/web-platform-tests/interop/blob/main/2023/README.md for the process.

@foolip foolip closed this as completed Oct 5, 2022
@foolip foolip removed the focus-area-proposal Focus Area Proposal label Oct 5, 2022
@jzern
Copy link

jzern commented Oct 17, 2022

WPT covers animated AVIF in the ImageDecoder tests: https://wpt.fyi/results/webcodecs/image-decoder.https.any.html?label=experimental&label=master&aligned (Subtests: “Test multi-track AVIF image decoding”) However, since ImageDecoder is not universally available yet, it would be nice to have some tests that do not depend on ImageDecoder as well, perhaps following the example in https://github.com/web-platform-tests/wpt/tree/master/apng.

Update: It looks like we can’t “just” follow the APNG example. That test relies on last frame being shown after a certain timeout, which depends on the animation not looping — but AVIF animations always loop indefinitely.

Looping with animated AVIF should be controllable with an edit-list, as defined by MIAF.

moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this issue Oct 21, 2022
…AVIF test, a=testonly

Automatic update from web-platform-tests
Add `ImageDecoder`-independent animated AVIF test (#36044)

Ref. web-platform-tests/interop#136
--

wpt-commits: 28907950abfc7baf1cc61b5b9845f2a787032906
wpt-pr: 36044
jamienicol pushed a commit to jamienicol/gecko that referenced this issue Oct 26, 2022
…AVIF test, a=testonly

Automatic update from web-platform-tests
Add `ImageDecoder`-independent animated AVIF test (#36044)

Ref. web-platform-tests/interop#136
--

wpt-commits: 28907950abfc7baf1cc61b5b9845f2a787032906
wpt-pr: 36044
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants