Audio Video Interleave

Audio Video Interleave (also Audio Video Interleaved and known by its initials and filename extension AVI, usually pronounced /ˌ.vˈ/[3]) is a proprietary multimedia container format and Windows standard[4] introduced by Microsoft in November 1992 as part of its Video for Windows software. AVI files can contain both audio and video data in a file container that allows synchronous audio-with-video playback. Like the DVD video format, AVI files support multiple streaming audio and video, although these features are seldom used.

Audio Video Interleave
Filename extension
.avi
Internet media type
video/vnd.avi[1]
video/avi
video/msvideo
video/x-msvideo
Type code'Vfw '
Uniform Type Identifier (UTI)public.avi
Developed byMicrosoft
Initial releaseNovember 10, 1992; 32 years ago (1992-11-10)
Type of formatContainer format
Container forAudio, video
Extended fromResource Interchange File Format
Open format?No
Free format?Yes[2]
Websitehttps://docs.microsoft.com/en-us/windows/win32/directshow/avi-file-format

Many AVI files use the file format extensions developed by the Matrox OpenDML group in February 1996.[5] These files are supported by Microsoft, and are unofficially called "AVI 2.0".[6] In 2010 the US government's National Archives and Records Administration defined AVI as the official wrapper for preserving digital video.[7]

History

edit

Publishers faced a predicament regarding how they should distribute videos on CD-ROMs. Thirty seconds of video displayed in 24-bit color and at thirty frames per second and Super VGA resolutions could take up 680 megabytes of space—the storage capacity of most CD-ROMs in 1992. Lossily compressing the videos would save a lot of space, but not without degrading the quality of the videos. Publishers who were more concerned about video quality instead were searching for an ideal compression algorithm that would compress the video files while still preserving the quality.[8]

Microsoft recognized the problem and sought to develop a standard that would losslessly compress the video files. They also recognized that because of the hardware requirements for playing the videos in uncompressed quality, which at the time were demanding, it needed to allow users of low-end computers to play the videos in compressed quality. They developed and published the Audio Video Interleave format on November 10, 1992, as part of their Video for Windows, and included support for codecs to satisfy those users.[8][9][10]

Format

edit

AVI is a subformat 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.[11]

An AVI file takes the form of a RIFF header, which is then divided into two mandatory chunks and one optional chunk. The first chunk is identified by the "hdrl" tag, which stores the information required by the codec to decompress the AVI file for viewing. The second sub-chunk is identified by the "movi" tag, containing the actual audio and visual data that make up the AVI video. The third optional chunk is identified by the "idx1" tag, which indexes the offsets of the data chunks within the file.[11]

By way of the RIFF format, the audio and 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 and visual data inside the chunks in virtually any compression scheme, including Full Frame (Uncompressed), Indeo, run-length encoding, and Microsoft Video 1.[10]

Some programs, like VLC, complain when the "idx1" index sub-chunk is not found, as it is required for efficient moving among timestamps. They offer to "fix" the file by building an index temporarily or permanently.[12][better source needed]

Metadata

edit

As a derivative of the Resource Interchange File Format (RIFF), AVI files are commonly tagged with metadata in the INFO chunk. In addition, AVI files can embed Extensible Metadata Platform.[13] By design, any RIFF file can legally include additional chunks of data, each identified by a four-character code;[11] software which does not understand that particular code should skip the chunk. As such, it is theoretically possible to expand any RIFF file format, including AVI, to support almost any conceivable metadata. Some of the limitations of AVI in modern use relate to a lack of standardization in this metadata (see Limitations below).

Limitations

edit

Since its introduction in the early 90s, new computer video techniques have been introduced which the original AVI specification did not anticipate.

  • The original AVI specification does not provide a standardized way to encode aspect ratio information, although the later OpenDML (AVI 2.0) specification does. Consequently, older players may not select the right aspect ratio automatically (though it may be possible to do so manually).[14]
  • There are several competing approaches to including a time code in AVI files, which affects usability of the format in film and television post-production, although it is widely used.[15] For WAV audio files, Broadcast Wave (BWF) extensions were designed to standardize post-production metadata, but an equivalent for AVI files has not emerged. Some parties are known to write BWF chunks into AVI for metadata.[16]
  • AVI was not intended to contain video using any compression technique that requires access to future video frame data beyond the current frame (B-frame). Approaches exist to support modern video compression techniques (such as MPEG-4) that rely on this function, although this is beyond the intent of the original specification and may cause problems with playback software which does not anticipate this use.[17]
  • AVI cannot contain some specific types of variable bitrate (VBR) data reliably (such as MP3 audio at sample rates below 32 kHz).
  • Overhead for AVI files at the resolutions and frame rates normally used to encode standard definition feature films is about 5 MB per hour of video, the significance of which varies with the application.
  • AVI files cannot contain attachments such as fonts and subtitles. Consequently, subtitles must be distributed in a separate file or hardcoded into the video stream.

