Moonlight (runtime)
   HOME

TheInfoList



OR:

Moonlight was a free and open source implementation for
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
and other
Unix Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, an ...
-based operating systems of the now deprecated Microsoft Silverlight application framework, developed and then abandoned by the Mono Project. Like Silverlight, Moonlight was a web application framework which provided capabilities similar to those of
Adobe Flash Adobe Flash (formerly Macromedia Flash and FutureSplash) is a multimedia software platform used for production of animations, rich web applications, desktop applications, mobile apps, mobile games, and embedded web browser video players. Fla ...
, integrating multimedia, graphics, animations and interactivity into a single runtime environment.


History and overview

In an interview in the beginning of June 2007,
Miguel de Icaza Miguel de Icaza (born November 23, 1972) is a Mexican programmer, best known for starting the GNOME, Mono, and Xamarin projects. Biography Early years De Icaza was born in Mexico City and studied Mathematics at the National Autonomous University ...
said the Mono team expected to offer a "feasibility 'alpha' demo" in mid-June 2007, with support for Mozilla Firefox on
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
by the end of the year. After a 21-day hacking spree by the Mono team (including Chris Toshok, Larry Ewing and Jeffrey Stedfast among others), a public demo was shown at Microsoft ReMIX conference in
Paris Paris () is the Capital city, capital and List of communes in France with over 20,000 inhabitants, most populous city of France, with an estimated population of 2,165,423 residents in 2019 in an area of more than 105 km² (41 sq mi), ma ...
,
France France (), officially the French Republic ( ), is a country primarily located in Western Europe. It also comprises of overseas regions and territories in the Americas and the Atlantic, Pacific and Indian Oceans. Its metropolitan area ...
on June 21, 2007. However, in September 2007, developers still needed to install and compile a lot of Mono and Olive (the experimental Mono subproject for .NET 3.0 support) modules from the Mono SVN repository to be able to test Moonlight. A Moonlight IDE, named Lunar Eclipse, exists in SVN for XAML designs. Moonlight uses
Cairo Cairo ( ; ar, القاهرة, al-Qāhirah, ) is the Capital city, capital of Egypt and its largest city, home to 10 million people. It is also part of the List of urban agglomerations in Africa, largest urban agglomeration in Africa, List of ...
for rendering.Moonlight Notes
/ref> Moonlight was provided as a plugin for Firefox and Chrome on popular Linux distributions. The plugin itself does not include a media codec pack, but when the Moonlight plugin detects playable media it refers users to download a free Media codec pack from Microsoft. Moonlight 2.0 tracked the Silverlight 2.0 implementation. The first completed version, Moonlight 1.0, supporting Silverlight 1.0, was released in January 2009. Moonlight 2.0 was released in December 2009. The Moonlight 2.0 release also contained some features of Silverlight 3 including a pluggable media framework which allowed Moonlight to work with pluggable open codecs, such as
Theora Theora is a free lossy video compression format. It is developed by the Xiph.Org Foundation and distributed without licensing fees alongside their other free and open media projects, including the Vorbis audio format and the Ogg contai ...
and
Dirac Distributed Research using Advanced Computing (DiRAC) is an integrated supercomputing facility used for research in particle physics, astronomy and cosmology in the United Kingdom. DiRAC makes use of multi-core processors and provides a variety o ...
. Preview releases of Moonlight 4.0, targeting Silverlight 4 compatibility, were released in early 2011. In April 2011, the Moonlight team demonstrated Moonlight running on Android tablets and phones at the MIX11 Web Developers conference in Las Vegas. Shortly after the April 2011 release, Attachmate, parent to developer Mono, laid off an undisclosed number of Mono employees, and announced a deal with startup Xamarin for Mono development and support. At that time, Xamarin CEO
Nat Friedman Nathaniel Dourif Friedman is an American technology executive and investor. He was the chief executive officer (CEO) of GitHub, and former Chairman of the GNOME Foundation. Friedman is currently a board member at the Arc Institute, and an advisor ...
affirmed their commitment to the Moonlight project, although there were no outward signs of any further development afterward. In December 2011, de Icaza announced that work on Moonlight had stopped with no future plans. He explained that Microsoft had "cut the air supply" to it by omitting cross-platform components, making it a web-only plugin, and including Windows-only features. He advised developers to separate user interface code from the rest of their application development to ensure "a great UI experience on every platform (Mac, Linux, Android, iOS, Windows and Web)" without being dependent on third party APIs.


