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

APNG implementation #38

Open
svgeesus opened this issue Nov 29, 2021 · 7 comments
Open

APNG implementation #38

svgeesus opened this issue Nov 29, 2021 · 7 comments

Comments

@svgeesus
Copy link
Contributor

svgeesus commented Nov 29, 2021

This issue is for tracking implementations, including patches to libpng, to various browsers, etc.

Reading/Displaying APNG

Generating APNG

There is a list of various image editors and command line tools

Of those TweakPNG looks useful for creating WPT tests and the source is on GitHub which might allow adding support for new chunks.

APNG tests

@ProgramMax
Copy link
Collaborator

Should there be a "needs implementation" label? Is that what the "implementation" label means?

Previously, I was thinking each issue should have 1 "needs ___" label to indicate how to make progress. But this is sort of a meta issue, covering both implementation and tests.

Maybe we should file separate issues, keep the 1 "needs ____" alive, and add a "needs child issue fixed" label?

@ProgramMax
Copy link
Collaborator

I learned WPT already has some tests for APNG.

@svgeesus
Copy link
Contributor Author

Related (lack of interop)

@svgeesus
Copy link
Contributor Author

svgeesus commented Nov 1, 2023

Pull request for APNG tests web-platform-tests/wpt#42893

@svgeesus
Copy link
Contributor Author

svgeesus commented Jan 5, 2024

Web Platform Tests for png now have 28 tests for APNG. Chrome (and Edge, and other blink-based browsers) pass 28/28, as does Firefox. Safari passes 22/28.

More tests should be added for error handling (testing fallback to the static PNG image if the APNG is invalid) which depends on

@svgeesus
Copy link
Contributor Author

svgeesus commented Jan 9, 2024

28/28 passes in two independent browsers (Chrome and Firefox) means that APNG meets the W3C criteria for interoperable implementation. Removing the blocking-exit tag, and leaving issue open to track implementation status for implementation report.

@svgeesus
Copy link
Contributor Author

svgeesus commented Apr 1, 2024

I see that the GIMP forum describes APNG as a deprecated format and encourages use of WebP instead. However there is a GIMP APNG plugin.

It requires a specific unofficial APNG patch to libpng (there are multiple patches that add APNG support, hindering interoperability)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants