A brief note on web video formats, Mozilla, Theora, and H.264 in light of WebM

In a dispassionate comparison of the two major web video formats as of a few days ago, H.264 is basically stronger than Theora. H.264 has numerous and varied hardware decoders. Theora does not. H.264 has numerous software decoders. Theora has this too. Windows 7 and OS X natively support H.264. Neither natively supports Theora. Flash supports H.264. It does not support Theora. Numerous video cameras natively generate H.264. The same is not true of Theora. H.264 produces high quality for its compression. It’s disputable whether this is true of Theora. Licensing H.264 is burdensome but reasonably risk-free. Licensing Theora is painless but disputably risky.

Still, H.264 has weaknesses. H.264 is quite complex. Theora is relatively simple. H.264 is subject to actively enforced patents. Theora is, from all public appearances and from inferred verdicts of legal reviews by numerous organizations using or implementing Theora, subject to none. To use H.264, you must be sufficiently small as to not be worth the trouble of monetizing, you must find someone willing to acquire a license permitting them to extend to you the privileges you desire, or you must pay the piper his demand. To use, modify, or redistribute Theora requires no permission.

Network effects, unusually strong in technology, ceded the advantage to H.264. The smart money was always on H.264 enjoying continued success and Theora enjoying comparative irrelevance. But for Mozilla “logic” could not be dispositive. The loss of freedom of redistribution and grant of near-unlimited reuse and modification was a dealbreaker for H.264, absent a situation where refusing to deal with the devil (metaphorically speaking) caused greater harm than doing so.

Where faith in a fact can help create the fact, that would be an insane logic which should say that faith running ahead of scientific evidence is the ‘lowest kind of immorality’ into which a thinking being can fall. Yet such is the logic by which our scientific absolutists pretend to regulate our lives!

William James, The Will to Believe

Mozilla (and Opera, I should note) believed it was crucial for implementing, producing, and consuming video on the web to be legal and free to all without restriction. We had faith that it was possible to solve the problem of video on the web in the same way other problems at the foundation of the web were solved: through freely usable standards as happened with TCP/IP, HTTP, DNS, HTML, CSS, ECMAScript, PNG, SVG, JPEG, and many others. Absent this faith and a willingness to translate it into action by not implementing H.264, I doubt even a plausible free solution would have materialized. Google’s motivations surely are not exactly those of Mozilla or Opera, but I believe our actions strongly motivated Google to spend over $130 million to give away a video format.

Google’s release of VP8 and WebM cannot, I think, be attributed to logic alone; it must also be attributed to faith that freely usable video could be reality while evidence counseled otherwise.


  1. You try to make a case but fail. And you still have time to mix in religion…

    Why do you fail?

    –It was never a case of faith. It was a pragmatic decision based on business and development models, it was a case of defending its principles. It was also the “right” thing to do.

    –Mozilla didn’t accomplish what it wanted. If it wasn’t for Google trowing out 150million the web would be without a standard video codec and in the real world the result would be 99% h264 vs 1% for others.

    –This way a open codec might have a chance. Still never underestimate the power of greed!

    –Also this would have happened even if Mozilla didn’t existed and had made that stand. This is strategic move by Google. Close environments like Microsoft’s and Apple’s would be very damaging for Google.

    Why people keep writing stupid quotes without context. In this case a very stupid one.
    Saying that there are scientific absolutists is like saying that open source creates monopolies.

    Comment by Jack — 20.05.10 @ 14:38

  2. Just to note, I never mentioned anything about religion in the post. It was the point of the linked article, but it was not the point of this post. I also think you misunderstand Mozilla’s ultimate goal here. Beyond this, I feel no need to respond to the rest of your comment.

    Comment by Jeff — 20.05.10 @ 16:13

  3. You don’t think this would of happened without Mozilla why exactly?

    For Google it’s a simple rational. The more people move to the Internet the more they win. Therefore HTML5 and it’s video goodness helps people move more and more to the Internet. If it wasn’t for Mozilla there:

    a) wouldn’t likely be HTML5 (or competition or as much moving to the internet)

    b) if (a) wasn’t true then there would at least likely not be a big split in video codecs. Almost everyone (Microsoft, Apple and Google) would just adopt h.264 and be done with it. It’s only because Mozilla has pushed for openness that has forced Google’s hand to come up with a “best of both worlds” solution and push HTML5 forward even more.

    Comment by Damian — 20.05.10 @ 21:12

  4. Here’s a very simple reason why Mozilla helped make this happen.

    Had Mozilla said “we’ll support H.264”, then Mozilla, Microsoft, Apple and Google would have all had support for one codec. Opera would have had to fall in line with the giants, and that would have been that.

    Can people try to think a little less in black and white? Google did a great thing, which will also contribute to its own interests *based* on the climate it finds itself in. Mozilla (and Opera) did a gutsy thing that was also in its own interests and it changed the course of the discussion. Microsoft could have been petty, but they weren’t. It really is possibly for these kinds of thing to happen.

    Comment by voracity — 21.05.10 @ 04:09

RSS feed for comments on this post. TrackBack URI

Leave a comment

HTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>