Google's WebM for HTML5 video

[drawing of a webm file in a video player window]

HTML5 is the next version of web pages. There are lots of new features that are defined that modern web browsers have already taken advantage of, like the canvas element, but none of these features have been as hotly debated as the format of choice for the video element. The debate is about what video format should be required for all standard conforming browsers.

If everyone was going for just convince, MPEG4 would be the obvious choice. It has the highest quality video and plenty of encoders, is supported on wide variety of hardware, and is backed by Apple. The only problem is that ordinary people may have to pay thousands of dollars in MPEG4 licensing fees for transmitting MPEG4 coded video over the Internet, otherwise they may run the risk of unexcused patent infringement. Because of that, Ogg Theora was recommended to be the required format for the video element. Ogg Theora is a video codec not encumbered by any known patents and natively supported by Mozilla Firefox, Google Chrome, and Opera, as well as the free software movement. This move was fought against mostly because of the lower video quality and that the devices that supported it weren't as numerous as MPEG4, but also because of possible unknown patents.

When I read the Free Software Foundation's Open letter to Google, I originally thought that Google, being a big company, would not make their newly acquired video technology as free to implement and use as Ogg Theora. I thought it would be awesome if Google did, because they do have a big say in how the Internet works, and they also own YouTube which is the largest video hosting website.

However, Google did listen. On May 19'th they started the WebM project. They released the VP8 video codec, combined it with Ogg Vorbis audio, and package it with a derivative of the Matroska media container to create the WebM format. They even recently fixed up legal incompatibilities with the GNU GPL.

Technically, WebM is close to Baseline H.264. The only major problem I see with the VP8 codec is that the specification is currently only the implementation. So that means if there are bugs now, they will be “features” forever. I did hear that the VP3 codec that Xniph.org started out with for Theora was much worse, so there's hope for improvement. Encoding and decoding tools are being integrated in various free and open source projects now. The next version of Firefox, Chrome, and Opera web browsers will support WebM natively.