DRM

Silverlight supports Digital Rights Management in its multimedia stack, but Microsoft will not license their PlayReady DRM software for the Moonlight project to use and so Moonlight is unable to play encrypted content.


Desktop support

Moonlight was also usable outside of the browser as a Gtk+ widget (known as Moonlight.Gtk). A number of Desklets were written using this new technology during the Novell Hack Week in 2007. MoonBase is an experimental set of helper classes built on top of Moonlight.Gtk that can be used to create full blown C# desktop applications using the Moonlight (Silverlight 4.0) widgets and XAML files. MoonBase also has a related XAML editor/previewer.


Microsoft support

Shortly after the first demo at MIX 07 in Paris, Microsoft began cooperating with Novell to help with the building of Moonlight. Support included giving exclusive access to Novell for the following Silverlight artifacts: * Microsoft's Test suites for Silverlight, * Silverlight specification details, beyond those available on the web, * Proprietary
codec A codec is a device or computer program that encodes or decodes a data stream or signal. ''Codec'' is a portmanteau of coder/decoder. In electronic communications, an endec is a device that acts as both an encoder and a decoder on a signal or ...
s made available free-of-charge for
Windows Media Video Windows Media Video (WMV) is a series of video codecs and their corresponding video coding formats developed by Microsoft. It is part of the Windows Media framework. WMV consists of three distinct codecs: The original video compression technology ...
and Audio, for
VC-1 SMPTE 421, informally known as VC-1, is a video coding format. Most of it was initially developed as Microsoft's proprietary video format Windows Media Video 9 in 2003. With some enhancements including the development of a new Advanced Profile, ...
and
MP3 MP3 (formally MPEG-1 Audio Layer III or MPEG-2 Audio Layer III) is a coding format for digital audio developed largely by the Fraunhofer Society in Germany, with support from other digital scientists in the United States and elsewhere. Origin ...
, and in the future
H.264 Advanced Video Coding (AVC), also referred to as H.264 or MPEG-4 Part 10, is a video compression standard based on block-oriented, motion-compensated coding. It is by far the most commonly used format for the recording, compression, and distr ...
and AAC, only licensed for use with Moonlight when running in a web browser. Other potential decoders include
GStreamer GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows. For instance, GStreamer can be used to build a system that reads files in one format, processes the ...
and
FFmpeg FFmpeg is a free and open-source software project consisting of a suite of libraries and programs for handling video, audio, and other multimedia files and streams. At its core is the command-line ffmpeg tool itself, designed for processing of vid ...
(used during the development stage) but Novell will not provide prepackaged versions of Moonlight with those libraries, because those decoders have not been granted licensing for the use of patented codec technologies. Microsoft released two public covenants not to sue for the infringement of its patents when using Moonlight. The first one covered Moonlight 1 and 2, is quite restrictive and covered only the use of Moonlight as a plugin in a browser, only implementations that are not GPLv3 licensed, and only if the Moonlight implementation has been obtained from Novell. It also notes that Microsoft may rescind these usage rights. The second covenant was an updated and broader covenant that no longer limits the covenant to users that obtain Moonlight from Novell, it covers any uses of Moonlight regardless of where it was obtained. The updated covenant covers the implementations as shipped by Novell for versions 3 and 4, it no longer distinguishes Novell from other distributions of Moonlight and expands the covenant to desktop applications created with Moonlight. The covenant does not extend to forks licensed under the GNU GPL (Moonlight itself uses the Lesser GPLv2).


Codecs integration

