H.264 is heading to Firefox… is it an EME dry run?

header-logoCisco and Mozilla have made an announcement – Cisco will open source an H.264 implementation and Mozilla will incorporate support for a binary version of that open source code in Firefox in 2014. But what’s behind this move…

Firefox has wrestled with the H.264 video bear for some time now. Initially Mozilla took the position that there’d be no patented royalty-bearing standards implemented in Firefox and eschewed H.264 support in HTML5’s <video> tag for Google’s VP8-based WebM. This idealised position didn’t really get traction though and slowly the resistance to H.264 dropped, first on Android and then on Windows, with the removal of blocks which stopped system-level H.264 codecs that were already installed on the host operating system being used to play H.264 content. But on Linux, for example, where there was no system-level codec for playing H.264 by default and design, there was still no way to play H.264…

So that left Mozilla in an odd position of having a browser that may or may not be able to decode H.264 depending on platform. What would work is if Mozilla could lay its hands on an open source implementation of H.264 and then incorporate that into Mozilla. But that would trigger MPEG LA’s royalty gathering. And so Mozilla was at an impasse.

Until today, when in the synchronised “dance of the contribution”, Cisco first announced that it was releasing an open source (BSD licence) implementation of H.264 called OpenH264. Cisco’s motivation here is to get H.264 as the standard for interoperable web video in WebRTC for conferencing, which is dear to Cisco’s heart and business. Open source gets you so far, but Cisco needs H.264 in browsers like Firefox without passing on the costs. Cisco has said it will do that work by releasing binary modules of the OpenH264 codec and it will take the royalty cost on.

Ah, but how will it know how much distributing those modules will cost it when the MPEG LA chaps turn up for an audit? Brendan Eich, Mozilla CTO, explained that Mozilla won’t be bundling this binary module with the code. When Firefox needs the module, it will download it from Cisco and save it. Other apps will also apparently be able to make use of this downloadable module too. Eich does note that Firefox will still need AAC codecs on similar terms to the H.264 codec to complete the “industry de facto” stack for video and audio.

But here’s an interesting point. The debate about EME, the Encrypted Media Extensions for HTML5, has centred around the idea that the open web, and open web browsers, would be harmed by the presence of possible patent bearing, definitely closed source modules to perform encrypted video decoding. Now, here’s Mozilla, albeit with a different area of technology, working on how to include a platform-appropriate binary module into Firefox at runtime, as needed. It’s almost like a dry run for how EME decoders could be transparently downloaded and run. And that would be one less road-block for EME. Of course, this could also be the last thing on Mozilla’s collective mind, but the incorporation of an automatically downloaded binary module into Firefox will be a landmark in the history of the staunchly open source browser.

GPL-licensed exFAT driver for Linux appears

penguinIn one of the less typical cases of licence compliance, last month, code for an exFAT driver from Samsung landed on GitHub. ExFAT is an improved version of the FAT filesystem which is covered by a patent. LWN covered the immediate fallout as the code appeared to be GPL licensed but also appeared to be have been released only as proprietary binary code.

One suspicion was the code had been developed based on existing FAT code for Linux while others noted that as code linked to the kernel, it should be GPLv2 licensed. But nobody was apparently talking. We say apparently, because the Software Freedom Conservancy has now announced that it has helped Samsung come into compliance with the GPL with a source code release of the exFAT driver. Good news for compliance, but before you start adding the code to your Linux distribution, do remember that exFAT is Microsoft technology and they have an active IP licensing programme for that… unless of course thats something you aren’t worried about (hello France!)…

Snippets: Tails, Vim 7.4 and Wi-Fi SD hacking

Snippets

  • Not Telling Tails: If you need to cover your tracks on the internet and locally, then Tails (The Amnesiac Incognito Live System) will help as its a Debian GNU/Linux distribution with built in Tor support and other privacy tools which doesn’t even leave local logs. Latest version is 0.20 and details can be found in the Tails 0.2.0 announcement.
  • Vim scrubs up: Vim 7.4 was released last week. Highlights are a new, faster regexp engine, a thousand fixes and small improvements according to the announcement on the developer mailing list which also contains links to the various versions and a reminder to contribute to the ICCF Holland to help children in South Uganda if you like Vim.
  • Wi-Fi SD Hacked : Want to ding into a Wi-Fi SD Card? This blog posting shows how to get into the embedded Linux system on the card all the way to a remote shell. There’s a lot you can pack into an SD card.

Google adds patents to pledge but…

PatentsIconGoogle has announced it is adding 79 patents to its open source patent non-assertion pledge. Of course the pledge is limited only to things where the patents infringed are within the open source element … so no mixing a bit of FOSS into your proprietary application and hoping you’ll get coverage. Although there are 79 patents in the new batch, there aren’t 79 ideas in there. The count includes patents in each territory too, so take “Computer network for www server data access over internet” that patent is counted ten times, for Belgium, Canada, Switzerland, Germany, UK, Italy, Japan, Netherlands, Taiwan and the US. And that’s quite an old patent which will expire in the US in June 2015… do read it if you want a blast from the past with its OS/2 Warp systems and RS/6000s.

Anyway, counting out the double counting, I make it 38 actual different patents spread around the globe. The original ten patents in Google’s first pledge were all US patents related to MapReduce so this double counting didn’t occur. Let’s call the total number of different patents 48… out of Google’s estimated (inc Motorola portfolio) of, albeit patents for the same things in different territories, 18,000+ patents. Some folks call it a drip-feed┬ábut it’s more akin to open source patent homeopathy. The dilution is so extreme that it will make no difference to the problem and any improvement in the patient’s condition are unlikely to come from this treatment. Google should take a page from Red Hat’s book – their patent promise covers all their software patents, no lists, no donation dramatica.