High-ranking Mozilla staff, who believe that they've lost a fight to keep patent-encumbered technology off the web, have concluded that it's time to change course and support H.264 video technology.
The H.264, a "codec" to encode and decode video for more efficient storage and streaming, is widely used in everything from video cameras to mobile-phone processors. However, it's encumbered by patent royalty payments that go against Mozilla's goal of fostering an open web.
The patent issue led Mozilla to strongly endorse Google's alternative VP8 codec that's part of its royalty-free WebM project. But WebM just isn't catching on, and Google hasn't fulfilled a promise to remove H.264 support from Chrome to try to promote WebM, so Mozilla Chief Technology Officer Brendan Eich and others responsible for Firefox have reluctantly endorsed a change of plans.
"The pressure to promote WebM was needed from a bigger player than Mozilla, and it was needed a year ago," Eich said in a long mailing-list discussion. "It might not have worked then, even with Google on-side. Now, with just Mozilla going it alone, all we do is kill our mobile initiatives in order to appear pure ... that does not serve our mission or users."
Those Mozilla representatives who came around to H.264 endured a lot of criticism for insufficient purity and principle. But clearly they went through a lot of soul-searching beforehand.
Despite Google's watered-down WebM push, the company is still working on improving the codec technology that it acquired for US$123 million. But the change of heart from Mozilla, perhaps the most fervent ally of WebM that an advocate could find, underscores the difficulty that Google faces in getting WebM to catch on. And at the same time, H.265 is waiting in the wings.
First-class web video
Mozilla and Google had hoped to make video a first-class citizen of the web, as ordinary and easy to use as JPEG images are today. But H.264's dominance means that patent-licensing payments are effectively being built in to the web. Through an organisation called MPEG LA, patent holders collect royalty payments from organisations that ship H.264 products, or that transmit H.264-encoded video for a fee.
H.264 is the leader, far and away, when it comes to HTML5 video, according to a December 2011 study of 50 million videos by MeFeedia.
It's not clear yet what exactly will happen with Firefox and H.264, but the thread began with discussing whether mobile Firefox should be able to tap into H.264 support built in to the operating system. Even this mechanism, indirect and limited to mobile devices, triggered disgust.
"Keeping the yucky stuff in third-party code doesn't really help keep it off the web," said Henri Sivonen, an HTML5 expert and freelance programmer who consults for Mozilla. And Joe Drew, a Mozilla graphics programmer, added, "I am very concerned that by supporting system codecs, we're simply capitulating on Free codecs" — free in the sense of free from patent-licensing constraints.
But, for the most part, Mozilla authorities seem inclined to add H.264 support. Endorsing the approach are Eich and Robert O'Callahan, who oversee the codec support in Firefox, and Andreas Gal, Mozilla's director of research and the programmer who launched the H.264 discussion.
"Just another day at the office. I am glad I brought my steel helmet and fire-retardant underwear to work," Gal tweeted about the debate.
The issue matters, because streaming video on the web is in the midst of a slow transition from using plug-ins such as Adobe Systems' Flash Player to the HTML5 standard that builds video support directly into web pages. But the transition is easier said than done; HTML5 doesn't specify a codec, because standards groups couldn't agree on a single one, which means that web publishers contemplating native web video must reckon with browser-compatibility problems.
On personal computers, compatibility isn't a severe issue, because Flash Player is ubiquitous on PCs and supports H.264. But for Mozilla, the issue came to a head because of how different things are in the mobile market.
Apple — the single strongest mobile player by virtue of its iPhone and iPad products — is a strong H.264 backer, and it barred Flash Player from Safari on iOS. VP8 and WebM support, meanwhile, still hasn't arrived on Android. This means that H.264 is effectively the only way to go for mobile video.
Thus, Mozilla has a tough choice to make, as it tries to find a foothold for Firefox in the mobile market, and to make its B2G browser-based mobile operating system useful: support H.264, or saddle users with web pages that can't watch video.
Building H.264 support directly into Firefox would be fraught with problems, given the impossibility of reconciling the open-source nature of the software with the royalty-payment requirements of the codec. What Mozilla's Gal proposed is an indirect approach that lets Firefox use the H.264 codec if it's built in to the operating system.
With Android, the only mobile operating system of consequence in which Firefox can even try to gain a foothold, H.264 support is already built in. With B2G, H.264 support could be added to the operating system layer.
The debate began with mobile support, where Gal and others see H.264 as necessary, but it expanded to personal computers, as well. That's because Windows XP and Vista — still widely used — don't have H.264 support built in. Consequently, some raised the possibility of Mozilla shipping H.264 support itself — perhaps as an extra module.
"If we want to support non-free formats via system codecs, we should make that our official plan for Firefox on all platforms," Drew said.
And the discussion didn't end at H.264. MP3 and AAC, two widely used audio codecs that also have patent constraints, would fit in under the new Mozilla approach. "Anything the system has decoders for, we should pass through and allow to work, including MP3 and AAC," Gal said.
Left in the lurch by allies?
In January 2011, Google pledged to drop H.264 support from Chrome, saying at the time in a blog post, "Though H.264 plays an important role in video, as our goal is to enable open innovation, support for the codec will be removed and our resources directed towards completely open-codec technologies."
But today, Chrome still supports H.264.
Asked why, a Google representative said last month, "We have not backed off our plan to remove H.264 from the Chrome video tag, although we've not done so yet, as we work with content providers to ensure a smooth transition."
Many objected to Google's decision, foreseeing a future in which they had to offer two varieties of video instead of just one. Microsoft, another H.264 supporter, took a potshot at Google and released extensions to let Firefox and Chrome users watch H.264 video on Windows 7 by using the operating system's support.
The issue is somewhat academic, though: Chrome has Flash Player built in, so dropping H.264 support wouldn't be as likely to leave users in the lurch.
It's clear, though, that some at Mozilla feel that they got a raw deal from Google.
"Google may not have intended to punk us into hurting ourselves (I don't think they did) but they certainly have wisely avoided hurting Chrome's market share by turning off H.264 decoding from [HTML5] video," Eich said. "They clearly are helping themselves by not turning off H.264 in Chrome, and they're not turning it off in [the] Android stock browser either."
Another WebM ally also hasn't come through: Adobe. It pledged in 2010 to build VP8 support into Flash Player. But when Adobe released its long-term Flash road map in February, VP8 support was conspicuously absent. Adobe didn't have much to share in a comment on whether it's still planned.
"We don't have an update on when VP8 will be supported in Flash Player. We continue to work closely with Google on Flash Player, and its support for popular video formats. In a statement today," Danny Winokur, general manager of Interactive Development at Adobe. In any event, so far at least, it's certainly not "in front of a billion people" as Adobe chief technology officer Kevin Lynch had promised.
Thus, some at Mozilla feel that any momentum for an H.264 alternative has stalled. Here's how Mozilla evangelist Aza Dotzler put it:
Even if Google committed today to dropping H.264 from Chrome desktop, the world has changed enough in the last year that I don't think even Chrome desktop's position can have much influence one way or another today.
The momentum was there a year ago. Maybe it was even still there 8 months ago. I don't think it's there today, and Chrome alone probably can't restore that momentum. The rise of mobile and of iPad and the changing landscape for Adobe, including streaming server support for H.264 for [HTML's] video element (with no VP8 anywhere in sight), and the massive growth of Windows 7 compared to a year ago, where H.264 comes with the system and IE — too much has changed for the worse. Turning off H.264 in Chrome doesn't feel to me like it could change the course enough.
It seems there's plenty of dark mood to go around Mozilla's offices. "We've held the line, and watched, and waited, and personally I am extremely disappointed by the results," O'Callahan said.