Microsoft officially announced the availability of an open-source Linux implementation of Silverlight 2 this week. The release of the runtime environment dubbed Moonlight 2 is based on a cooperation between Microsoft and Novell that started in 2007 and also involves royalty-free access to proprietary media codecs owned by Microsoft.
The release will make it possible for users of Ubuntu and other Linux distributions to soon access online programming like Sunday Night Football and the NBC Winter Olympics on their machines. However, don’t hold your breath for Netflix streaming or other DRMed content coming to Linux anytime soon.
The release of Moonlight 2.0 comes just 10 months after that of Moonlight 1.0. The new version is based on Silverlight 2.0, but already includes a number of features from Silverlight 3, which was released this summer, according to Moonlight developer Miguel de Icaza. Part of the feature set of Moonlight 2.0 includes smooth streaming, partial out-of-browser support and custom codecs. De Icaza wrote on his blog that Microsoft and the Moonlight team are working on bringing popular content streamed through Silverlight like Sunday Night Football and the NBC Winter Olympics to Linux as soon as possible.
The development of Moonlight is the result of a 2006 patent and licensing agreement between Microsoft and Novell that included Microsoft’s promise not to sue users of Novell’s SuSe Linux for technologies patented by Redmond. This promise was officially called a “covenant not to sue” and seen as the best way to harmonize patent licensing issues with the GPL. One result was that users were free to use Silverlight technology with Moonlight, but only if they got Moonlight directly from Novell. “This is a model similar to how Flash is distributed: there is a well-known location where you get your plugin,” explained de Icaza on his blog, adding: “The open source world does not work that way though.”
The new agreement now makes it possible to include Moonlight 2 with Ubuntu and other Linux distributions, with one caveat. Moonlight 2.0 doesn’t play many proprietary video formats right out of the box. The version distributed by Novell queries Microsoft’s web site to download licensed versions of these codecs. Makers of other Linux distributions would either have to negotiate with Redmond to get access to the same codecs, or strike direct licensing agreements with codec owners or distributors. Also, Moonlight doesn’t support Microsoft’s PlayReady DRM, so there won’t be any way for Linux users to access streaming video from Netflix anytime soon.
So what’s in it for Microsoft? One reason having Silverlight run on Linux is interesting to Redmond are connected devices. De Icaza told me that Microsoft’s covenant only extends to PCs, and not to mobile phones or set-top boxes running Linux. Of course, that doesn’t stop anyone from directly licensing the runtime environment for these use cases, and maybe even adding a license for PlayReady while they’re at it. De Icaza hinted at the development of Linux-based devices with Moonlight on his blog, stating in the comment section: “There are two companies that are experimenting with Moonlight and PlayReady right now, but they are both using it on systems that fit the definition of ‘device’.”
Adobe has been aggressively pursuing the deployment of Flash on connected devices. Moonlight could be an important tool for Microsoft to catch up in this space. Microsoft announced earlier this year that it’s going to bring Silverlight to the Xbox. It revealed in September that Silverlight 3 will eventually also be available for mobile phones running Moblin Linux, but the company declined to share any further plans for connected devices.