HTML5 Video, Mozilla and The Video Codec Dilemma
By definition, standard bodies can only standardize on technologies that are royalty free, which is not the case with H.264. The non-profit Mozilla Foundation followed this principle in the past, but had a recent setback.
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. [via CNET]
What happened? Even though Google has been pushing for their supposedly royality free WebM standard, it has significant adoption challenges.
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.” [via CNET]
So does this mean Mozilla as a non-profit company is actually going to license H.264? Not exactly. As it turns out, Mozilla decided to use H.264 if it’s available on the platform via HW decoding, but it won’t embed/license a H.264 decoder in Firefox, which would guarantee full reach.
I want to land bug 714408 on mozilla-central as soon as I get review for it. It adds hardware-accelerated audio/video decoding support to Gecko using system decoders already present on the system. Android, for example, ships by default with a number of decoders, and in particular for such mobile devices we really have to use these hardware-accelerated decoders for good battery life (and performance).
Initially this will be enabled on Gonk (B2G). In a few weeks we will add support for Android as well. We will support decoding any video/audio format that is supported by existing decoders present on the system, including H.264 and MP3. There is really no justification to stop our users from using system decoders already on the device, so we will not filter any formats. [...]
I don’t think this bug significantly changes our position on open video. We will continue to promote and support open codecs, but when and where existing codecs are already installed and licensed on devices we will make use of them in order to provide people with the best possible experience. [..]
Desktop is a more complex equation, thats why we are attacking mobile first. On mobile the field is pretty homogeneous, with Gecko being the only browser not supporting the common formats. [via Mozilla dev Google groups]
So what changed Mozilla’s mind not to further push for open web video formats? One of the reasons is clearly the H.264 ecosystem, ranging from encoders, hardware, to thousands of devices – sometimes it is very hard to swim against the tide. In addition, the majority of video delivered through Flash Player or Adobe AIR is H.264 based.
But what does this mean for Google and their WebM strategy? And what about all the unresolved challenges around content protection, adaptive streaming, and many other advanced video features? Only time will tell, but be prepared for a long trip ahead of us.