Today, Google announced it is omitting H.264 support from its Chrome browser, in favor of free and patent-unencumbered VP8 (via the WebM container) and OGG Theora codecs. Simply put, it’s the biggest victory the open video camp has gotten in a landscape that has largely seemed tilted against them. The long-term outcome is, fairly, anyone’s guess. But you can at least mark one in the column of open video advocates, if you’re keeping score.
As I’ve covered on this site ad infinitum, H.264 simply isn’t an option for free and open source software. It’s a proprietary format backed by aggressive patent enforcement – something that is entirely within the legal rights of the parties that own the intellectual property on which it’s based, but which restricts free software projects like Mozilla and kdenlive.
Unlike a plug-in, now that HTML5 includes a video tag, free codecs and containers are essential to the future of video on the Web. Without them, browsers and creation tools – the entire workflow by which people share media – can’t work in a free software ecosystem. Because Apple has chosen to support only H.264 in its influential mobile devices and desktop browser, and because the same mobile devices don’t support Flash, the net effect has been to force video content not supported by Flash to H.264.
Understandably, web designers and content creators care mainly about getting their content visible, not about obscure legal wrangling. (No one can fault them for that.) But that’s the reason that today’s announcement from Google is such big news. Word of the intricacies of patents or licensing schemes don’t really impact Web content. But seeing Google throw its weight entirely behind the free VP8 and Theora codecs in their fast-growing Web browser could indeed motivate change.
No good deed goes unpunished: many publishers and users are criticizing the deal (see incensed commenters on Google’s blog), and Apple-biased writers – who I believe have artificially turned this into a question of pro- or anti-Apple positions – aren’t helping. But then again, I’m beginning to think that you have to tune out these kinds of complaints. Users in general seem to want the benefits of free and open source software like Firefox without any associated cost or sacrifice. And that’s, frankly, to be expected. It’ll be up to people in the free software community to deliver the kinds of benefits in the long run that they expect, at which point these gripes will seem a distant memory.
To put it another way, users may be vastly underestimating Google’s power to make VP8 a hit.
Can Google single-handedly shift video content usage? Well, let’s see: they’ve got the world’s most popular search engine, the world’s fastest-growing desktop browser (Chrome/Chromium), the world’s fastest-growing mobile browser (Android), the world’s fastest-growing mobile platform (Android), and the world’s most popular video site (YouTube). That’s to say nothing of emerging plays in TV and tablets and netbooks. Nor is Google alone. The world’s largest open source browser, Firefox, by necessity supports only open formats and backs Google’s WebM and VP8. You’ll also find commitments from everyone from NVIDIA and ARM to Skype and Winamp (seriously). Now, in fairness, industry partnerships come and go, and people put their logos on all kinds of things. But Chrome, Android, YouTube, and Firefox ought to count for something.
As usual, you can count on John Gruber (daringfireball) to root against Google, against Flash, against the open video formats, and for H.264.
The big problem WebM has versus H.264 is that there are hardware decoders for H.264.
This I agree with in part, but the situation is changing. That’s why Google has been pushing for hardware adoption and solutions for native-side decoding. It’s also important to note that mobile processors are getting faster and more capable.
I think everywhere else, H.264 will continue to dominate, and instead of getting native playback, Chrome users will get playback through Flash. This should be great for Chrome OS laptop battery life.
Burn! But for starters, let’s evaluate what “native” means. Yes, Flash decodes H.264 as a plug-in. But that’s already the reality for an end user on, say, any desktop Firefox browser watching H.264-encoded videos. And underneath the hood, Flash is using what is technically native code (including, very often, GPU acceleration) to decode and display video, just as would a plug-in. Gruber is conflating a whole bunch of variables to lay blame for battery life issues at the feet of Flash H.264 decoding.
Anyway, if anyone thinks the point of this is to steer publishers away from H.264, that’s exactly the point; Gruber can disagree, but he surely can’t feign shock. Given Microsoft has been relatively neutral, the only company I can see aggressively advocating H.264 support right now is Apple. On the other side of the fence, you have Google, Mozilla, major hardware makers, and more or less the entire free software community.
There’s no way publishers can drop H.264. To support Chrome, they’d have to add WebM-encoded versions of each video.
Gruber’s entire argument is predicated on the idea that most video content is currently encoded in H.264, and thus it shall be for the foreseeable future. But that ignores an underlying reality: most publishers already rely on a third-party to deal with the task of video hosting. That’s especially true on mobile – many average consumers will be just fine viewing YouTube videos and nothing else. But even beyond YouTube, video transcoding, hosting, and delivery infrastructure is sufficiently challenging that even major publishers often turn to providers like Brightcove.
If you’re self-publishing, changing video formats is a big deal. But if you rely on a video third party to deal with complexities of video publishing, you already depend on them to solve these problems for you. In fact, part of the reason you pay them is to deal with eventualities like, say, a proxy war spiced with patent disputes between two tech giants over obscure codec issues. In other words, those third-party publishers – like YouTube – could well add a new format, and quickly. (I’d say if you’re Brightcove, you might take this as great news.)
Gruber’s assumption that what you see today is what you’ll see this time next year is therefore a big leap.
Then, Gruber questions Google’s sincerity – and seizes an opportunity to complain again about Flash:
If Google is dropping support for H.264 because their “goal is to enable open innovation”, why don’t they also drop support for closed plugins like Flash Player?
Because that wouldn’t make any sense? Codec support has to be baked directly into the browser. Plug-in support is a facility that lets you run whatever you want. In the fully open source Chromium branch of the browser, H.264 is already missing. Whatever Google’s motivations, they’re being explicit about their goal: they want to steer people to open codecs and away from closed codecs.
As it stands now, Chrome not only supports Flash, it ships with its own embedded copy of Flash.
This statement is misleading. Chromium doesn’t ship with Flash, and never shipped with H.264, for precisely this reason.
I don’t see how Google keeps Flash but drops H.264 in the name of “openness” without being seen as utter hypocrites.
You can see Google however you want, but it’s not hard to see why people would see this particular battle as an unadulterated win for openness, no strings attached.
Flash adoption is already a fact of life. And it represents a plug-in, which is different from content that is delivered directly through HTML tags inside a web page. Google’s stated goal is driving adoption of open codecs. They wouldn’t make any headway doing that by disabling Flash – as Gruber himself says, Flash is likely to be the fallback for content that isn’t yet ready for the new codecs. Without that callback, people wouldn’t use Chrome or other tools at all. And there’s too much legacy content to abandon Flash.
The question of Flash’s place on the Web was decided years ago. With HTML5 and the video tag, the Web has a chance to do things differently – a chance that won’t soon come again. So, yes, Google continues to support Flash. But by being aggressive on video, they’re betting that another question – codec support in HTML5 – may not yet be set in stone.
Should you trust everything Google says, and take every intention at face value? Of course not. They’re huge company. You’d have to be insane.
Is this a huge win for openness? Absolutely.
This can no longer be viewed as Flash versus H.264, Adobe versus Apple. It has clearly become VP8 versus H.264, Google versus Apple, and free software versus Apple. As with pro sports, though, I wouldn’t worry about taking sides only to watch your favorite player switch jerseys. The battle here really is open versus closed. That’s been overstated elsewhere (iOS versus Android, for one), but here’s it’s strikingly clear-cut.
Most of all, it’s a huge win for Firefox. Mozilla stood alone with a browser that supported only open codecs and not H.264. But with Google in their corner – and Android, Chrome OS, the Chrome browser, and YouTube with them – that’s another story. The phrase “game changer” is wildly overused today to the point of being a cliche. But I think this may actually qualify. Google’s open source release of VP8 and WebM was a big gift to the open video camp, but it lacked teeth to drive adoption.
With this announcement, that changes. Open video just got a posse, in a very big way.
References:
Google Dropping Support for H.264 in Chrome [Daring Fireball]
HTML Video Codec Support in Chrome [Chromium Blog]