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

AVIF Decode #495

Closed
1 task done
jaikrishnan opened this issue Apr 7, 2020 · 12 comments
Closed
1 task done

AVIF Decode #495

jaikrishnan opened this issue Apr 7, 2020 · 12 comments
Assignees
Labels
Missing: explainer Progress: in progress Progress: pending external feedback The TAG is waiting on response to comments/questions asked by the TAG during the review Topic: media

Comments

@jaikrishnan
Copy link

Hello TAG!

I'm requesting a TAG review of AVIF Decode.

Further details:

  • I have reviewed the TAG's API Design Principles
  • Relevant time constraints or deadlines: N/A
  • The group where the work on this specification is currently being done:
  • The group where standardization of this work is intended to be done (if current group is a community group or other incubation venue): Alliance for Open Media
  • Major unresolved issues with or opposition to this specification: N/A
  • This work is being funded by: N/A

You should also know that...

N/A
We'd prefer the TAG provide feedback as (please delete all but the desired option):

💬 leave review feedback as a comment in this issue and @-notify [github usernames]

@cynthia
Copy link
Member

cynthia commented Apr 14, 2020

Hi @jaikrishnan!

It's pretty unclear what we are expected to do here; there is no explainer, nor from our side an API to review. From what we see it's the browser side implementation to allow decoding a new image format - we don't quite have a review process for these cases.

This does introduce a new image format onto the web platform, which means that any form of I/O that allows a still image (e.g. canvas, clipboard) would probably require some level plumbing to support it (e.g. registries, whitelists) once it becomes something beyond a blackbox codec that is only expected to be used as decoded internal state of an HTMLImageElement. (e.g. SkImage?)

@kenchris
Copy link

kenchris commented Apr 14, 2020

This seems somewhat related https://www.w3.org/TR/mse-byte-stream-format-isobmff/

Also maybe it would be nice explaining where these other standards used are used today. It seems to be used for MP4 files today. If such info and other background could be part of the intro in the spec that would be nice, if not, it definitely belongs as part of the explainer document.

In cases like "in the generic image file format [HEIF]" it would be nice to spell out what HEIF actually stands for like High Efficient Image Format - that might not be clear to the reader.

Does containers like ISO-BMFF and HEIF follow same patent policies etc as AV1 video format?

From a web perspective, I think it would be nice to know if there are any parts of the platform that needs to be patches to support AVIF property. Like you can convert an offscreen canvas to say a PNG and set certain settings while doing so: https://developer.mozilla.org/en-US/docs/Web/API/OffscreenCanvas/OffscreenCanvas.convertToBlob()

Those settings might be different for AVIF and I think that should all be considered while proposing adding AVIF to the web platform.

@kenchris
Copy link

Does AVIF support alpha channel?

@wantehchang
Copy link

wantehchang commented Apr 21, 2020 via email

@kenchris
Copy link

Could you explain why the HEIF container was used in comparison with other containers (WebP uses RIFF). How does this choice affect the use on the web?

@cynthia
Copy link
Member

cynthia commented Apr 21, 2020

So a bit of a blunt question based on what we discussed in today's call - this is based off of HEIF, which is not a royalty-free standard as we understand it. What was the technical background of the decision, and is there a path forward given the provenance of the core container format this is based off of?

@cynthia
Copy link
Member

cynthia commented Apr 21, 2020

(Ugh, for some reason I was seeing a cached version without @kenchris's comment.)

@kenchris
Copy link

@wantehchang @jaikrishnan any update to our comments/questions?

@torgo torgo added the Progress: pending external feedback The TAG is waiting on response to comments/questions asked by the TAG during the review label Apr 28, 2020
@jaikrishnan
Copy link
Author

jaikrishnan commented Apr 29, 2020

Could you explain why the HEIF container was used in comparison with other containers (WebP uses RIFF). How does this choice affect the use on the web?

Benefits of the container design are primarily familiarity for developers, particularly those whose pipelines include uploads from mobile cameras.

So a bit of a blunt question based on what we discussed in today's call - this is based off of AVIF, which is not a royalty-free standard as we understand it. What was the technical background of the decision, and is there a path forward given the provenance of the core container format this is based off of?

Re: provenance, the AVIF image file format describes the use of an AV1 bitstream with a subset of the ISO-BMFF container, i.e. the MiAF constraints. Our view is the AVIF format would be available for use by open platforms like Chromium, in line with AOM's position on AV1 royalties.

@jaikrishnan
Copy link
Author

It's pretty unclear what we are expected to do here; there is no explainer, nor from our side an API to review. From what we see it's the browser side implementation to allow decoding a new image format - we don't quite have a review process for these cases.

This is a good point, let me confirm with blink-owners if AVIF should go through a TAG Review, and then add an explainer and other design context that would be helpful

@cynthia
Copy link
Member

cynthia commented May 12, 2020

@jaikrishnan Did you hear anything back? We'd be happy to review as long as it's clear what aspect we should be reviewing.

@plinss plinss removed this from the 2020-05-21-f2f milestone Jun 7, 2020
@jaikrishnan
Copy link
Author

Thanks @cynthia, we looped back with blink-api-owners and confirmed that a Tag Review wouldn't be applicable for an image decoder implementation. I'll close this issue and note this in the intent to ship.

@veluca93 veluca93 mentioned this issue May 12, 2021
1 task
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Missing: explainer Progress: in progress Progress: pending external feedback The TAG is waiting on response to comments/questions asked by the TAG during the review Topic: media
Projects
None yet
Development

No branches or pull requests

6 participants