Comparison of container formats
From Wikipedia, the free encyclopedia
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.
Note: The following table may be biased by the encoders preference.
Contents |
[edit] Information
Standard owner | Support for B-frames | Variable bit rate audio | Variable frame rate | Edit in-place | Chapters | Subtitles | Video formats supported | Audio formats 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 | 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 |
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] |
DivX Media Format (DMF) | DivX | Yes | Yes | Yes | No | Yes | Yes | DivX video encoded to meet DivX Profiles | MP3, PCM, AC-3 |
Flash Video | Adobe Systems | ? | ? | ? | ? | ? | ? | ? | MP3 |
Matroska | public domain[6] | Yes | Yes | Yes | No | Yes | Yes, anything, including embedded fonts | Yes, anything | Yes, anything |
MCF | BSD-style license for specs, GNU for tools | ? | ? | ? | ? | ? | ? | Anything | Anything |
MPEG-2 PS (Program Stream) | MPEG | Yes | Yes | ? | No | Only in VOB files on DVDs | Only in VOB files on DVDs | MPEG-1, MPEG-2 | MPEG-1 Layers I, II, III (mp3), AC-3, LPCM, DTS |
MPEG-2 TS (Transport Stream) | MPEG | Yes | Yes | Yes | No | No | possible via ETSI EN 300 743 | MPEG-1, MPEG-2, MPEG-4 ASP, H.264/MPEG-4 AVC | MPEG-1 Layers I, II, III (mp3), AC-3, LPCM, DTS, AAC |
MOV | Apple | Yes | Yes | Yes | Yes | Yes | Yes | Anything through QuickTime codec manager | Anything through Sound Manager or CoreAudio |
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, H.264/MPEG-4 AVC | MPEG-1 Layers I, II, III (MP3), MPEG-2/4 (HE)-AAC, Vorbis (with privat objectTypeIndication), Apple Lossless |
NUT | NUT Project/GPL | Yes | Yes | Yes | ? | Yes | Yes | Virtually anything | Virtually anything |
OGG/OGM | Xiph.org | Yes[1] | Yes | No | No | Yes | Ogg Writ, SRT and MicroDVD with OGMtools. | Theora, almost anything through VFW, H.264/AVC doesn't work | Vorbis, almost anything through ACM |
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 |
Standard owner | Support for B-frames | Variable bit rate audio | Variable frame rate | Edit in place | Chapters | Subtitles | Video formats supported | Audio formats supported |
[edit] Media supported
[edit] Audio formats supported
Lossy compression | Lossless compression | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
MP3 | WMA | RealAudio | Vorbis | Musepack | AAC | AC3 | APE | FLAC | ALAC | SHN | WV | |
QuickTime | Yes | Yes | ? | Yes | ? | Yes | Yes | ? | Yes | Yes | ? | ? |
AVI | Yes | Yes | ? | No | ? | ? | Yes | ? | ? | ? | ? | ? |
Matroska | Yes | Yes | Yes | Yes | No [7] | Yes | Yes | ? | Yes | ? | ? | Yes |
MP4 | Yes | No | No | No | ? | Yes | No | No | No | Yes | No | No |
[edit] Video formats supported
MPEG-1 | MPEG-2 | MPEG-4 | WMV | RealVideo | Theora | Flash | |
---|---|---|---|---|---|---|---|
QuickTime | Yes | Yes | Yes | Yes | ? | Yes | Yes |
AVI | Yes | ? | Yes | Yes | ? | ? | Yes |
Matroska | Yes | Yes | Yes | Yes | Yes | Yes | ? |
MP4 | Yes | Yes | Yes | No | No | No | No |
[edit] Notes & references
- ^ a b B-frames are not natively supported so bitstream processing or "packing" is needed. Details on this can be find in MPEG-4 B-frames in AVI/VFW hackery description
- ^ 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.
- ^ 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.
- ^ Through an updated x264/FFDShow Filter it is now possible to view H.264 in an AVI file for up to 30 fps.
- ^ 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.
- ^ 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.
- ^ 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.