Although Moonlight is free software, the final version was going to use binary-only audio and video
codecs A codec is a device or computer program that encodes or decodes a data stream or signal. ''Codec'' is a portmanteau of coder/decoder. In electronic communications, an endec is a device that acts as both an encoder and a decoder on a signal or d ...
provided by Microsoft which will be licensed for use with Moonlight only when used as a browser plugin (see above). The Windows media pack is not distributed together with the Moonlight plugin but the first time when media content in Silverlight is detected the user will be prompted to download the pack containing the codecs used in Silverlight directly from Microsoft. Self built versions could still use the FFmpeg library and there was discussion about adding GStreamer support as an alternative to using Microsoft's binary codecs for those who wish to use GStreamer instead and also for use when used outside of a browser. Mono architect
Miguel de Icaza Miguel de Icaza (born November 23, 1972) is a Mexican programmer, best known for starting the GNOME, Mono, and Xamarin projects. Biography Early years De Icaza was born in Mexico City and studied Mathematics at the National Autonomous University ...
blogged that the Mono team prototyped Moonlight multimedia support using the LGPL-licensed
FFmpeg FFmpeg is a free and open-source software project consisting of a suite of libraries and programs for handling video, audio, and other multimedia files and streams. At its core is the command-line ffmpeg tool itself, designed for processing of vid ...
engine but that they were unable to redistribute packaged versions that used that library due to FFmpeg codec licensing issues inside of the United States.


Moonlight in other distributions

After the release of Moonlight 2, a covenant provided by Microsoft was updated to ensure that other third party distributors can distribute Moonlight without their users having to worry about getting sued over patent infringement by Microsoft. This covenant can be found on th
Microsoft website
Kevin Kofler and Tom Callaway, of Fedora, have stated publicly that the last covenant was "not acceptable" for that distribution and that "it is still not permissible in Fedora". The version of Moonlight that was going to be available direct from Novell would have access to licensed closed source media codecs provided free of charge by Microsoft. Third-party distributions of Moonlight would only be able to play non-patent encumbered media like
Vorbis Vorbis is a free and open-source software project headed by the Xiph.Org Foundation. The project produces an audio coding format and software reference encoder/decoder (codec) for lossy audio compression. Vorbis is most commonly used in conj ...
,
Theora Theora is a free lossy video compression format. It is developed by the Xiph.Org Foundation and distributed without licensing fees alongside their other free and open media projects, including the Vorbis audio format and the Ogg contai ...
and Ogg. To support other formats, the distributors would have had to choose from a few licensing options: * Negotiate licences directly with individual media codec owners (e.g. MPEG-LA,
Fraunhofer Society The Fraunhofer Society (german: Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V., lit=Fraunhofer Society for the Advancement of Applied Research) is a German research organization with 76institutes spread throughout Germany ...
) * Negotiate access to Microsoft's Media Pack as Novell have done * Use
GStreamer GStreamer is a pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows. For instance, GStreamer can be used to build a system that reads files in one format, processes the ...
or a commercial codec license * Use a hardware-specific software like
VDPAU Video Decode and Presentation API for Unix (VDPAU) is a royalty-free application programming interface (API) as well as its implementation as free and open-source library () distributed under the MIT License. VDPAU is also supported by Nvidia. Th ...
At the PDC conference on October 13, 2008, Microsoft placed the 'Silverlight XAML Vocabulary' under the Microsoft Open Specification Promise, stating in a press release, "The Silverlight XAML vocabulary specification, released under the Microsoft Open Specification Promise, will better enable third-party ISVs to create products that can read and write XAML for Silverlight." Since Moonlight is essentially a XAML reader, Debian's position is that Moonlight is safe for them to redistribute (leaving each user to agree to their own licensing for Microsoft's and others' binary codecs).


See also

*
MonoDevelop MonoDevelop (also known as Xamarin Studio) is an open-source integrated development environment for Linux, macOS, and Windows. Its primary focus is development of projects that use Mono and .NET Framework. MonoDevelop integrates features similar t ...
– an open source IDE targeting both Mono and Microsoft
.NET Framework The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
platforms


References


External links

*
Wired - Microsoft Silverlight Coming to Linux
*

by
Miguel de Icaza Miguel de Icaza (born November 23, 1972) is a Mexican programmer, best known for starting the GNOME, Mono, and Xamarin projects. Biography Early years De Icaza was born in Mexico City and studied Mathematics at the National Autonomous University ...

The H Open Source - Health Check: Moonlight
{{DEFAULTSORT:Moonlight (Runtime) Free multimedia software Free software programmed in C Free software programmed in C Sharp Free software programmed in C++ Microsoft Silverlight Mono (software)