Audio Video Interleave

From Wikipedia, the free encyclopedia

(Redirected from OpenDML)
Jump to: navigation, search
Audio Video Interleave
File extension: .avi
MIME type: video/avi
video/msvideo
video/x-msvideo
Type code: 'Vfw '
Uniform Type Identifier: public.avi
Developed by: Microsoft
Container for: Audio, Video

Audio Video Interleave, known by its acronym AVI, is a multimedia container format introduced by Microsoft in November 1992 as part of its Video for Windows technology. AVI files can contain both audio and video data in a standard container that allows synchronous audio-with-video playback. Like DVDs, AVI files support multiple streaming audio and video, although these features are seldom used. Most AVI files also use the file format extensions developed by the Matrox OpenDML group in February 1996. These files are supported by Microsoft, and are unofficially called "AVI 2.0".

Contents

AVI is a special case of the Resource Interchange File Format (RIFF), which divides a file's data into blocks, or "chunks." Each "chunk" is identified by a FourCC tag. An AVI file takes the form of a single chunk in a RIFF formatted file, which is then subdivided into two mandatory "chunks" and one optional "chunk". The entire structure of a RIFF file was copied from an earlier IFF format devised by Electronic Arts in the mid-1980s[citation needed], the primary difference being the "endianness" of integers. In fact, even a properly written IFF parser for the now old-aged AmigaOS, (after correcting for endianness) will parse RIFF files.

The first sub-chunk is identified by the "hdrl" tag. This sub-chunk is the file header and contains metadata about the video, such as its width, height and frame rate. The second sub-chunk is identified by the "movi" tag. This chunk contains the actual audio/visual data that make up the AVI movie. The third optional sub-chunk is identified by the "idx1" tag which indexes the physical addresses [within the file] of the data chunks.

By way of the RIFF format, the audio/visual data contained in the "movi" chunk can be encoded or decoded by software called a codec, which is an abbreviation for (en)coder/decoder. Upon creation of the file, the codec translates between raw data and the (compressed) data format used inside the chunk. An AVI file may carry audio/visual data inside the chunks in virtually any compression scheme, including Full Frame (Uncompressed), Intel Real Time (Indeo), Cinepak, Motion JPEG, Editable MPEG, VDOWave, ClearVideo / RealVideo, QPEG, and MPEG-4 Video.

AVI is considered by some to be an outdated container format. There is significant overhead when used with popular MPEG-4 codecs (Xvid and DivX, for example), increasing file size more than necessary. Also the container has no native support for modern MPEG-4 features like B-Frames. To circumvent this problem, cumbersome (in terms of programming) hacks are sometimes used, likely causing incompatibilities with some players. Hacks are also used to implement language subtitles (which are an increasingly important aspect of reduced-size video packages typical of .avi and similar formats). The highly-efficient H.264 codecs employed in .AVIs use even more compression "tricks", and are thus even more ill-suited to the format; this is particularly true of H.264 Main Profile (MP) and High Profile (HiP) codecs.

AVI files do not contain pixel aspect ratio information. Microsoft confirms that "many players, including Windows Media Player, render all AVI files with square pixels. Therefore, the frame appears stretched or squeezed horizontally when the file is played back."[1] To address this deficiency, Microsoft diverts users and developers to the Windows Media Encoder. "A better solution ... is to encode your video by using Windows Media Encoder 9 Series. You can capture digital video directly with the encoder or encode from an AVI file that contains video that was captured with nonsquare pixels", recommends MSDN article cited above.

Despite its limitations and the availability of more modern container formats (such as QuickTime, Matroska, Ogg and MP4), AVI remains popular among file-sharing communities, due to its high compatibility with existing video editing and playback software like VirtualDub and Windows Media Player. The tendency has been to install DirectShow filters like ffdshow to augment DirectShow, using AVI as a common-ground, lowest-common-denominator format. While the codec/container incompatibilities have undermined AVI's near-ubiquity, the obscurity and tech-savviness of those involved in the file-sharing groups have rendered this irrelevant.

Projects based on the FFmpeg project, including MPlayer, xine, and VLC Media Player, have rendered most problems with viewing AVI format video files irrelevant, regardless of internal format or codec needed, due to FFmpeg's high compatibility.

In June 2005, DivX, Inc. released its own container format called DivX Media Format (.divx extension) to succeed the AVI + DivX combo. However, this format is basically an enhanced AVI format (based on the same RIFF structure) and so far, has gained no perceivable traction in file-sharing communities where the DivX codec was once popular (the Xvid codec has instead become the codec of choice among most of the file-sharing groups [2]).

Cited references

  1. ^ Determining the Shape of Pixels and Frames.
  2. ^ Scene Rules - Rules for the file-sharing scene indicating that Xvid is the preferred MPEG-4 ASP codec since 2004.

General references

Advanced Search
Included Web Search Engines


Safe Search

close

Top Matching Results

Occasionally Search.com will highlight specialized results that are based on the context of your query. Examples of specialized results include specific links to news, images, or video.

Top Matching Results may highlight information from other Search.com pages, content from the CNET Network of sites, or third party content. The listings are based purely on relevance. Search.com does not receive payment for listings in this section but our partners that provide this data may get paid for listing these products.

Sponsored Links

This section contains paid listings which have been purchased by companies that want to have their sites appear for specific search terms and related content. These listings are administered, sorted and maintained by a third party and are not endorsed by Search.com.

Search Results

Search.com sends your search query to several search engines at one time and integrates the results into one list which has been sorted by relevance using Search.com's proprietary algorithm. You can customize the list of search engines included in your metasearch from the preferences.

The search engines that are used in your metasearch may allow companies to pay to have their Web sites included within the results. To view the Paid Inclusion policy for a specific search engine, please visit their Web site. Search.com does not accept payment or share revenue with any search engine partner for listings in this section.