Sacrificing the Open Web with H.264Sunday, February 20, 2011
The openness of the Web is under a direct attack. Apple and Microsoft have found an antidote to competing against free open-source software. Their solution is ingenious - force free software to charge their customers, and then drive them out of business by undercutting on price (funding that loss-leading with revenue generated from the sales of their Operating Systems).
Google defending open source browsers
Open source software has just one ace in it’s deck - Google. Google took a principled stand in deciding to drop support for the H.264 codec, and throw it’s considerable weight behind the not-yet-patent-encumbered WebM format (based on the VP8 codec). They certainly didn’t have to make this move since Google can afford the licensing cost of H.264.
Many people say Google’s decision is a step backwards for HTML5. I regard it as a step back from the brink of disaster of a patent-encumbered web, and a step towards preserving the openness of the Web. The H.264-codec is a victim of software patents. Despite it’s technical merits and wide-spread hardware support, H.264 on the web is a barrier to open-source access to video content on the Web.
Accepting H.264 as the standard video codec (de facto, or otherwise) on the web means making the choice between:
- Being limited to Apple’s or Microsoft’s Operating Systems on the desktop and mobile devices
- Accepting that we will be paying for browser extensions to enable H.264 video in each open source browser we use not running on Apple and Microsoft developed operating systems
- Accept that we won’t be watching H.264-encoded video natively on the web if we chose open source browsers
- Accept that the Web still requires Flash for video playback
- Accept that only Safari and Internet Explorer will support H.264 natively, and use those browsers instead
Out of the above choices the least onerous, ironically, is to accept that Flash will be filling in this gap of a lack of open and patent-unencumbered video codec for a while.
The Patent Trolls
Our current predicament on the web is a result of allowing software patents to exist. Before, tiny business entities took major commercial software companies to court and won substantial payouts for their software patents. Recently, in the smartphone industry every company is suing and being sued for software patent breaches.
In the video codec industry, Apple and Microsoft have cleverly positioned themselves with the patent trolls of the MPEG LA. They have protected themselves from being sued while having a free hand (and allies) to target open-source developers.
MPEG LA is a Delaware-incorporated company that holds a number of key software patents for H.264. It is a shell company made up of member companies across the video creation and playback industries. Every major hardware producer of H.264 products is a member of MPEG LA - from DVD & Blu-ray players, high-definition TV, portable video players and other devices that contain hardware support for H.264 encoding or decoding.
The cost of H.264
MPEG LA have recently announced that video on the Web encoded in H.264 will be royalty free if the video itself is free to visitors. The use of the format itself is free, but not the encoding or decoding of it.
Software that encodes or decodes H.264 will need a license (PDF), and the pricing depends on the number of users of that piece of software.
- 0 to 100,000 users: free
- 100,000 to 5 million users: 20 cents per user in this group
- over 5 million users: 10 cents per user in this group
This is an annual cost. Every year, developers need to pay this charge for every user of software that uses a codec that encodes and/or decodes H.264. There is cap on the total amount payable, currently this is $6.5 million (for the period 2011-2015), an increase of $1.5 million from the previous period 2009 to 2010.
This pricing suits Microsoft and Apple as operating system vendors very well. Their browsers are “part of the operating system”, so they pay a standard flat-fee of $6.5 million per operating system and that covers all the users of their operating system. It’s money they can easily afford, and has a negligible effect on ongoing development investments inside the company. (Doesn’t it strike you as odd that there’s a maximum ceiling? This makes H.264 licensing far cheaper for massive commercial software companies like Apple, Adobe and Microsoft because of their scale)
Open Source software expenses
Open source browsers running on the Apple and Microsoft platforms are not so lucky. If they have native support for H.264 decoder they will be liable for this license fee payment. Both Apple and Microsoft have declared that they will develop extensions for these browsers to play H.264 video on their operating system.
That means open-source browsers have to pay licensing fees for the H.264 codec if they want to support H.264 natively in their browser. This creates a serious headaches for open source browser developers:
- they have to track the number of users of their software, and continue tracking them year-by-year.
- Once they achieve over 100,000 users, they then have to make annual payments to MPEG LA for the use of their codec.
So popular open-source products face a financial obstacle if they have a small modicum of success. How will they fund this cost? They are left with some difficult choices:
- they forgo native support for H.264 (which Mozilla and now Google have already decided to do),
- they divert investment of donations and grants away from development towards paying the H.264 licensing cost.
- they start charging their users annually for the use of their browser (again, necessitating diverting investment into the development of their product into an infrastructure for taking user payments)
That for open source developers, is the bitter taste of success.
Relying on browser plugins and extensions for H.264 does take away the main benefit of the HTML5 video element - avoiding the use of plugins for video. And that plugin would need to be provided either by the underlying operating system, or by a commercial third-party plugin. In this case, keeping Flash as a fallback is a much less onerous task than complying with the licensing requirements of H.264.
There’s also the case of what happens on Linux platforms (both desktop and mobile devices). Somewhere in the Open Source stack there now needs to be a commercial piece of software that provides the H.264 playback.
(I haven’t found a clear statement yet of whether licensees need to be a member of MPEG LA, or what the costs are of membership. Also I’m surprised that Adobe isn’t a member of MPEG LA.)
H.264 Linux support
It’s not viable for H.264 support to be built in on the Linux “Operating System level”. So it would be up to each Linux distribution to deal with the H.264 licensing. H.264 patents hits a primary weakness of the Linux community: there is no One Linux Community, just thousands of distributions. This rules out a very generous Linux benefactor covering these licensing costs.
Either number of Linux distributions will drop substantially, as those who can afford the H.264 licensing fees will kill off those that don’t; or Linux distros will fragment much faster by enforcing a limited supply of 100,000 downloads or less in an effort to avoid license payments.
Both would be a big blow for the Linux community. So the need for an alternative solution is still very much there.
One alternative approach I can see is forgo H.264 support in open source browsers, and find a patent-unencumbered video codec to support. And at the same time redouble efforts into nullifying software patents.
Another alternative solution is MPEG LA dropping all licensing requirements and fees for open source software decoding of H.264, allowing browsers to support native playback for free. Since everyone is adamant that hardware based encoding is far better anyway, MPEG LA won’t be losing that much revenue since they get their hardware cut already.
The fate of the Open Web
The technical merits of H.264 and it’s widespread adoption of it in hardware are strong arguments in favour of H.264. But not strong enough to surrender the open Web for it.
All over the web commercial operating-system companies Microsoft and Apple are building checkpoints to keep out their open source competitors, and directing people who chose open source browsers on their platform off to a side-road of an inferior playback experience.
Which means that products like Flash will still be required to deal with the incompatibility of video on the Web. Settling on H.264 means giving up on the free World Wide Web and cede control of it to Microsoft, Apple and Adobe.
Let me be clear, it’s not H.264 to blame here, it’s software patents. Apple and Microsoft have a fiduciary duty to their shareholders, and that shows how courageous Google is with their principled stand. The adoption of WebM is an alternative path, if it can safely navigate MPEG LA’s battle call for a patent attack. WebM is our one chance at a patent-unencumbered video codec on the Web. (At least by choosing Flash over the patent-encumbered H.264 is the lesser of two evils, open source developers leave the MPEG LA licensing problem in Adobe’s hands. Thanks Adobe.)
From my pro-Open Web perspective, the MPEG LA membership pool is a cartel to protect Apple and Microsoft from competition from their open source rivals by forcing a commercial software model on them.
The Open Web needs an patent-unencumbered video codec. We may have to wait until H.264’s software patents expire before we get there, but hopefully WebM will mature and remain a patent-unencumbered alternative soon.