Comparison of video container formats

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Lua error in package.lua at line 80: module 'strict' not found.

This table compares features of container formats (video file formats). To see which multimedia players support which container format, look at comparison of media players.

Information

Name and file extension Proprietor / developer License Variable bit rate audio Variable frame rate Chapters Captions / subtitles Video coding formats Audio coding formats Metadata / tags Menus[1] Streaming Attachment support[2] 3D, codecs 3D, container Hardware players
3GP 3GPP ? Yes Yes ? 3GPP Timed Text H.263, MPEG-4 Part 2 and H.264/MPEG-4 AVC AMR-NB, AMR-WB, AMR-WB+, AAC, HE-AAC and HE-AAC v2 ? No Yes[3] ? ? ? ?
3G2 3GPP2 ? Yes Yes ? 3GPP Timed Text H.263, MPEG-4 Part 2 and H.264/MPEG-4 AVC AMR-NB, AMR-WB, AAC, HE-AAC, EVRC, EVRC-B, EVRC-WB, 13K (QCELP), SMV or VMR-WB ? No Yes ? ? ? ?
Advanced Systems Format (.asf, .wma, .wmv) Microsoft Proprietary, patent encumbered Yes Yes Yes Yes Almost anything through VFW or DMO; H.264/AVC is problematic Almost anything through ACM or DMO; Vorbis is problematic Yes No Yes ? ? ? Yes
AVI Microsoft  ? Yes[4] Yes[5] Yes, via third party modifications Yes, via third party modifications Almost anything through VFW Almost anything through ACM; Vorbis is problematic [6] Yes through RIFF chunks No No No ? No Yes
DivX Media Format (.divx) DivX, Inc.  ? Yes Yes Yes Yes MPEG-4 Part 2 video encoded to meet DivX profiles MP3, PCM, AC-3 ? Yes Yes ? ? ? Yes
EVO MPEG Patent encumbered Yes Yes Yes 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 ? Yes ? ? ? ? ?
F4V (Flash Video) Adobe Systems Patent encumbered ? Yes ? ? H.264/MPEG-4 AVC MP3, AAC, HE-AAC[7] Yes No Yes ? ? ? ?
FLV (Flash Video) Adobe Systems Patent encumbered ? Yes No No Sorenson, VP6, Screen Video, H.264/MPEG-4 AVC[8][9] MP3, Nellymoser, ADPCM, Linear PCM, AAC,[10] Speex[11] Yes No Yes ? ? ? ?
Matroska (.mkv, .mk3d, .mka, .mks, .webm) CoreCodec, Inc.[12] Freely licensed[13] Yes[14] Yes[14] Yes[15] Yes[16] Virtually anything Virtually anything Yes[17] Pending[18] Yes[19] Yes[20] Yes[21] Yes[21] Yes[22]
MCF Community BSD-style license for specs, GNU for tools Yes Yes Yes[23] Yes[23] Not fully specified Not fully specified Yes Possible[24] Yes[25] Yes[23] ? ? No
MP4 MPEG Patent encumbered Yes Yes In specially formatted text track (QuickTime); 2) In userdata atom (started by Nero Digital) can't interact with the sceneDescription, or via segmentDescriptor ttxt, VobSubs with private objectTypeIndication not usable with the sceneDescription (started by Nero), BIFS MPEG-2 Part 2, MPEG-4 ASP, H.264/MPEG-4 AVC, H.263, VC-1, Dirac, others[26] MPEG-2/4 (HE)-AAC, MPEG-1/2 Layers I, II, III (MP3), AC-3, Apple Lossless, ALS, SLS, Vorbis(with private objectTypeIndication), others[26] Yes Yes Yes Yes Yes ? Yes
MPEG Video File (.mpg, .mpeg) MPEG Patent encumbered Yes Yes No No MPEG-1, MPEG-2[27] MPEG-1 Layers I, II, III (mp3), other formats only in private streams: LPCM[28] No No Yes ? ? ? Yes
MPEG program stream PS (.m2p, .ps) MPEG Patent encumbered Yes ? Only in private streams — used in VOB files on DVDs Only in private streams — used in VOB files on DVDs MPEG-1, MPEG-2, MPEG-4 Part 2,[27] VC-1, H.264[29] MPEG-1 Layers I, II, III (mp3), other formats only in private streams: AAC, AC-3, LPCM, DTS[28] No Only in private streams — used in VOB files on DVDs ? ? ? ? Yes
MPEG transport stream TS (.ts) MPEG Patent encumbered Yes Yes No possible via ETSI EN 300 743 MPEG-1, MPEG-2 Part 2, MPEG-4 ASP, H.264, other formats in private streams: VC-1, Dirac[30] MPEG-1 Layers I, II, III (mp3), AAC, other formats in private streams: AC-3, LPCM, DTS[30] No No Yes ? ? ? Yes
BDAV MPEG-2 transport stream (.m2ts) Blu-ray Disc Association Proprietary Yes Yes Yes Yes MPEG-2 Part 2, H.264, VC-1 AC-3, DTS, LPCM, Dolby Digital Plus, DTS HD, Dolby Lossless Yes Yes Yes Yes Yes Yes Yes[31]
MXF SMPTE  ? Yes Yes ? Yes Virtually anything Virtually anything Yes No ? ? ? ? No
Ogg Xiph.org Patent-free, Free software implementations available Yes Yes Yes Ogg Writ, Ogg Kate Theora, Dirac, OggUVS, MNG and others,[32][33] and almost anything else via VFW Vorbis, FLAC, Speex, Opus, OggPCM,[32][33] and almost anything else via ACM CMML, Ogg Skeleton, Vorbis comment[34] No Yes ? ? ? Yes
QuickTime (.mov, .qt) Apple Proprietary Yes Yes Yes Yes MPEG-2 (OS X Lion or later),

