Jump to content

Comparison of video container formats

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 200.155.188.4 (talk) at 03:16, 9 May 2008. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

This table compares features of container formats. Note that DirectShow filters allow playing on any DirectShow-based player, including Windows Media Player. To see which multimedia players support which container format, look at comparison of media players.

Information

Name and file extension, if different Standard owner Support for B-frames Variable bit rate audio Variable frame rate Edit in-place Chapters Subtitles Video formats supported Audio formats supported Metadata/Tags supported
3GP 3GPP Yes Yes Yes Yes ? 3GPP Timed Text MPEG-4, H.263 and H.264/MPEG-4 AVC AMR-NB/WB, AMR-WB+ and (HE)-AAC ?
Advanced Systems Format (.asf, .wma, .wmv) Microsoft Yes Yes Yes No Yes Yes Almost anything through VFW or DMO; H.264/AVC is problematic Almost anything through ACM or DMO; Vorbis is problematic Yes
AVI Microsoft Yes[1] Yes[2] Yes[3] No Yes, via third party modifications Yes, via third party modifications Almost anything through VFW; H.264/AVC is problematic due to the limited B-frame support[4] Almost anything through ACM; Vorbis is problematic [5] No
DivX Media Format (.divx) DivX, Inc. Yes Yes Yes No Yes Yes MPEG-4 Part 2 video encoded to meet DivX profiles MP3, PCM, AC-3 ?
EVO MPEG Yes Yes Yes No Yes ? MPEG-2 Part 2, H.264/MPEG-4 AVC, VC-1 AC-3, E-AC-3, Dolby TrueHD, Linear PCM, DTS, DTS-HD, MPEG-2 Part 3 ?
Flash Video (.flv) Adobe Systems ? ? ? No No No Sorenson, VP6, Screen Video, H.264/MPEG-4 AVC[6] MP3, Nellymoser, ADPCM, raw PCM, AAC[7] No
Matroska (.mkv, .mka) public domain[8] Yes Yes Yes No Yes Anything, including embedded fonts Anything Anything Yes
MCF BSD-style license for specs, GNU for tools ? ? ? ? ? ? Anything Anything ?
MP4 MPEG Yes Yes Yes Yes In userdata atom (started by Nero Digital) can't interact with the sceneDescription, or via segmentDescriptor ttxt, VobSubs with privat objectTypeIndication not usable with the sceneDescription (started by Nero), BIFS MPEG-1, MPEG-2, H.263, MPEG-4 ASP, VC-1/WMV, H.264/MPEG-4 AVC MPEG-1 Layers I, II, III (MP3), MPEG-2/4 (HE)-AAC, Vorbis (with privat objectTypeIndication), Apple Lossless Yes
MPEG Video File (.mpg, .mpeg) MPEG Yes Yes Yes No No No MPEG-1, MPEG-2 MPEG-1 Layers I, II, III (mp3), LPCM No
MPEG-2 PS Program Stream (.ps) MPEG Yes Yes ? No Only in VOB files on DVDs Only in VOB files on DVDs MPEG-1, MPEG-2, VC-1 MPEG-1 Layers I, II, III (mp3), AC-3, LPCM, DTS No
MPEG-2 TS Transport Stream (.ts) MPEG Yes Yes Yes No No possible via ETSI EN 300 743 MPEG-1, MPEG-2, MPEG-4 ASP, H.264, VC-1 MPEG-1 Layers I, II, III (mp3), AC-3, LPCM, DTS, AAC No
NUT NUT Project/GPL Yes Yes Yes ? Yes Yes Virtually anything Virtually anything ?
Ogg/OGM Xiph.org Yes[1] Yes Yes No Yes Ogg Writ, SRT and MicroDVD with OGMtools Theora, almost anything through VFW Vorbis, almost anything through ACM Yes[9]
Quicktime (.mov, .qt) Apple Yes Yes Yes Yes Yes Yes Anything through QuickTime codec manager Anything through Sound Manager or CoreAudio Yes
RMVB RealNetworks Yes ? Yes No ? Yes RealVideo 8, 9, 10 (HE)-AAC, Cook Codec, Vorbis, RealAudio Lossless ?
VOB MPEG Yes Yes Yes No Yes VobSub MPEG-2 Part 2 AC-3, Linear PCM, DTS, MPEG-2 Part 3, MPEG-1 Layer II Yes
Standard owner Support for B-frames Variable bit rate audio Variable frame rate Edit in place Chapters Subtitles Video formats supported Audio formats supported Metadata/Tags supported

Media supported

Audio formats supported

Lossy compression Lossless compression
MP3 WMA RealAudio Vorbis Musepack AAC AC3 DTS APE FLAC ALAC SHN WV
QuickTime Yes Yes ? Yes ? Yes Yes ? ? Yes Yes ? ?
AVI Yes Yes No No No Yes Yes Yes No No No No No
OGM Yes Yes ? Yes Yes Yes Yes Yes ? Yes ? ? Yes
Matroska Yes Yes Yes Yes No [10] Yes Yes Yes ? Yes ? ? Yes
MP4 Yes No No No ? Yes No No No No Yes No No

Video formats supported

MPEG-1 MPEG-2 MPEG-4 (A)SP H.264 VC-1/WMV RealVideo Theora
QuickTime Yes Yes Yes Yes Yes ? Yes
AVI Yes Yes Yes Problematic, limited B-frame support[4] Yes No Yes
OGM Yes Yes Yes Yes Yes ? Yes
Matroska Yes Yes Yes Yes Yes Yes Yes
MP4 Yes Yes Yes Yes Yes[11] No No

Notes and references

  1. ^ a b B-frames are not natively supported so bitstream processing or "packing" is needed. Details on this can be found in MPEG-4 B-frames in AVI/VFW hackery description.
  2. ^ ACM cannot handle VBR audio streams in AVI files. Thus, software using ACM to read audio from AVI files will not be able to handle VBR audio streams correctly, even though such files are compliant to the AVI file specification. This is a limitation of the ACM, not of the AVI file format.
  3. ^ Although AVI is not designed for variable framerates, it is possible to use them without creating a non-standard file by using 0-byte chunks for skipped frames. However it requires framerate to be set to Least common multiple of all framerates used, and produces slight overhead compared to true VFR.
  4. ^ a b Through an updated x264/ffdshow filter it is possible to view H.264 in an AVI file for up to 30 fps.
  5. ^ Although FFmpeg has introduced a solution to put Vorbis audio into AVI files, this "extension" is not compatible with existing Vorbis decoders for DirectShow and ACM. Putting Vorbis in an AVI container is very problematic. The way Nandub stored Vorbis audio streams in AVI files occasionally caused desychronisation when seeking.
  6. ^ H.264/MPEG-4 AVC support is available in Flash Player 9.
  7. ^ AAC support is available in Flash Player 9.
  8. ^ The Matroska specs are put into the public domain, which means they are patent free and owned by everybody. The relevant, valid format specification is always the one found on matroska.org, the official homepage. Even if the Matroska specs are free, the code of the software tools for Matroska files can, nevertheless, be proprietary or follow a specific license (BSDL, GPL, LGPL, QPL, etc.), depending on the intentions of the programmer or the company behind them.
  9. ^ "Ogg Metadata". Xiph Wiki. 2005-12-20. Retrieved 2007-08-31. {{cite web}}: Check date values in: |date= (help)
  10. ^ Possible, but not implemented till this date. The developers are waiting the release of Musepack 8.x to implement, as this new version will completely change the bitstream.
  11. ^ As specified by SMPTE Recommended Practices 2025–2007, "VC-1 Bitstream Storage in the ISO Base Media File Format."

See also