Pull to refresh

Smokescreen — «Flash-плеер, написанный на Javascript»

Reading time 3 min
Views 2.2K
Original author: Chris Smoak
Увидел недавно топик-ссылку Smokescreen — конвертер flash в html5\js, решил сделать перевод той информации, которую я уже читал в сети про этот новый инструмент. Если коротко: Smokescreen — новый проект с открытыми исходниками, направленный на преобразование Flash в JavaScript/HTML5 для лучшего взаимодействовия с веб-страницей там, где раньше это было невозможно.
С его помощью вы можете расширить поддержку своего проекта на новые платформы без изучения новых инструментов, Flash автоматически преобразуется в JavaScript/HTML5. Smokescreen будет выпущен под open source лицензией и будет распространяться бесплатно. Стоимость поддержки и обслуживания будет низкой, чтобы вы могли убедиться, что Smokescreen работает именно так, как вам необходимо. Библиотека даст вам широкий выбор инструментов для разработки, включая разработку на JavaScript, без использования ActionScript, и разработку с подключением Flash к HTML-страницам проекта.

Описание проекта от авторов


Вы, вероятно, знакомы с тем, что Adobe Flash не работает на любом мобильном устройстве Apple. Более того, похоже, что Apple никогда не разрешит запуск Flash на iPhone/iPod/iPad.
Эти факты рисуют мрачную картину для интернет-рекламы на мобильных устройствах. Многие люди все еще хотят использовать существующие инструменты Adobe для создания рекламы, и замена этих инструментов иными ради одной единственной платформы (iPhone/IPod/iPad) выглядит глупо. Как рекламная сеть, мы считаем, что интерактивная реклама более привлекательна, чем скучные статические объявления, поэтому нам пришлось выбирать один из вариантов: жить в темноте, в пустынном мире скучных мобильных объявлений или что-то делать.
Мы направляем все усилия Smokescreen там в качестве предварительного прямо сейчас. В будущем мы рассчитываем добавить поддержку большего числа возможностей Flash, исправить ошибки и повысить производительность. Это только начало. Smokescreen в настоящее время поддерживает значительное возможностей анимации Flash 8, потокового звука, звуковые эффекты, некоторые возможности ввода и базовый ActionScript.

Принцип работы библиотеки


Smokescreen Криса Смоака (Chris Smoak), «флэш-плеер написанный на JavaScript», это невероятная вещь. Он работает полностью в окне браузера, считывает файлы SWF, распаковывает их (с помощью чистого JS), извлекает изображения и встроенные аудио-файлы, упаковывает их с помощью base64 и вставляет в HTML-страницу как data:uri, векторная графика собирается в анимированный SVG. В отладчике (Chrome Web Inspector) вы можете увидеть, как SVG изменяется в реальном времени во время проигрывания демо. Smokescreen даже реализует собственный интерпретатор байт-кода ActionScript. [...] Единственное, что меня беспокоит, это производительность библиотеки — она имеет объем 175 KB и более 8000 строк кода, что может привести к проблемам на маломощных мобильных устройствах.

Демо, демонстрирующие работу библиотеки


Демо показывают Smokescreen в действии. Демо без звука сравниваются с их Flash-вариантами на той же странице. Поскольку Smokescreen написан на JavaScript, он работает медленнее, чем Flash-плагин, скорость ограничивается производительностю браузера. Пока мы не применим больше трюков для увеличения скорости, некоторые демо не будут работать с удовлетворительной скоростью на iPad/iPhone/iPod.

Используйте последнюю версию браузера. Smokescreen в настоящее время работает в Firefox 3.6, Chrome 5, Safari 4, и MobileSafari. Существуют известные проблемы с Opera 10.5 оперы, которые будут исправлены. Не работает в IE, несмотря на то, что IE9 выглядит многообещающе.

Анимационные ролики формата swf, отображаемые с помощью Smokescreen

Демо для платформ Win, Mac, и Linux


Анимационные баннеры


Демо для Win, Mac, Linux, iPad, iPhone, и iPod)


Демо для Win, Mac, Linux, и iPad


Видео работы Smokescreen на iPad



Ссылки


При подготовке статьи использовались следующие ресурсы:

Для желающих попробовать


Поскольку официально библиотека еще не представлена, ссылок на нее нет (анонсирован только пре-релиз). В будущем, как отмечалось выше, библиотека будет доступна под open source лицензией. Для ознакомительных целей можно воспользоваться репозиторием Саймона Виллисона, который выложил код библиотеки с пометкой:
Я выложил не сжатую версию (использовалась команда TextMate Bundles -> JavaScript -> Reformat Selection) здесь: http://gist.github.com/418177

Только для ознакомительных целей — код библиотеки еще не является открытым.
Tags:
Hubs:
+51
Comments 34
Comments Comments 34

Articles