Вышел Moonlight 2.0, реализация технологии Silverlight 2 для Linux

Компания Novell представила релиз проекта Moonlight 2.0, с открытой реализацией технологии Silverlight 2 и некоторых элементов Silverlight 3, развиваемых компанией Microsoft в качестве альтернативы Adobe Flash. Работа Moonlight 2.0 протестирована с такими сайтами, как Smooth Streaming, Deep Zoom, QuakeLight, Strange Attractor. Moonlight 2.0 распространяется на сайте проекта Mono в виде кросс-платформенного плагина к Firefox.

Одновременно сообщается об усилении сотрудничества компаний Novell и Microsoft в плане реализации технологий Silverlight 3 и Silverlight 4. В рамках заключенного соглашения компания Microsoft предоставила проекту Moonlight специализированные пакеты для детального тестирования и выявления проблем с совместимостью с оригинальной реализацией технологии Silverlight, а также предоставила разработчикам полные спецификации на Silverlight 3 и 4.

Кроме того, Microsoft опубликовало обязательство не предъявлять конечным пользователям Moonlight претензии, связанные с использованием запатентованных элементов технологии Silverlight. Отдельно подчеркивается, что обязательство касается всех пользователей, а не только клиентов Novell. В соответствие с опубликованным документом, Moonlight можно включать в состав Linux дистрибутивов, не опасаясь возможных судебным исков. Microsoft также предоставила проекту Moonlight пакет медиа-кодеков, который в настоящий момент поддерживает MP3 и VC1 (ожидается реализация H.264 и AAC), на который тоже распространяется вышеупомянутое патентное соглашение.

Основные отличия от Moonlight 1.0:

  • Вместо использования стандартного JavaScript интерпретатора, в новой ветке реализована специальная виртуальная машина ECMA VM для выполнения программ на языке C# и CIL-совместимых языках, таких как Ruby (IronRuby), Python (IronPython) и Boo.
  • Реализована возможность создания обособленных GUI интерфейсов, не привязанных к браузеру;
  • Поддержка механизма уровней изоляции CoreCLR Sandbox (security sandbox), позволяющих существенно снизить опасность для системы при нахождении в приложениях уязвимостей.
  • Для разработки Silverlight приложений подготовлен специальный Moonlight SDK;
  • Решено не разрабатывать для Moonlight 2.0 отдельный набор управляющих компонентов, такие как кнопки, списки, календарь, просмотр слайдов, отображение данных из БД и т.п., а воспользоваться готовым оригинальным набором от Microsoft, распространяемым под лицензией Microsoft Public License (MS-PL), признанной организацией Open Source Initiative (OSI) открытой и соответствующей требованиям "Open Source Definition".
  • В новой версии реализованы некоторые элементы Silverlight 3.0, например средства выполнения приложений вне браузера, поддержка класса WritableBitmap, система медиа-плагинов, поддержка диалогов SaveDialog.
  • Медиа-плагины позволят разработчикам подключать свои кодеки не дожидаясь их официальной поддержки в Silverlight/Moonlight, например, уже разработаны модули для поддержки кодеков Dirac, Vorbis и ADPCM.
  • Кроме вещания поверх HTTP поддерживаются средства для создания своих методов передачи медиа-потоков или загрузки частей одного потока с разных серверов.

Что касается следующей версии, то Moonlight 3 планируется выпустить в третьем квартале 2010 года. В Moonlight 3.0 планируется не только обеспечить совместимость со спецификацией Silverlight 3.0, но и привнести ряд оригинальных технологий, которые позволят создавать на базе Moonlight кросс-платформенные десктоп приложения. В Moonlight 3.0 планируется реализовать:

  • Поддержку видеокамер и звуковых устройств;
  • Возможность создания нативных меню не привязанных к браузеру;
  • Средство для записи скриншотов и видеороликов для отображаемого Silverlight контента;
  • Возможность печати содержимого текущего холста;
  • API для выполнения полноценных сетевых операций и доступа к локальному диску;
  • Интеграция средств для обеспечения выполнения Moonlight виджетов в широкий спектр платформ, таких как Gtk+, Win32, OSX, iPhone и Android.

© OpenNet