Coder Social home page Coder Social logo

Comments (3)

ledyba-z avatar ledyba-z commented on July 20, 2024

I know that limited-ranged alpha is corrected to full-ranged internally (in here), but it may cause performance issue....

from libavif.

joedrago avatar joedrago commented on July 20, 2024

My personal opinion (not the opinion of the AVIF standard or AOM):

I think this creates a lot of pain points, corner cases, and complexity for very little gain, if I'm being honest. If you're actually planning to do anything meaningful with that alpha channel, you very likely want it to be the same dimensions as the color channel, and I think you'd at least want them to be the same AV1 profile (if not the same depth for color shifting reasons). HEIF/AVIF is quite a massive spec of features, and some of these cases where a file is "legal" might not be worth the headaches associated.

My stance on issues like this:

Given that such a file is a legal AVIF, I'm sure I'll eventually add decode support for it, just like it is legal for the alpha plane to be encoded in limited range, despite that being somewhat nonsensical once you go to use the channel itself. I'd eventually like to be able to decode any reasonable AVIF and do something useful with the payload. As for encoding such a combination, I'm not in a big rush to make avifEncoder encode every possible combination of boxes that HEIF/AVIF can offer. My current encoding goal is to easily pack a single 8/10/12bpc image with optional alpha at various quality rates, metadata, and color profiles, with as many AV1 codec implementations as possible. A lot of these weirder combinations are lower priority for me, for now.

from libavif.

ledyba-z avatar ledyba-z commented on July 20, 2024

@joedrago Thank you to reply!

To tell you the truth, I really agree with you.
I think 8-bit RGB with 10-bit alpha is meaning-less.
(In contrast, I think depth image with different dit-depth and different size might be helpful)

How about adding additional constraints about alpha images for AVIF standard?
(I think it is confusing if there are differences between reference implementation and standards)

Do you know where the standard is discussed?

If you know, please tell me!

from libavif.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.