We look at how to add HTML 5 video to your website
The codec conundrum
When the < video > tag was first proposed in the HTML 5 draft specification, one key omission from the spec was which video (and audio) codecs would be natively supported by the browser. As a result, while there are several video codecs that can be used in conjunction with the < video > tag, browser makers are not obliged to support any one of them: It's entirely their choice which codecs to include support for.
The original plan involved specifying the Theora video and Vorbis audio codecs as a baseline that all browsers should be able to play, but this was dropped in favour of an approach where no specific codec was recommended. Instead, the WHATWG expressed a desire for a codec that could be used in an unencumbered fashion and had a better guarantee of patent indemnity than Theora/Vorbis offered at the time.
The change sparked criticism among developers and might well have been one of the motivating factors in Google's offer of the VP8 codec as another baseline codec candidate.
In the end, the following three codecs have emerged as the main contenders for < video > tag support: H.264, Theora and VP8.
Microsoft and Apple have been major proponents of the H.264 codec family, which has already been broadly implemented and supported - not just on the web, but in cameras, in Blu-ray discs, and many other media that need powerful, efficient compression.
What's contentious about H.264 is not the technology itself but the licencing. H.264's usage is governed by the MPEG LA group, which levies a sliding scale of fees for H.264 based on the intended use. That said, the vast majority of end users on the web might never pay anything for using H.264, for a couple of reasons.
First, the MPEG-LA has stated that for the next five years it will collect no royalties for H.264 web streams that are offered free to end users.
Second, in the cases where you're dealing with for-pay content, odds are that the usage fees have already been assumed by someone else. For example, if you're encoding stuff in Windows and uploading it to YouTube as a pay-per-view item, you pay no licencing fees for using H.264, because any costs that might be levied have already been assumed by (in this case) Microsoft and Google.
For additional information on this issue, Ed Bott of ZDNet has explained how H.264 licencing fees work and why it wouldn't be in the MPEG LA's interest to suddenly ratchet up licencing fees when the current free-to-stream provisions for web playback are up for revision in a few years. Florian Mueller's analysis is also interesting - he examines the MPEG LA licensing terms from the point of view of an opponent of software patents, noting that the MPEG LA's licencing scheme, while not an ideal arrangement, does serve a useful function in a world where software patents exist and must be acknowledged.
That said, companies like Mozilla have not been set at ease - for example, according to Mike Shaver, vice president of engineering at Mozilla, MPEG LA's licencing isn't flexible enough to make solid exceptions for free software. Mozilla has opted to support Theora/Vorbis directly in its Firefox browser (and will support WebM in Version 4.0), and it has no plans to add native H.264 support.
NEXT PAGE: Theora and VP8