2012-03-24

Résistance

When I read this discussion on Mozilla Dev thinking about supporting H.264 I felt like I had to say something. Not just as the creator of Matroska (on which WebM is based) but also as a general net citizen.

Ever since I started working on video technology I realized how vast and encompassing the subject is. In this particular case it's about letting patents dominate a fundamental web technology. It's about who is controlling the technological stack when you go on the Internet (aka market shares). It's about a technical decision that is actually changing the whole principle of the web: the technologies it uses have to be Royalty Free, be it on the user side, on the server side or on the creation tools side.

So far Mozilla was opposed to using H.264, not for technological reasons but on the principle that it didn't fit the Royalty Free web. They were also saying it was “not good for free softwares”, that if used “you [couldn't] have a completely free software Web client stack”, that would be “honoring the letter while violating the spirit” or that it “is not a game [they] are interested in playing” and eventually “it pushes the software freedom issues from the browser (where [they] have leverage to possibly change the codec situation) to the platform (where there is no such leverage)”. None of what was said then has changed. So what has changed must be Mozilla.

When BootToGecko was announced my first reaction was whether they would support H.264 when it's hardcoded in the phone chipset. Because answering this question has a lot of repercussions. The amount of reaction to their answer is proof that the issue is deep. In fact it goes further than just H.264 which is hardcoded and paid for on the hardware (I suppose a lawyer should double check on that to be sure). It also means supporting the MP4 file format, which is also patented but not hardcoded in chipsets, unless they plan to only support H.264 inside Matroska (they already have the WebM code to do it easily), but I doubt that. At some point they will likely support MPEG DASH which made the W3C uneasy because it's not yet a Royalty Free technology. And there may be other patented technologies in the future.

The W3C will never endorse the use of the H.264 codec, it doesn't fit its rules. Vendors using it for the <video> tag are just using a backdoor to put patented technologies on the web, where it should have never been in the first place. Now the message is sent loud and clear, there are no reason big companies shouldn't try to impose their technological dominance on the web (Skype and Facebook come to mind). Everyone will surrender in the end. The bigger you are, the biggest momentum you have, the more chance you have to succeed. And patents are just as virus like as the GPL license: once you touch them you can't escape from them...

Maybe Mozilla is just acknowledging the fact that the web is going away from its core roots and what made it such a global success. But it still seems shortsighted to me. The timing of their announcement comes just weeks/months before new devices with VP8 hardware decoding are widely released. If they wanted to emphasis their continued support/favor for WebM they could at least have first released B2G on a device that has VP8 capabilities. Instead the message sent to those wondering if they should support WebM is: don't bother anymore, in the end we'll have H.264 everywhere. Such a decision to kill WebM should have been taken collectively. Especially since it's just to satisfy the need of a project that currently has 0 users and will have to compete against Apple, Google and Microsoft on the smartphone/tablet market. Billion dollar companies that heavily depend on this market for their future. Whereas Mozilla's future depends on product placement from the same companies. But that may change if I read this correctly: “We will not require anyone to pay for Firefox. We will not burden our downstream source redistributors with royalty fees.“ Payment not required, but possible ?

To be fair, Google deserves a big share of the blame as well. Even though they provided VP8 to WebM, they didn't put all their weight in the battle. They have done too little too late. And there is no sign of that changing. They even failed to deliver on their promise of abandoning H.264 in Chrome to favor the technology they built and is perfect for the web. If there ever was a strategy for WebM I have never heard of it.

Good reads on the subject:

8 comments:

Asa Dotzler said...

I think you're wrong to blame Mozilla here.

Mozilla did more than anyone to hold out against 264. We went years without it while all the competition supported it and we lost users and developer mindshare. And for what? We weren't slowing the adoption of 264, it was actually accelerating.

Our actions, which harmed our users and developers, were not effective in any way in causing a shift away from 264. There is nothing Mozilla could do alone, and we were alone, to move the Web away from 264.

Some would have liked to see Mozilla die on that hill, slowly losing users and developers until Mozilla had no market and no say at all in other very important debates about the Web.

I think that's short-sighted. There are plenty of other battles to fight where Mozilla can and will make a meaningful difference. Asking Mozilla to fight to its certain death in this one battle ignores the rest of the War.

If Mozilla disappears, we'll have more than Facebook (your concern) to worry about. The Web will be at the mercy of *browser vendors*, 100% commercial, all with a huge stake in monitizing users.

Mozilla cannot win every battle. That was true a decade ago. It's true today. And it'll be true a decade from now. But Mozilla must be around to fight when it can make a difference.

Mithriltab said...

At the defining intersection, Mozilla goes H.264. You fear Chrome competition? You already lost the war, because you failed to listen for so long. And now you are losing your principles too. You want market share over proper and free web?

robux4 said...

Thanks for taking the time to read and reply Asa.

I don't blame Mozilla only. But I think the way it was handled is doing a lot of unnecessary harm. It sends the wrong signals: the WebM war is lost, use H.264, non RF technologies on the web can win with enough pressure.

Like I said, I think the decision to go that road should have been taken collectively, at least discussed with other WebM core participants. There were ways to do it without harming WebM too much as said above. There could also have been a public campaign to force "Do No Evil" Google to drop H.264 from Chrome within X months or else you go for H.264. That could have changed the outcome completely or at least put the blame for the failure on Google.

Now what we have is Mozilla afraid of missing the mobile train completely and making ill-advised move to win relevance. In the process you may gain some traction/support but also lose some from the ones who are closer to your core values.

Erunno said...

"There could also have been a public campaign to force "Do No Evil" Google to drop H.264 from Chrome within X months or else you go for H.264. That could have changed the outcome completely or at least put the blame for the failure on Google."

No, it wouldn't changed anything. Brendan Eich already covered that point: If desktop Chrome were to drop H.264 support for the tag, its users would get the Flash-fallback automatically instead (Chrome bundles a customized Flash Player). AFAIK there have never been plans to drop H.264 on Android where the lack of the Flash fallback hurts Mozilla far more.

The whole situation stinks but a slightly compromised Mozilla is still preferable to no Mozilla at all.

Mithriltab said...

No Mozilla at all is better than slightly compromised Mozilla.

robux4 said...

Erunno, one fight after the other. If you read my previous post which followed Chrome's announcement Adobe were supporters of WebM. Once Google would have made the move, the pressure would then go to Adobe to add WebM support in Flash (even though it's dying on mobile). None of these moves have been done, at least that I know of...

robux4 said...

Erunno, one fight after the other. If you read my previous post which followed Chrome's announcement Adobe were supporters of WebM. Once Google would have made the move, the pressure would then go to Adobe to add WebM support in Flash (even though it's dying on mobile). None of these moves have been done, at least that I know of...

Anonymous said...

I am deeply disappointed on how this thing played out. However Robux4 made a good point that VP8 hardware decoding devices are about the reach the market, why pull the rug now?

Firefox will never be on iOS, and turn over rate for android smartphones is pretty high so the momentum for VP 8 should swing back a little as the VP 8 decoding device penetrate the market.

What I am more concerned about is H265. There has been a peep of any VP 9, and manufacturers already seems to be lining up for h265. Come on on2 and Google get your act together?