CrossBridge - CrossBridge

CrossBridge является Открытый исходный код набор инструментов, разработанный Adobe Systems, это кросс-компиляция C и C ++ код для запуска Adobe Flash Player или Adobe AIR.[1] Проекты, скомпилированные с помощью CrossBridge, выполняются до 10 раз быстрее, чем ActionScript 3 проекты.[2][3][4][5][6] CrossBridge был также известен как «Алхимия» и «Компилятор Flash Runtime C ++» или «FlasCC».[7][8][9]

CrossBridge использует высокопроизводительные доступ к памяти коды операций во Flash Player (известном как «Доменная память») для быстрой работы с данными в памяти.[10] CrossBridge использует LLVM и GCC в качестве бэкэнда компилятора, чтобы скомпилировать код C ++, оптимизировать его и преобразовать для работы в AVM2 (ActionScript Виртуальная машина ). Программы, созданные с помощью CrossBridge, до 10 раз быстрее, чем обычный код ActionScript,[4][5][6] но от 2 до 10 раз медленнее, чем собственный код C ++.[11]

CrossBridge может создавать видеоролики Flash Player (.swf файлы) или библиотеки Flash (.swc files), которые затем могут использоваться более крупными проектами, написанными на ActionScript 3 и скомпилированными с использованием бесплатного Apache Flex SDK (ранее Adobe Flex SDK). CrossBridge также использует GPU ускорение 3D-рендеринга, присутствующее в Flash Player 11 (известное как Stage3D ).[12]

Используя CrossBridge, Adobe перенесла OpenGL для использования в Flash Player Stage3D и выпустил его как проект с открытым исходным кодом в 2012 году.[13] В Язык программирования Lua (версия 5.1) также была перенесена для работы в Flash Player с использованием CrossBridge и выпущена в Google Code.[14] Скомпилированные CrossBridge проекты также позволяют запускать на стороне клиента цифровая обработка сигналов в настоящее время,[15] в том числе быстрое преобразование Фурье и Мексиканская шляпа вейвлет-преобразование.

История

В 2008 году компания Adobe выпустила CrossBridge под названием «Project Alchemy» на Adobe Labs интернет сайт. Это позволило компилировать специально модифицированные проекты C ++ в SWF, используя компиляторы LLVM и GCC.[7]

В 2012 году, пытаясь монетизировать Flash Player, Adobe ограничила использование функций Stage3D и доменной памяти Flash Player под брендом «Premium Features». «Премиум-функции» были лицензированы для использования, и издатели должны были платить Adobe роялти за их использование.[16] Project Alchemy был коммерчески выпущен как компилятор Flash Runtime C ++.[9]

В 2013 году Adobe открыла исходный код компилятора Flash Runtime C ++ под названием CrossBridge и выпустила его на GitHub код хостинга сайта.[17] «Премиум-функции» также стали бесплатными и больше не требовали лицензирования или лицензионных отчислений.[18]

Смотрите также

использованная литература

  1. ^ CrossBridge от Adobe, в GitHub
  2. ^ «Алхимия: FAQ». Архивировано из оригинал 5 мая 2012 г.. Получено 5 мая, 2012., Adobe Labs, «В настоящее время ASC выполняет несколько оптимизаций»
  3. ^ Зотов, Петр (06.05.2012). «Достижение предела глупости Adobe - пробел». Whitequark.org. Получено 2012-10-27.
  4. ^ а б Алхимия: FAQ В архиве 5 мая 2012 г. Wayback Machine, Adobe Labs
  5. ^ а б Оптимизация байт-кода ActionScript с помощью LLVM, Adobe
  6. ^ а б Adobe Alchemy, это ересь ActionScript?, Единица Ноль Один
  7. ^ а б Выпущена лаборатория Alchemy, Adobe Blogs, 17 ноября 2008 г.
  8. ^ Обновления алхимии выпущены в лабораториях, Adobe Blogs, 11 декабря 2008 г.
  9. ^ а б Проект «Алхимия» теперь называется компилятором Flash Runtime C ++ (FlasCC)., Adobe Blogs, 8 октября 2012 г.
  10. ^ FlasCC для Flash Player, Adobe Gaming В архиве 25 мая 2013 г. Wayback Machine
  11. ^ Алхимия, Adobe Labs
  12. ^ XC API, Adobe Gaming В архиве 25 апреля 2013 г. Wayback Machine
  13. ^ OpenGL для Stage3D, Хостинг проектов GitHub
  14. ^ луа-алхимия, Порт языка программирования Lua для ActionScript с использованием Alchemy, Google Code
  15. ^ Обнаружение высоты тона в реальном времени в AVM2, Temptonik, январь 2015 г.
  16. ^ Премиум-функции для Flash Player В архиве 2014-07-19 в Wayback Machine, Блог команды разработчиков Adobe Flash, Adobe
  17. ^ Компилятор Flash C ++ с открытым исходным кодом, CrossBridge В архиве 2014-03-25 на Wayback Machine, Adobe Blogs, 25 июня 2013 г.
  18. ^ Функции Adobe Premium для Flash Player, Adobe Devnet

внешние ссылки