Computer movie files/Video
From MeWiki
Contents |
[edit] MPEG
By far the most common group of standards for video formats are those published by the MPEG (Motion Pictures Experts Group) group. Some of the formats are listed below
[edit] MPEG-1
Probably the oldest video standard that still exists. Created to store video on CDs (ie VCDs) and other such devices. The most common use was 352x240 @ 1.5mbits/sec, which is usually referred to as "VHS Quality"
[edit] MPEG-2
Designed to produce better quality than MPEG-1, but at higher bitrates. In other words, if you are looking at a bitrate under 1.5mbits, there will be little difference. For any bitrate higher than this, MPEG-2 will give significantly better quality. This format is what DVDs use as well as SVCDs and KVCDs. Also notable for being one of the few video formats in which a colour space other than YV12 is seen in the wild, MPEG2 occasionally uses YUY2.
[edit] MPEG-4 SP
SP Stands for Simple Profile.
A cut down version of MPEG-4 ASP as described below. Removes lots of cool features and is almost obsolete now. Big name encoders for it were Sorenson (used in QuickTime) and 3ivx. Microsft attempted to provide an implementation of it (as Microsoft Video V1/V2) but their implementation did not conform to spec and was mostly ignored.
[edit] MPEG-4 ASP
ASP Stands for Advanced Simple Profile.
By far the most common format used in anime and 'scene' (ie American TV & movie) releases. The two biggest implementations are DivX and XviD. CPU requirements are pretty measley by computer standards now, and quality is still reasonable.
Common implementations:
- XviD. The best free implementation out there, and probably better than most commercial ones too. Supports practically everything of the ASP spec, definitely the recommended encoder for this content.
- DivX. Often used by newbie encoders, but XviD gives generally better results. Note that the included decoder sucks and you should never use it should an alternative present itself.
- LMP4. Short for Libavcodec MP4, an encoder similar to XviD, but falls short in the quality stakes. Implemented in mencoder and a few other places.
[edit] MPEG-4 AVC
AVC Stands for Advanced Video Coding.
Wikipedia has a nice article about MPEG-4 AVC, aka h264, aka AVC. The next step in MPEG video compression after MPEG4-ASP. It provides significant compression improvements (one option alone can improve efficiency by 20%), at the cost of encoding and decoding speed.
Common implementations:
- x264. Pretty similar to XviD - it's the only open source encoder for its standard, and it's better than all the commercial encoders. x264 supports most high profile options (see the Wikipedia page for the table of what feature is what profile level). The de facto encoder for personal high quality h264, because it's the only publicly available CLI encoder, and because as said previously, it supports the most and outputs the highest quality. Homepage at x264.nl.
- Nero AVC. The second best publically available encoder. It doesn't expose half as many options as x264, but includes a nice GUI which x264 does not. Although the final quality isn't as great as x264's, the fact it has a GUI makes it a good choice for people who are just starting out in the wild world of video encoding. It's part of the Nero Suite, homepage is here: nero.com
- Apple h264. The wooden spoon in this race goes to... Apple! Well, it's not really a wooden spoon, because even Apple's h264 implementation is a fair bit better than XviD. Their files are plain old baseline profile, but also use 1 b-frame. More info on the profile that's used here. Homepage: apple.com/quicktime
[edit] h26_
The set of video specifications developed by the standards institute ITU-T.
[edit] h263
Basically a subset of MPEG4-ASP. Often found in the 3gp container for mobile phones.
[edit] h263+
h263 plus random stuff. Some of the random stuff is not compatible with MPEG4-ASP either. That said, h263+ is rarer than h263 in the wild, about the only places it exists is in proprietary videoconferencing software, and on some mobile phones. Often found in the 3gp container for mobile phones.
[edit] h264
Another name for MPEG-4 AVC.
[edit] Snow
An 'experimental' codec that uses a different method of storing video data than any other codec available (apart from a few other codecs which are, surprise surprise, also experimental). In particular, instead of storing macroblock information as Discrete Cosine Transformations (DCT), it uses wavelets. What's the difference? No idea, but you'll probably need a major in mathematics to work it out. Quality probably about that of xvid. There is apparently a huge potential for this new type of compression - the primary developer pengvado (who is also the primary developer of x264) once said "I'm confident that if I had spent the last 2 years on snow instead of x264, it would beat h264 by now", so it's a bit of a case of 'watch this space'.
One final interesting point is that since the data is stored differently the artifacts that are caused when the encoder reduces quality are completely different to those created by a conventional DCT codec - encode a test movie with Snow and take a peek yourself.
The discussion thread about it on doom9 (somewhat old and inactive)
[edit] Theora
A free codec that was created when On2 released the source-code for VP3 and made it freely available for use. Development is rather slow. The biggest advantage of this format is that it's completely free for any sort of use at all, which means for any OSS zealot this is your must-use codec. The disadvantage is that the quality is not all that flash compared to the latest codecs, and ffdshow / VLC / mplayer are really the only Windows programs that support it. Quality-wise it's almost identical to VP3, which places it slightly above MPEG-1 or MPEG-2 at low bitrates but well below the latest codecs such as MPEG-4 AVC or VC-1
[edit] On2
On2 is a company that make video specifications and codecs to go along with them. As they are a private company the specs they make are obviously closed and private. They have three video codecs.
[edit] VP3
Old, rare, practically unused. Theora was based off this, the quality is around that of MPEG-1.
[edit] VP6
On2's next codec after VP3, which has become one of the official encoders of the Flash Video format (.flv), and thus can be decoded by Flash. It's reasonably rarely used though, most people seem to have used h263 instead. Now that MPEG-4 AVC is also a support format by Flash Video this will probably quietly expire.
[edit] VP7
On2's latest codec. They claim quality is equal to MPEG-4 AVC and VC-1. Nobody really cared about it enough to test the quality, and it has long ago fallen by the wayside. There's a free encoder/decoder for personal use on their page.
[edit] WMV
The Windows Media Video group of codecs, developed by Microsoft. Read the Wikipedia article for more info on the various formats (including VC-1) that make up the WMV family. Generally the only available encoders for all of these standards are the official Microsoft ones.
[edit] MS MPEG, Microsoft Video, etc
A variety of ancient modifications to official MPEG specs (mostly), which existed before the WMV brand name was born. Mostly unseen these days, but there are VfW encoders still around for them in versions of Windows. Some full names: Microsoft H.261/3 Video Codec, Microsoft Video 1/2, MS MPEG Video 1/2 (possibly the same as the previous item).
[edit] WMV7/8/9
Microsoft's video codecs that first came out probably around 2000. They are the codecs used in .wmv files, so quite common around the place. Relative quality has always been lower than the alternatives (read: xvid & x264) have been. That said, the lower quality is not a huge drop, and the decoders are guaranteed to be on every Windows computer ever. There is even playback support on Linux via libavcodec and whatever makes use of it.
[edit] VC-1
An extension of WMV9 which adds a few necessities for the broadcasting world (in other words, full interlaced encoding (WMV9 only supported interlaced in 4:1:1 colour format)). Quality is claimed to be equal to that of MPEG-4 AVC, but that's been shown not to be true. VC-1 is effectively a subset of AVC features (a totally incompatible one of course), and it lacks many powerful coding techniques as a result. Most tests put the quality equal to or better than xvid, which is far short of decent h264 encoders. Found on HD DVD and Blu-Ray discs.