MPEG-4 Part 2, H.264, H.263, H.261, Apple ProRes, Apple Pixlet, Cinepak, Component Video, DV, DVC Pro 50, Graphics, Motion JPEG, Photo JPEG, QuickTime Animation, Sorenson Video 2, Sorenson Video 3[35]

AAC (MPEG-4 Audio),

HE-AAC, Apple Lossless, MP3, AMR Narrowband, MS ADPCM, QDesign Music 2, Qualcomm PureVoice (QCELP), IMA 4:1, MACE 3:1 (Mac OS X v10.6.x only), MACE 6:1 (Mac OS X v10.6.x only), ALaw 2:1, ULaw 2:1[35]

Yes Yes Yes Yes Yes Yes Yes
RMVB RealNetworks Proprietary ? Yes ? Yes RealVideo 8, 9, 10 (HE)-AAC, Cook Codec, Vorbis, RealAudio Lossless ? No Yes ? ? ? ?
VOB+IFO DVD Forum Proprietary Yes Yes Yes Yes MPEG-2 Part 2, MPEG-1 Part 2 AC-3, Linear PCM, DTS, MPEG-2 Part 3, MPEG-1 Layer II No Yes No No No No Yes
Name and file extension Proprietor / developer License Variable bit rate audio Variable frame rate Chapters Captions / subtitles Video coding formats Audio coding formats Metadata / tags Menus[1] Streaming Attachment support[2] 3D, codecs 3D, container Hardware players

Formats supported

Audio formats supported

Lossy compression No compression Lossless compression
MP3 WMA Vorbis Opus AAC AC-3 DTS PCM LPCM FLAC ALAC MLP / Dolby TrueHD DTS-HD
AVI Yes Yes[36] not officially ? Yes[37] Yes Yes Yes Yes No No No ?
Matroska Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
MP4 Yes Yes not officially ? Yes Yes[38] Yes No ? No Yes No Yes[39]
MPG Yes ? ? No ? ? ? ? Yes ? ? ? ?
MXF Yes No ? ? Yes Yes Yes Yes Yes No No Yes Yes
Ogg Yes No Yes Yes No No No Yes Yes Yes No No No
QuickTime Yes Yes Yes ? Yes Yes ? Yes Yes Yes Yes No No

Video formats supported

MPEG-1 MPEG-2 MPEG-4 (A)SP H.264/ MPEG-4 AVC H.265/ HEVC VC-1/ WMV Real Video Theora Microsoft MPEG4 V2 VP8 VP9 MVC
AVI Yes Yes Yes Yes[40] ? Yes Yes Yes Yes Yes No ?
Matroska Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes[41]
MP4 Yes Yes Yes Yes 16px Possible Yes[42] Yes Yes Yes Yes ? Yes
MXF Yes Yes Yes Yes ? Yes No ? ? ? ? ?
Ogg Yes Yes Yes Yes ? Yes No Yes ? ? ? ?
QuickTime Yes Yes Yes Yes ? Yes No Yes ? ? ? ?

Caption/subtitle formats supported

QuickTime AVI Ogg Matroska MP4 MXF
MicroDVD ? No No Yes ? ?
MPEG-4 Timed Text ? No ? Yes Yes ?
MPSub ? No ? Yes ? ?
SAMI ? ? ? Yes ? ?
SubRip ? Yes, via third party modifications Yes Yes No[43] ?
(Advanced) SubStation Alpha ? Yes, via third party modifications ? Yes No ?
SubViewer ? ? ? Yes ? ?
Universal Subtitle Format ? No ? Yes ? ?
VobSub ? ? ? Yes[44] ? ?
XSUB ? via DivX ? Yes ? ?

