Представлен релиз Lightspark 0.7.0, свободного Flash-плеера, основанного на технологиях LLVM для исполнения ActionScript кода. Проект развивается при поддержке организации GNOME Foundation. Исходные тексты Lightspark написаны на языке C++ и распространяются в рамках лицензии GPLv3. Пользователи Ubuntu могут установить новую версию из специального PPA-репозитория. Пакеты для Fedora Linux в ближайшее время появятся в репозитории RPM Fusion.

Ключевые новшества Lightspark 0.7:

  • Экспериментальная поддержка оптимизации байткода во время исполнения;
  • Увеличение производительности виртуальной машины и снижение потребления памяти;
  • Поддержка SWF-файлов, сжатых с использованием LZMA;
  • Увеличение производительности загрузки JPEG-изображений;
  • Поддержка XMLSocket;
  • Полностью переработанный и улучшенный код маскировки;
  • Увеличение совместимости с ActionScript;
  • Улучшение поддержки BitmapData;
  • Улучшение поддержки XML;
  • Расширение возможностей интерфейса ExternalInterface для обеспечения интеграции с браузерами;
  • Решение проблем с используемым на различных сайтах Flash-кодом.

Основные особенности Lightspark:

  • За счет тесного использования OpenGL и JIT-компиляции нагрузка на систему при работе Lightspark заметно меньше, чем при просмотре того же ролика в Gnash или Adobe Flash. Графическая архитектура Lightspark построена по комбинированной схеме, в которой использованы и программные методы формирования изображения (вывод геометрических примитивов через Cairo, используя многопоточную схему обработки) и аппаратные механизмы акселерации (декодирование видео с использованием Pixel Buffer Objects; задействование OpenGL для работы фильтров и эффектов);
  • Поддержка SWF 9+ и языка ActionScript 3.0, впервые представленного в Adobe Flash 9 (в Gnash полная поддержка ActionScript 3.0 еще не реализована);
  • Задействование OpenGL при формировании вывода геометрических объектов и видео (для работы требуется видеокарта с поддержкой шейдеров);
  • Возможность подключения фильтров и эффектов, изменяющих параметры видео, благодаря задействованию текстурированного вывода с использованием OpenGL;
  • Реализация в виде плагина, совместимого с интерфейсом плагинов Mozilla;
  • Наличие встроенных средств для отладки, профилирования и инспектирования объектов на экране;
  • Несмотря на то, что еще не завершена разработка runtime-библиотек Flash, которые предоставляют разработчикам широкий спектр функций, от вывода видео до разбора XML, в Lightspark архитектура проекта позволяет создавать подобные функции на чистом C++ или в смешанном со сгенерированным в VM кодом представлении, что дает возможность вызывать подобные функции из любого контекста, не заботясь об их источнике.


Источник: http://www.opennet.ru/opennews/art.shtml?num=35193