NOAA

Geophysical Fluid
Dynamics Laboratory

Skip to: [content] [navigation]
If you are using Navigator 4.x or Internet Explorer 4.x or Omni Web 4.x , this site will not render correctly!

Vis > animation > Animation Formats

Animation Formats

Animation Formats

The major animation formats that one is likely to encounter include MPEG, SGI Movie, QuickTime, AVI, FLI/FLC, and GIF89a. Here is a quick and general summary of their characteristics:

MPEG SGI Movie QuickTime AVI FLI/FLC GIF89a
8-bit Color
24-bit Color
Fast Playback
Portable
Small File Size


MPEG

MPEG (a standard from the Motion Picture Experts Group) is an unusual animation format when compared to the types listed below. One of the things that makes it so unique is that you can actually specify how much compression you want for an animation sequence using adjustable "quality settings". Briefly, the basic idea of MPEG encoding is predicting motion between images using three types of "frames". They are I (intra) frames, P (predicted) frames, and B (bidirectional) frames. Each source image is associated with a frame type which determines the algorithm used to encode it into the animation. What this means is that the quality setting can be individually specified for each of these frame types which affects their encoding algorithms and allows tremendous control over the final animation. In practice, setting them all to the same value will usually produce reasonable results. A program like TkAniMaker presents the quality settings as integer ranges from 1 to 31 with higher numbers resulting in better compression but worse image quality. The amount of compression can be far greater than what is offered by any of the other formats, but there is always some trade-off in image quality. In cases where file size is important (such as for WWW pages), the trade-off is well worth it!

SGI Movie

SGI Movie is a custom animation format developed by SGI for its IRIX-based machines. It is not very portable to other platforms, but the image quality can be very good, playback can be quite fast, and a stereo CD-quality soundtrack can be included. SGI Movies are created with the Movie Maker, makemovie, MediaConvert, and TkAniMaker programs under IRIX. There is currently no program for creating SGI Movies under Linux.

There are three basic compression schemes used in SGI movies: MVC1, MVC2, and JPEG. MVC1 animations have image quality reasonably close to the original source images. MVC2 animations can be two or three times smaller (in terms of file size) than their MVC1 equivalents, however, the image quality is somewhat worse with a slight (but noticable) mosaic effect. JPEG animations have the worst image quality when compared to the other two, but are always the smallest. It should also be noted that these JPEG animations will play pack significantly slower because of the computationally-intensive decompression that is required. As with individual images, the JPEG compression has a tendency to make sharp edges such as text appear "fuzzy". Although not generally a good idea because the file size can be enormous, it is possible to create an SGI movie without any compression at all in order to get the best possible image quality, which is identical to the source images.

QuickTime

QuickTime is a format first developed for the Macintosh computer. Like the SGI Movie format, it allows a high-quality audio track to be synchronized with the video. The basic compression schemes used in QuickTime movies (at least for SGI's implemention) are RLE and JPEG. The image quality of the QuickTime JPEG is identical to the SGI Movie JPEG (i.e. fuzzy). The QuickTime RLE is the closest in quality to the original 24-bit images, however, it is significantly larger than the SGI Movie formats.

Apple is the official source of QuickTime information (including samples) on their WWW pages. Movie Maker can import and export QuickTime animations. Movie Player and XAnim can play them back, although, XAnim can deal with more QuickTime compression schemes.

AVI

AVI (Audio Video Interleaved) is a format first developed for the PC (namely the Windows OS). It also allows an interleaving of the audio and video tracks. Players exist for most platforms; on the SGI it's XAnim. There is no practical way to create an AVI on the SGI using IRIX 5.3; although, it is possible with IRIX 6.x.

FLI/FLC

FLI and FLC are old formats originally created by Autodesk for the PC. The basic difference between FLI and FLC is that FLI (the original format for Autodesk Animator) is supposed to be limited to dimensions of 320x200 while the newer FLC can go all the way up to 1280x1024. FLC does have a number of "standard" sizes (320x200, 640x480, 800x600, and 1280x1024) and animations may play back much faster (with a program such as XAnim) if one of these is used rather than an arbitrary image size. This unusual behavior is probably due to the way that the animations are structured and decoded.

Both FLI and FLC are limited to 8-bit color since they were created at a time when higher color resolutions were not common on the PC. This color limitation may not be much of a problem for computer generated images that have a limited color palette anyway. The fact that only 8-bit color has to be processed compared to usually higher color resolutions for the other formats results in superior playback speed. Another factor contributing to the speed is the compression that the format uses. FLI/FLC simply stores the parts of an image that change from one frame to the next, which is a relatively easy scheme to decode. Several of the other formats actually throw out some data when the images are compressed into an animation resulting in varying degrees of "fuzziness" and/or "blockiness". FLI/FLC animations remain "sharp" since the only image data that may get lost is when converting down from 24-bit originals to 8-bit. When starting with images that have a low number of colors (<= 256) to begin with, nothing is lost during animation creation.

A program called ppm2fli will produce FLI/FLC on the SGI. The USGS has some more information about the FLI/FLC format as well as sample animations of coastal ocean modeling.

GIF89a

This format basically consists of a number of GIF images stored in one file with inter-frame timing information. Each image can have its own colormap (limited to 8-bit just like regular GIF images) or all the images can share a global colormap. It is really designed for simple animations on Web pages (using Netscape 2.0 or higher) because there is no frame-to-frame compression, just the usual LZW compression for each individual frame. Also, players like XAnim always buffer all the images in memory which severly limits its usefullness with large animations. The GIFMerge and WhirlGIF programs provide a way to create them on the SGI. Here is a source of more information on GIF89a animation.


Examples

In an effort to better illustrate the differences between the animation formats, here are example animations in each format created with the same set of 24 images. The source images are all 24-bit SGI RGB files with dimensions of 376x349 and they depict a rotating earth. Several animation files are actually available on-line (such as the MPEGs) while the rest of the links are to the first image of their respective animations. The items in parentheses next to the formats are their respective compressions (global quality setting for the MPEGs).

File size in bytes
Raw 24-bit 9448128


SGI Movie (None) 13122408



SGI Movie (MVC1) 1424872
SGI Movie (MVC2) 741485
SGI Movie (JPEG) 574880
QuickTime (None) 12598725



QuickTime (RLE) 4001181
QuickTime (JPEG) 553581
FLI/FLC 1422254
GIF89a 1157657
MPEG (1) 1297651
MPEG (2) 839538
MPEG (3) 627059
MPEG (4) 505926
MPEG (5) 423537
MPEG (6) 365398
MPEG (7) 321383
MPEG (8) 287865
MPEG (9) 258239
MPEG (10) 235945
MPEG (11) 216734
MPEG (12) 200704
MPEG (13) 186864
MPEG (14) 174704
MPEG (15) 164078
MPEG (16) 155617
MPEG (17) 147011
MPEG (18) 139622
MPEG (19) 132830
MPEG (20) 127236
MPEG (21) 121715
MPEG (22) 116866
MPEG (23) 112696
MPEG (24) 108918
MPEG (25) 104970
MPEG (26) 101875
MPEG (27) 98769
MPEG (28) 95914
MPEG (29) 93363
MPEG (30) 90843
MPEG (31) 88617

The original 24-bit images were reduced to 8-bit for the FLI/FLC & GIF89a formats using ImageMagick's convert program.

Lasted modified: Wednesday, 30-Oct-02 17:44:29 EST

smaller bigger reset
last modified: February 20 2004.