Lua error in package.lua at line 80: module 'strict' not found.

See also

Notes and references

  1. 1.0 1.1 The ability to display interactive menus as with DVDs
  2. 2.0 2.1 The ability to hold additional files such as fonts for subtitles, etc.
  3. http://www.3gpp.org/DynaReport/26244.htm
  4. 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.
  5. 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.
  6. 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.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. H.264/MPEG-4 AVC support is available in Adobe Flash Player 9 Update 3 (version 9.0.115.0 from December 2007) press release
  9. H.264/MPEG-4 AVC What just happened to video on the web? [1]
  10. AAC support is available in Adobe Flash Player 9 Update 3 (version 9.0.115.0 from December 2007) press release
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Although CoreCodec holds the copyrights and trademarks for the Matroska specification, the specifications are open to everybody. The source code of the libraries developed by the Matroska team is licensed under the LGPL and BSD licenses.
  13. 14.0 14.1 Matroska is designed to store VBR and VFR content. http://www.matroska.org/technical/guides/faq/index.html
  14. Matroska supports simple chapters and nested chapters. http://www.matroska.org/technical/specs/chapters/index.html
  15. Matroska subtitle specification. http://www.matroska.org/technical/specs/subtitles/index.html
  16. The tagging system of Matroska http://www.matroska.org/technical/specs/tagging/index.html
  17. Matroska Menu Specifications
  18. Matroska can be streamed over HTTP and RTP/RTSP, through it is not meant to be streamed over RTP, as the two have duplicate features. Matroska live streams are different from the files and some features of the file format are not supported in live streams. http://www.matroska.org/technical/streaming/index.html
  19. Matroska can store any type of file. http://www.matroska.org/technical/specs/index.html#Attachment
  20. 21.0 21.1 Matroska 3D Specification
  21. Companies producing Matroska-supporting hardware include Asus (ASUS Digital Media Player), OPPO Digital (Oppodigital.com OPPO BDP-83 Blue-ray Disc Player), Panasonic (Gizmodo.com, Samsung's 2009 HDTV Lineup Leaked), and LG (Asia.cnet.com How to select the right LG HDTV)
  22. 23.0 23.1 23.2 MCF Specifications
  23. Menu is possible, but not specified yet
  24. Streaming for MCF
  25. 26.0 26.1 Lua error in package.lua at line 80: module 'strict' not found.
  26. 27.0 27.1 ISO (2000-12-01) ISO/IEC 13818-1 : 2000, Second edition Retrieved on 2009-07-25
  27. 28.0 28.1 DVD Resources for Open Source Development, DVD — MPEG differences, Retrieved on 2009-07-28
  28. Lua error in package.lua at line 80: module 'strict' not found.
  29. 30.0 30.1 SMPTE Registration Authority, LLC — registration authority for MPEG-2 format identifiers Retrieved on 2009-07-06
  30. M2ts#Software support
  31. 32.0 32.1 Lua error in package.lua at line 80: module 'strict' not found.
  32. 33.0 33.1 Lua error in package.lua at line 80: module 'strict' not found.
  33. Lua error in package.lua at line 80: module 'strict' not found.
  34. 35.0 35.1 [2].
  35. Older types of RealAudio (including ATRAC3)use constant bitrate compression, and therefore are fully compatible with the ancient ACM interface. Newest type of RealAudio is actually AAC, which never has been a problem to the DirectShow-based decoders.
  36. There is a value in the stream headers, called dwSampleSize, which is 0 in order to trigger VBR stream seeking. This is officially documented in the MSDN and not a hack, bug or whatever. The way MP3-VBR and AAC are stored in AVI are specified and completely compliant with the AVI file specification.
  37. According to "ETSI TS 102 366 v1.2.1 - Digital Audio Compression (AC-3, Enhanced AC-3) Standard, Annex F"
  38. Lua error in package.lua at line 80: module 'strict' not found.
  39. Again, B-frames in an AVI file are a problem only for the ancient Video-for-Windows API, not for the AVI container itself.
  40. Stereo 3D in Matroska can be handled with codecs like MVC.
  41. As specified by SMPTE Recommended Practices 2025–2007, "VC-1 Bitstream Storage in the ISO Base Media File Format."
  42. Difficult to locate this in plain english but confirmed from #ffmpeg.
  43. The requirement for muxing VobSub into matroska is v7 subtitles.