Neil Turner's Blog

Blogging about technology and randomness since 2002

Firefox and h.264 video

There’s an interesting discussion that has appeared on the Mozilla Platform Developers Newsgroup. Firstly – people still use newsgroups! Who knew?

Secondly, and on a more serious note, the discussion shows that a future version of Firefox will probably support h.264 HTML5 video. This is significant – until now Firefox has only supported the rival Theora and WebM formats for playing video.

Like with Blu-Ray and HD-DVD (remember that?) there’s been something of a ‘format war’ over the past few years. Microsoft’s Internet Explorer and Apple’s Safari browsers have only supported h.264 for playing video in the HTML <video> tags, and Firefox and Opera have instead backed WebM. Google’s Chrome was the only browser to support both – and although Google did announce that h.264 support would be removed from Chrome this hasn’t happened yet, nor looks likely to happen. This is despite Google owning the VP8 codec that forms part of the WebM format.

The main reason for Firefox’s hold-out has been software patents. To incorporate a h.264 codec in Firefox would require royalty payments to MPEG-LA, which is difficult for a browser that is given away for free.While Mozilla rakes in a lot of cash from Google for being the default search engine, licensing the h.264 patents would be expensive.Supporting h.264 will bring two key benefits. One is that it makes h.264 the de-facto HTML5 video standard, which means that sites offering video won’t need to offer two versions. The second is that many video cards offer hardware accelerated decoding of h.264 video, offering improved performance. Whilst some chips, including those in popular smartphones like the Samsung Galaxy S2, theoretically support WebM decoding, the phone manufacturers have chosen not to enable this feature and so the number of PCs and phones which support hardware acceleration of WebM is minuscule. h.264 is also regarded as a superior video format, as shown by the video embedded in this post.

Exactly how Mozilla intends to implement h.264 in Firefox does not appear to have been completely decided. On Android, it’s likely to use software libraries included with Android itself, which can take advantage of hardware acceleration on the phone. It has also been suggested that on desktop/laptop computers that it uses native libraries provided by Windows and OS X, and gStreamer on Linux. This is fine except for Windows XP, which doesn’t ship with a native h.264 codec (Windows Vista and 7 do). Windows XP users still make up 40% of Firefox users, and maintaining XP support appears to be an important goal for Mozilla at present, seeing how Microsoft’s Internet Explorer 9 doesn’t support it. Several suggestions for solving this issue have been made, but we’ll have to see how it pans out.

Is this the death of WebM and the idea of an open video on the web, unencumbered by patents and licenses? No, although it is a blow. I imagine some sites which offer video in WebM will continue to do so, for moral or political reasons. But, on the other hand, this means that there is general agreement that h.264 is the way forward for HTML5 video and this should boost its adoption. The format war between h.264 and WebM has held HTML5 video back in my opinion.

When will this make it to Firefox? Who knows. I’d imagine probably version 14 or 15, seeing as Firefox 11 has just come out. There is a lot to do, although some code has already been written and is awaiting approval for merging into the main Firefox trunk for Android.

Comments are closed.