APNG

The Animated Portable Network Graphics (APNG) file format is an extension to the Portable Network Graphics (PNG) specification. 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. It also retains backward compatibility with non-animated PNG files.

The first frame of an APNG file is stored as a normal PNG stream, so most standard PNG decoders are able to display the first frame of an APNG file. The frame speed data and extra animation frames are stored in extra chunks (as provided for by the original PNG specification).

APNG competes with Multiple-image Network Graphics (MNG), a comprehensive format for bitmapped animations created by the same team as PNG. APNG's advantage is the smaller library size and compatibility with older PNG implementations.

    History

    An APNG of an MRI scan of a brain

    The APNG specification was created in 2004 by Stuart Parmenter and Vladimir Vukićević of the Mozilla Corporation to allow for storing the animations needed for interfaces such as throbbers. In May 2003, Mozilla had scrapped support for MNG animations, which provides a superset of APNG functionality, citing concerns about the large file size required for the expansive MNG decoder library (300 KB); the APNG decoder, built on the back of the PNG decoder, was a much smaller component.

    Among users and maintainers of the PNG and MNG formats, APNG had a lukewarm reception. In particular, PNG was conceived to be a single-image format. APNG hides the subsequent frames in PNG ancillary chunks in such a way that APNG-unaware applications would ignore them, but there are otherwise no changes to the format to allow software to distinguish between animated and non-animated images. Some of the main concerns arising from this were the inability of applications to negotiate for PNG and APNG, or distinguish between PNG and APNG once received, or for legacy software to even inform users that there are additional frames. Glenn Randers-Pehrson spearheaded efforts to reconcile the PNG purists' position with that of APNG proponents by recommending changes to APNG's format and proposing the use of a unique MIME type (e.g., video/png), but Mozilla rejected these proposals in favor of full backward compatibility.[]

    The PNG group officially rejected APNG as an official extension on April 20, 2007. There have been several subsequent proposals for a simple animated graphics format based on PNG using several different approaches.

    Mozilla Firefox added support for APNG in version 3 trunk builds on March 23, 2007. However, because libpng is the PNG Group's reference implementation of the official specification, APNG support can never be supported in the main libpng distribution so long as it remains unratified by the Group. Iceweasel 3 supports APNG by using Mozilla's unofficial variant of libpng.

    In 2008 WorldDMB adopted APNG as a backward compatible extension to enable animation as part of the MOT SlideShow user application for Digital Radio. "APNG 1.0 Specification - Animated Portable Network Graphics" is included as normative Annex A in the ETSI standard TS 101 499 V2.2.1. In 2010 Commercial Radio Broadcasters in Sydney began to include APNG animations in DAB+ digital radio broadcasts.[] These APNG animations are carried by the "MOT slideshow" application which accompanies the audio services. It is expected that other cities in Australia will follow in early 2011.[][]

    Mozilla's role in extending the PNG format to APNG echoes Netscape's much earlier role in popularizing animated GIFs.[]

    Support

    List of computer programs and their support of APNG, along with their version numbers and release date
    Field Software Supports? Since
    Image
    processing
    cphktool APNG Anime Maker Yes v. 1 (June 9, 2009)
    Gamani GIF Movie Gear Yes v. 4.2 (March 2008)
    GIMP With the APNG Plug-in N/A
    ImageJ Yes v. 1.41g (July 3, 2008)
    Yes v. 1.0.4 (November 14, 2008)
    IrfanView Read-only v. 4.40 (July 31, 2015)
    Konvertor Yes v. 4.02 (May 2010)
    KSquirrel Yes v. 0.7.2 (October 3, 2007)
    Paint.NET With the animation plugin N/A
    RealWorld Paint Yes v. 2011.1 (December 2011)
    VirtualDub With VirtualDub APNG Mod N/A
    XnView Read-only v. 1.97.4 (April 30, 2010)
    Sciter and HTMLayout UI engines Read-only Since 2008
    Browser
    Engines
    Webkit
    Yes (Mar 17, 2015)
    Web
    browsers
    Mozilla Firefox
    (Gecko layout engine)
    Yes v. 3 (June 17, 2008)
    SeaMonkey
    (Gecko layout engine)
    Yes v. 2
    Iceweasel and other Debian rebrandings
    (Gecko layout engine)
    Yes v. 4.0~b12
    Safari
    (WebKit layout engine)
    Yes v. 8.0
    Google Chrome and Chromium
    (Blink layout engine)
    With APNG addon or Unofficial build N/A
    Internet Explorer
    (Trident layout engine)
    No N/A
    Opera v12 and earlier
    (Presto layout engine)
    Yes v. 9.5 (June 12, 2008)
    Opera 15 and later
    (Blink layout engine)
    With the APNG Plug-in v. 15.0
    Mobile
    browsers
    iOS Safari Yes v. 8.0
    iOS app With 3rd party library v. 8.0
    Android app OmniGIF(APNG) Player v. 3.3.0.0 (API-Level >= 9)
    Firefox for Android Yes ?
    Opera Mobile Dropped[] ?

    External links

    0.031308