-
-
Notifications
You must be signed in to change notification settings - Fork 82
Description
APNG is an unofficial extension by Mozilla, it allows for animated PNG files that work similarly to animated GIF files, while supporting 24-bit images and 8-bit transparency not available for GIFs.
- https://wiki.mozilla.org/APNG_Specification
- https://sourceforge.net/projects/apng/
- https://commons.wikimedia.org/wiki/Category:Animated_PNG
This issue depends on #40 (row- and chunk callbacks)
This would be implemented without callbacks, it should be possible to reuse spng_decode_image()
for decoding the APNG frames.
Implementation
-
Parse and validate acTL, fcTL chunks
-
Implement frame decoding / fdAT parsing
-
API
Testing
-
Create a libpng-apng repository: https://github.com/randy408/libpng-apng (update to v1.6.39)Went with another approach -
Modify libpng's meson.build to enable APNG support
-
Replace the current libpng Meson wrap
-
Add APNG test images
-
Frame and metadata comparison tests against libpng
Other
-
Update seed corpus
-
Update fuzz target
Documentation
-
API Documentation
-
Document the new testsuite requirements for distro packagers
-
Update migration guide
-
Usage example