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

Add AVIF_ENABLE_EXPERIMENTAL_EXTENDED_PIXI #2591

Merged
merged 6 commits into from
Feb 5, 2025

Conversation

y-guyon
Copy link
Collaborator

@y-guyon y-guyon commented Feb 3, 2025

Add experimental support for PixelInformationProperty syntax from HEIF 3rd Ed. Amd2 behind a compilation flag.

Add experimental support for PixelInformationProperty syntax from HEIF
3rd Ed. Amd2 behind a compilation flag.
Copy link
Collaborator

@maryla-uc maryla-uc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for the changes!

@y-guyon y-guyon merged commit 8ddc0b0 into AOMediaCodec:main Feb 5, 2025
35 checks passed
@y-guyon y-guyon deleted the extended_pixi branch February 5, 2025 09:32
#if defined(AVIF_ENABLE_EXPERIMENTAL_EXTENDED_PIXI)
// Use the full syntax of the PixelInformationProperty from HEIF 3rd edition Amendment 2.
// WARNING: Experimental feature. Produces files that may be incompatible with older decoders.
AVIF_HEADER_FULL_WITH_EXTENDED_PIXI,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The use of the extended 'pixi' box should not be encoded in the header format's name, otherwise we will need to add new header formats combinatorially if another box is extended.

For a hypothetical example, suppose the 'meta' box is extended in the future. Then we will need to add not only AVIF_HEADER_FULL_WITH_EXTENDED_META but also AVIF_HEADER_FULL_WITH_EXTENDED_META_AND_EXTENDED_PIXI.

There are two alternatives that avoid the combinatorial growth of header formats:

  1. Add a new boolean field useExtendedPixi to avifEncoder instead.
  2. Encode the version of HEIF in the new header format, e.g., AVIF_HEADER_FULL_ED3_AMD2.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another alternative: #2612

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

Successfully merging this pull request may close these issues.

3 participants