Web Video File Formats

19
Jul/09
1

File formats containing video are called video formats. These file formats now in the time of web video are usually container formats. A container format is essentially a sequence of packets containing data like video frames and audio samples. This sequence of packets can be regarded as a stream, thus many of the modern container file formats can be used for streaming video.  Besides the streamable packet structure these container formats provide another great benefit – codec abstraction. A codec (‘coder-decoder’) is a algorithm that allows video information to be stored digitally in a more efficient manner. With this codec abstraction container formats are capable of “outliving” the initial codec they were intended to work with and achieve better results(in video quality/storage) while maintaining a good level of compatibility over time. Some formats have been created around a single codec instead of supporting multiple ones, however that approach is considered outdated in the web video era.

While container file formats provide great flexibility and features like Variable BitRate(VBR) and even the possibility for use of different codecs for different parts of a video material(my bad for mentioning it) in practice there are many cases when a codec or a audio codec / video codec combination is used that is not “officially” supported by the format. The result is that the video may play on your system(or software) but not on any other.

When it comes to web video the number one format as of now is .FLV(FlashVideo™). The primary reason for this is the fact that the hugely popular Macromedia(now Adobe) FlashPlayer™ implemented this format and allowed publishers an easy way of showing video on nearly every computer on the internet. This format is used by about every major website on the internet dealing with web video.

.flv (FlashVideo) is most often used with Sorenson Spark h.263 and On2 VP6 codecs and there is a hack to the format based on h.264/MPEG4 container format.  The actual FlashVideo format can deliver excellent quality in all of the above codecs provided sufficient bitrates. On lower bitrates On2 delivers best quality as of now.  Note that the h.264 based .flv(or .f4v) files are actually a different format and not just a new codec in the old container format! In many cases(since flash does supports a subset of the standard) you can rename a .mp4 file to .flv and play it with flash(9.0.0.29 or newer). To learn more about flash video read our flash video format article.

.rm/.rmv (RealMedia Video) was the leading pioneer in streaming video. Real Video has a streamable format with both true streaming and progressive download capabilities. There are many revisions of the actual file format with many unique features(DRM related for instance), however the proprietary technology and relatively small penetration have caused this format’s use to decline in favor of other more easily available solutions.

.mp4/.h264 (h.264/MPEG-4) is the state of the art file format to date. This format provides great flexibility and a shiny new codec bearing the same name. Unlike the above formats which “relate to a standard” the h.264 is de facto the standard. This allows some important developments in support of the format like hardware acceleration support. Hardware acceleration is nearly mandatory if you need to play a HD video on a regular computer or any video on an embedded device for that matter. The other great benefit of h.264 is the wide support of it by embedded devices like cell phones and digital cameras. The huge drwaback for the field of web video is the royalty based licensing. To learn more about h.264 in comparison with other web video formats read our flash video format article.

.mov (QuickTime) is not a single format but a long succession of formats developed by Apple inc. This format pioneeded video for desktop computers and is THE FORMAT for Mac users. In it’s latest incarnation .mov is de facto h.264/MPEG-4 format with some “tweaks” from Apple to make it a bit less compatible/usable with other companies tools. All of the above said about h.264 applies to new .mov files and in many cases you can safely rename them to .mp4 which they are.

.wmv (Windows Media Video) format is a modern streamable (progressive only) file format developed by Microsoft as a “universal video format” they would dominate the world with :) . Windows Media Video is comparable in quality with other modern h.263 and h.264 based codecs. It is supported by all Microsoft tools (like Windows Media Encoder), which makes it easy to create videos in this format in windows. As web video this format needs Windows Media Player with a browser plugin(which has to be configured correctly) and a properly configured web server and web page code. Thus in many websites that try to show you a video you actually get a file download. The spread of Windows Media Video format suffers greatly from lack of support for other platforms like linux and embedded devices and lack of tools, apart from Microsoft ones which are VERY BASIC. In the modern world no one wants to bind to a proprietary format, which’s only benefit, over the competition, are pre-installed amateur tools with your OS. Microsoft has put great effort to create a competitor to Flash in the face of Silverlight and the WMV is the video technology they have put in it. Problem with Silverlight as with many other of their endeavors is they are targeting the wrong product at the wrong people and now with the strongest of competitors in the face of Adobe. So a great technology in the face of WMV/Silverlight is steadily going to waste.

.avi (Audio/Video interleave) is THE container format of  our time. This format has been developed as a generic container for windows video by Microsoft (to compete with QuickTime of course). The AVI format is NOT STREAMABLE and therefore not directly usable on the web. There are some .WMV files renamed as .AVI and used on the web, however these are not actual AVI files. The AVI format is monumental in the world of digital video it’s availability and the possibility to create new codecs for it(through DirectShow filters) has powered the development of many modern codecs (like DivX and XviD) and there are virtually many thousands of audio/video codec combinations in use today with AVI containers.

.ogg (Ogg Theora) is the newest FREE video format for the web. It is open source and is based on the relatively old On2 VP3 codec. The format itself has been updated to meet modern needs and is claimed comparable to MPEG4/XVid, which is a bold statement as of now, but may become truth with time. The great benefit of this format is that it is platform independent and totally free.This will allow in time for development of tools and support with players. I’m pretty certain that Adobe Flash will support this format in the very near future, if they don’t Microsoft with Silverlight will beat them to that ;) . WHEN that happens OGG will be the format of choice for nearly all video sharing networks. Some browsers like Firefox(3.5+), Apple Safari and Google Chrome support video playback directly in the browser. I find this rather limiting and counter architecture wise, but that’s the “trend” so others will probably follow. As of now there is a lack of good encoding tools for theora and the produced video quality is actually worst than Sorenson Spark(h.263), despite the fact theora is claimed to be comparable with the next generation codecs. This will change in time though so I believe that theora has very good chances of “becoming a player” in the web video world.

.mpg (MPEG 1) is the first “standard” that could produce actual streamable content. The format as such is quite popular, it has powered many digital video appliances and all initial versions of the .avi and .mov formats have used the mpeg1 codec to encode video. However MPEG1 cannot be compared with modern codecs/formats as it is very outdated.

As I’ve been speaking of  formats and not codecs I have left out many video codecs that have/had significant role in the digital video world over time. Notably DivX and Xvid groups have created advanced modern codecs that power many solutions as of now and have pioneered many of the modern features you would see in current and next generation of digital video.

Tags: , ,

Related posts

Comments (0) Trackbacks (1)

Leave a comment