APNG Specification: Difference between revisions

Jump to navigation Jump to search
Line 11: Line 11:
APNG is backwards-compatible with PNG; any PNG decoder should be able to decode the first frame of an APNG and treat it as a normal single-frame PNG.
APNG is backwards-compatible with PNG; any PNG decoder should be able to decode the first frame of an APNG and treat it as a normal single-frame PNG.


= 2. Structure =
= Structure =


An APNG stream is a normal PNG stream as defined in the [PNG Specification][pngspec], with four additional chunks describing the animation and providing additional frame data.  The first frame of an animation, frame 0, is encoded as a normal PNG.  This frame is what decoders that do not understand the APNG chunks will display.
An APNG stream is a normal PNG stream as defined in the [PNG Specification][pngspec], with four additional chunks describing the animation and providing additional frame data.  The first frame of an animation, frame 0, is encoded as a normal PNG.  This frame is what decoders that do not understand the APNG chunks will display.
Line 121: Line 121:


Note: both the container chunk (`aDAT`) and every chunk within (`fCTL`, `IDAT`s, `fEND`) must specify the length of its own data field and the CRC over its own chunk name + chunk data as required by section 5.3 of the PNG Specification.
Note: both the container chunk (`aDAT`) and every chunk within (`fCTL`, `IDAT`s, `fEND`) must specify the length of its own data field and the CRC over its own chunk name + chunk data as required by section 5.3 of the PNG Specification.


= 4. Revisions to this Specification ==
= 4. Revisions to this Specification ==
48

edits

Navigation menu