More recent container formats (such as Matroska, Ogg and MP4) solve all these problems, although software is freely available to both create and correctly replay AVI files which use the techniques described here.

DV AVI

edit

DV AVI is a type of AVI file where the video has been compressed to conform with DV standards. There are two types of DV-AVI files:

  • Type 1: The multiplexed Audio-Video is kept in its original multiplexing and saved together into the Video section of the AVI file
    • Does not waste much space (audio is saved uncompressed, but even uncompressed audio is tiny compared to the video part of DV), but Windows applications based on the VfW API do not support it.
  • Type 2: Like type 1, but audio is also saved as an additional audio stream into the file.
    • Supported by VfW applications, at the price of a small increase in file size.

Type 1 is actually the newer of the two types. Microsoft made the "type" designations, and decided to name their older VfW-compatible version "Type 2", which only furthered confusion about the two types. In the late 1990s through early 2000s, most professional-level DV software, including non-linear editing programs, only supported Type 1. One notable exception was Adobe Premiere, which only supported Type 2. High-end FireWire controllers usually captured to Type 1 only, while "consumer" level controllers usually captured to Type 2 only. Software is and was available for converting Type 1 AVIs to Type 2, and vice versa, but this is a time-consuming process.

Many FireWire controllers only captured to one or the other type. However, almost all relevant software supports both Type 1 and Type 2 editing and rendering, including Adobe Premiere. Thus, many users are unaware of the fact that there are two types of DV AVI files.

See also

edit

References

edit
  1. ^ Fleischman, Eric (June 1998). WAVE and AVI Codec Registries. IETF. doi:10.17487/RFC2361. RFC 2361. Retrieved December 6, 2009.
  2. ^ AVI (Audio Video Interleaved) File Format (Full draft). Sustainability of Digital Formats. Washington, D.C.: Library of Congress. March 9, 2016. Retrieved December 13, 2021.
  3. ^ Cudnik, Brian (2009). Lunar Meteoroid Impacts and How to Observe Them. Springer. p. 154. ISBN 978-1-4419-0324-2. Retrieved September 19, 2021.
  4. ^ Gavin, Brady (September 12, 2018). "What Is an AVI File (and How Do I Open One)?". How-To Geek. Retrieved September 19, 2021.
  5. ^ "AVI File Format with OpenDML Extensions, Version 1.02". www.loc.gov. March 9, 2016. Retrieved September 1, 2019.
  6. ^ stevewhims. "AVI RIFF File Reference - Windows applications". docs.microsoft.com. Retrieved September 1, 2019.
  7. ^ "Video Digital Product Options". archives.gov. Archived from the original on May 6, 2019. Retrieved September 1, 2019.
  8. ^ a b Raskin, Robin (December 22, 1992). "27 Good Reasons To Buy A CD-ROM Player". PC Magazine. Vol. 11, no. 22. pp. 345–346. Retrieved September 19, 2021.
  9. ^ Damore, Kelley; Corcoran, Cate (November 9, 1992). "Microsoft, vendors team up to air Video for Windows". InfoWorld. Vol. 14, no. 45. p. 3. Retrieved September 19, 2021.
  10. ^ a b Quain, John R. (January 12, 1993). "Microsoft Goes Hollywood With Video for Windows". PC Magazine. Vol. 12, no. 1. p. 39. Retrieved September 19, 2021.
  11. ^ a b c Gloe, Thomas (April 16, 2014). "Forensic analysis of video file formats § AVI Container format". Digital Investigation. 11 (1). Elsevier. doi:10.1016/j.diin.2014.03.009. ISSN 1742-2876.
  12. ^ "WindowsFAQ-1.1.x". VideoLAN Wiki.
  13. ^ Altheide, Cory; Carley, Harvan (2011). Digital Forensics with Open Source Tools. Syngress. p. 190. ISBN 978-1-59749-586-8. Retrieved September 19, 2021.
  14. ^ "Determining the Shape of Pixels and Frames". Microsoft.com. May 2003. Archived from the original on January 13, 2008.
  15. ^ Rhodes, Phil (December 12, 2014). "AVI and Timecode". FFmpeg-user (Mailing list).
  16. ^ "AVI MetaEdit - Technical Metadata". mediaarea.net.
  17. ^ "Using B-frames". Avidemux.
edit