Multiple-image Network Graphics

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Multiple-image Network Graphics
Filename extension .mng
Internet media type video/x-mng (unofficial)
Type of format computer animation
Container for PNG, JNG
Extended from PNG

Multiple-image Network Graphics (MNG) is a graphics file format, published in 2001, for animated images. Its specification is publicly documented and there are free software reference implementations available.

MNG is closely related to the PNG image format. When PNG development started in early 1995, developers decided not to incorporate support for animation, because the majority of the PNG developers felt that overloading a single file type with both still and animation features is a bad design, both for users (who have no simple way of determining to which class a given image file belongs) and for web servers (which should use a MIME type starting with image/ for stills and video/ for animations—GIF notwithstanding).[1] However, work soon started on MNG as an animation-supporting version of PNG. Version 1.0 of the MNG specification was released on 31 January 2001.

File support[edit]

Support[edit]

Gwenview has native MNG support. GIMP can export images as MNG files. Imagemagick can create a MNG file from a series of PNG files. With the MNG plugin, Irfanview can read a MNG file.[2] If MPlayer is linked against libmng, as it usually is,[citation needed] MPlayer and thus all graphical front-ends like Gnome MPlayer can display MNG files.

Mozilla browsers and Netscape 6.0, 6.01 and 7.0 included native support for MNG until the code was removed in 2003 due to code size and little actual usage,[3] causing complaints on the Mozilla development site.[4] Mozilla later added support for APNG as a simpler alternative.[5] Similarly, early versions of the Konqueror browser included MNG support but it was later dropped. MNG support was never included in Google Chrome, Internet Explorer, Opera, or Safari.

Product Support status
Image processing
GIMP Partial
Gnome MPlayer Yes
Gwenview Yes
ImageMagick Yes
Irfanview Partial, via plugin
KMPlayer Yes
Konvertor Yes
MPlayer Yes
XnView Yes

Server support[edit]

Popular web hosting servers are not configured to handle MNG files.[6][7]

The MNG developers had hoped that MNG would replace GIF for animated images on the World Wide Web, just as PNG had done for still images.[8] However, with the expiration of LZW patents and existence of alternative file formats such as Flash and SVG, combined with lack of MNG supporting viewers and services, web usage was far less than expected.

Technical details[edit]

The structure of MNG files is essentially the same as that of PNG files, differing only in the slightly different signature (8A 4D 4E 47 0D 0A 1A 0A in hexadecimal, where 4D 4E 47 is ASCII for "MNG" – see Portable Network Graphics: File header) and the use of a much greater variety of chunks to support all the animation features that it provides. Images to be used in the animation are stored in the MNG file as encapsulated PNG or JNG images.

Two versions of MNG of reduced complexity are also defined: MNG-LC (low complexity) and MNG-VLC (very low complexity). These allow applications to include some level of MNG support without having to implement the entire MNG specification, just as the SVG standard offers the "SVG Basic" and "SVG Tiny" subsets.

MNG does not have a registered MIME media type, but video/x-mng or image/x-mng can be used. MNG animations may be included in HTML pages using the <embed> or <object> tag.

MNG can either be lossy or lossless, depending whether the frames are encoded in PNG (lossless) or JNG (lossy).

Alternatives[edit]

The most common alternatives are Animated GIF and Adobe Flash, with the relative newcomer video alternative to GIF recently gaining momentum. Animated GIF images are restricted to 256 colors and are used in simple scenarios but are supported in all major web browsers. Adobe Flash is a common alternative for creating complex and/or interactive animations and is natively supported by Internet Explorer 10 and Google Chrome, although support is deprecated as of 2016.

In web pages, it is possible to create pseudo-animations by writing JavaScript code that loads still PNG or JPEG images of each frame and displays them one by one for a specified time interval. Apart from requiring the user to have JavaScript support and choose not to disable it, this method can be CPU- and bandwidth-intensive for pages with more than one image, large images, or high framerates, and does not allow the animation to be saved in one image file or posted on image-based sites such as flickr or imageboards.

Most web browsers support APNG, a non-standard extension to PNG for simple GIF-like animations. Another alternative is SVG images with embedded PNG or JPEG graphics, using SVG animation (if supported) or JavaScript to flip between images. Internet Explorer supports neither APNG nor SVG animation.[9]

Another approach uses CSS 3 features, notably CSS Animation, which now has some level of support in most major web browsers. CSS Sprites (providing several images as tiles in a single large image file) can be used as animations by varying which part of the large image is visible using CSS Animation or JavaScript.

See also[edit]

References[edit]

  1. ^ PNG Frequently Asked Questions (maintained by Greg Roelofs)
  2. ^ skiljan, irfan. "IrfanView PlugIns". Irfanview.com. Retrieved 18 November 2012. 
  3. ^ Bug 195280 – Removal of MNG/JNG support
  4. ^ Bug 18574 – restore support for MNG animation format and JNG image format
  5. ^ "Animated PNG graphics - MDC Doc Center". 4 July 2008. Retrieved 6 December 2010. 
  6. ^ "Help:Images and other uploaded files". Wikimedia Meta-Wiki. Wikimedia Foundation. 2 October 2012. Retrieved 18 November 2012. 
  7. ^ [1] Archived 12 August 2014 at the Wayback Machine.
  8. ^ MNG (Multiple-image Network Graphics) Home Page
  9. ^ Can I use Animated PNG? and Can I use SVG SMIL animation?, Alexis Deveria, CanIUse.com. Accessed 5 Feb 2013

External links[edit]