Реализация Flash-проигрывателя целиком на языке JavaScript

В рамках проекта Smokescreen подготовлено web-приложение, способное проигрывать незамысловатые Flash-ролики в SWF-формате в web-брузерах без установленного Flash-плагина. Скрипт получился достаточно объемный, его исходный текст состоит из более 8 тыс. строк и занимает 175 Кб. Преимуществом скрипта является его полная автономность, он не требует привлечения дополнительных плагинов, внешних сервисов или перекодирования потока на стороне сервера.

В настоящий момент Smokescreen поддерживает значительную часть анимационных возможностей Flash 8, обработку потокового аудио, генерацию звуковых эффектов, функции ввода данных и базовый набор возможностей ActionScript. Принцип работы Smokescreen основан на трансляции SWF-файлов в представление на JavaScript/HTML5: скрипт загружает SWF-файл, распаковывает его, выделяя изображения и звуковые данные, а затем транслирует векторную графику в SVG-представление. Скрипт также имеет встроенную реализацию простейшего интерпретатора байткода ActionScript. Проект находится на начальной ступени своего развития, но уже сейчас позволяет корректно отображать содержимое простых Flash-баннеров.

Наглядно оценить возможности Smokescreen можно на специально подготовленной демонстрационной странице, которая работает в браузерах Firefox 3.6, Chrome 5, Safari 4, MobileSafari (iPhone/iPad/iPod) и Opera 10.5 (в Opera наблюдается ряд проблем, которые обещают исправить в ближайшее время). В настоящий момент код скрипта распространяется в оптимизированном (нечитаемом) виде без явного указания лицензии, но по заявлению разработчиков проект позиционируется как свободный и в скором времени исходные тексты будут доступны для модификации под одной из открытых лицензий.

©  OpenNet