Adobe Flash (ранее Macromedia Flash и FutureSplash ), за исключением Китая , является прекращенной мультимедийной программной платформой , используемой для создания анимации , многофункциональных интернет-приложений , настольных приложений , мобильных приложений , мобильных игр и встроенных видеоплееров в веб-браузере.
Flash отображает текст, векторную и растровую графику для создания анимации, видеоигр и приложений. Он обеспечивает потоковую передачу аудио и видео , а также может захватывать входные данные мыши, клавиатуры, микрофона и камеры.
Художники могут создавать Flash-графику и анимацию с помощью Adobe Animate (ранее известного как Adobe Flash Professional). Разработчики программного обеспечения могут создавать приложения и видеоигры, используя Adobe Flash Builder , FlashDevelop, Flash Catalyst или любой текстовый редактор в сочетании с Apache Flex SDK. Конечные пользователи просматривают Flash-контент с помощью Flash Player (для веб-браузеров), Adobe AIR (для настольных компьютеров или мобильных приложений ) или сторонних проигрывателей, таких как Scaleform (для видеоигр). Adobe Flash Player (доступен в Microsoft Windows , macOS и Linux ) позволяет конечным пользователям просматривать Flash-контент с помощью веб-браузеров . Adobe Flash Lite позволял просматривать Flash-контент на старых смартфонах , но с тех пор был прекращен и заменен Adobe AIR.
Язык программирования ActionScript позволяет разрабатывать интерактивную анимацию, видеоигры, веб-приложения, настольные и мобильные приложения. Программисты могут реализовывать программное обеспечение Flash с помощью таких IDE, как Adobe Animate, Adobe Flash Builder, Adobe Director , FlashDevelop и Powerflasher FDT . Adobe AIR позволяет разрабатывать полнофункциональные настольные и мобильные приложения с использованием Flash и публиковать их для Windows , macOS , Android , iOS , Xbox One , PlayStation 4 , Wii U и Nintendo Switch .
Первоначально Flash использовался для создания полностью интерактивных веб-сайтов, но с появлением HTML5 от этого подхода отказались . Вместо этого Flash занял нишу доминирующей платформы для мультимедийного онлайн-контента, особенно для браузерных игр . После открытого письма, написанного Стивом Джобсом в 2010 году , в котором говорилось, что он не одобрит использование Flash на устройствах Apple iOS из-за многочисленных недостатков безопасности, использование Flash сократилось после перехода Adobe на платформу Adobe AIR. Flash Player был объявлен устаревшим в 2017 году и официально прекращен в конце 2020 года для всех пользователей за пределами материкового Китая, а также для некорпоративных пользователей, [6] при этом во многих веб-браузерах и операционных системах планируется удалить программное обеспечение Flash Player примерно в то же время. время. Adobe продолжает развивать Adobe Animate, который поддерживает такие веб-стандарты, как HTML5, вместо формата Flash. [7]
В начале 2000-х годов Flash был широко установлен на настольных компьютерах и часто использовался для отображения интерактивных веб-страниц и онлайн-игр , а также для воспроизведения видео- и аудиоконтента. [8] В 2005 году бывшими сотрудниками PayPal была основана компания YouTube , которая использовала Adobe Flash Player в качестве средства для отображения сжатого видеоконтента в Интернете. [8]
В период с 2000 по 2010 год многие компании использовали веб-сайты на базе Flash для запуска новых продуктов или создания интерактивных корпоративных порталов. [9] Известные пользователи включают Nike , Hewlett-Packard (более известный как HP), Nokia , General Electric , Всемирный фонд дикой природы , HBO , Cartoon Network , Disney и Motorola . [9] [10] После того, как Adobe представила аппаратное ускорение 3D для Flash ( Stage3D ), на веб-сайтах Flash наблюдался рост 3D-контента для демонстраций продуктов и виртуальных туров. [11] [12]
В 2007 году YouTube предложил видео в формате HTML5 для поддержки iPhone и iPad , которые не поддерживали Flash Player. [8] После разногласий с Apple компания Adobe прекратила разработку Flash Player для мобильных устройств, сосредоточив свои усилия на приложениях Adobe AIR и анимации HTML5. [8] В 2015 году Google представила Google Swiffy — инструмент, конвертирующий Flash-анимацию в HTML5, который Google использовал для автоматического преобразования Flash-веб-рекламы для мобильных устройств. [13] В 2016 году Google прекратила поддержку Swiffy и его поддержки. [14] В 2015 году YouTube по умолчанию перешёл на технологию HTML5 на большинстве устройств; [15] [16] [17] однако YouTube поддерживал видеоплеер на основе Flash для старых веб-браузеров и устройств до 2017 года. [18]
После того, как в 2000 году во Flash 5 был представлен ActionScript, разработчики объединили визуальные и программные возможности Flash для создания интерактивных интерфейсов и приложений для Интернета. [19] Такие веб-приложения в конечном итоге стали известны как «Насыщенные Интернет-приложения» [19] , а позже и «Насыщенные веб-приложения». [20]
В 2004 году был выпущен Macromedia Flex, специально ориентированный на рынок разработки приложений. [19] Flex представила новые компоненты пользовательского интерфейса , расширенные компоненты визуализации данных , удаленное управление данными и современную интегрированную среду разработки (Flash Builder). [19] [21] За время своего существования Flex конкурировал с асинхронным JavaScript и XML (AJAX) и Microsoft Silverlight . [19] Flex был обновлен для поддержки интеграции с удаленными источниками данных с использованием AMF , BlazeDS , Adobe LiveCycle , Amazon Elastic Compute Cloud и других. [22]
В период с 2006 по 2016 год веб-сервис Speedtest.net провел более 9,0 миллиардов тестов скорости с помощью утилиты, созданной на основе Adobe Flash. [23] [24] В 2016 году сервис перешел на HTML5 из-за уменьшения доступности Adobe Flash Player на ПК. [25]
Разработчики могли создавать многофункциональные интернет-приложения и апплеты на основе плагинов для браузера на языке программирования ActionScript 3.0 с помощью IDE , включая Adobe Flash Builder, FlashDevelop и Powerflasher FDT . Приложения Flex обычно создавались с использованием платформ Flex, таких как PureMVC . [22]
Флеш-видеоигры были популярны в Интернете: такие порталы, как Newgrounds , Kongregate и Armor Games, занимались размещением флэш-игр. Многие Flash-игры были разработаны отдельными людьми или группами друзей из-за простоты программного обеспечения. [26] Популярные флэш-игры включают Farmville , Alien Hominid , QWOP и Club Penguin . [27] [28]
Adobe представила различные технологии, помогающие создавать видеоигры, в том числе Adobe AIR (для выпуска игр для настольных и мобильных платформ), Adobe Scout (для повышения производительности), CrossBridge (для преобразования игр на основе C++ для запуска во Flash) и Stage3D (для поддержка видеоигр с ускорением графического процессора). 3D-фреймворки, такие как Away3D и Flare3D, упростили создание 3D-контента для Flash. [ нужна цитата ]
Adobe AIR позволяет создавать мобильные игры на основе Flash , которые можно публиковать в магазинах приложений Google Play и Apple . [29] [30] [31]
Flash также используется для создания интерфейсов и HUD для 3D-видеоигр с использованием Scaleform GFx , технологии, которая визуализирует Flash-контент в видеоиграх, отличных от Flash. Scaleform поддерживается более чем 10 основными движками видеоигр, включая Unreal Engine и UDK , CryEngine и PhyreEngine , и использовался для предоставления 3D-интерфейсов для более чем 150 основных наименований видеоигр с момента его запуска в 2003 году .
Известные пользователи Flash включают DHX Media Vancouver для таких постановок, как Pound Puppies , Littlest Pet Shop и My Little Pony: Friendship Is Magic , Fresh TV для Total Drama , Nelvana для 6teen и Clone High , Williams Street для Metalocalypse и Squidbillies , Nickelodeon Animation Studio для Эль Тигре: Приключения Мэнни Риверы , Starz Media для Wow! Ух ты! Вуббзи! , среди других. [ нужна цитата ]
Предшественником Flash был SmartSketch, продукт, выпущенный FutureWave Software в 1993 году. Компанию основали Чарли Джексон , Джонатан Гэй и Мишель Уэлш. [32] [33] [34] [35] SmartSketch представлял собой приложение для векторного рисования для перьевых компьютеров под управлением ОС PenPoint . [36] [37] Когда PenPoint потерпел неудачу на рынке, SmartSketch был портирован на Microsoft Windows и Mac OS . [33] [38]
По мере того как Интернет становился все более популярным, компания FutureWave осознала потенциал инструмента векторной веб-анимации, который мог бы бросить вызов технологии Macromedia Shockwave . [32] [33] В 1995 году компания FutureWave модифицировала SmartSketch, добавив функции покадровой анимации, и выпустила этот новый продукт под названием FutureSplash Animator для Macintosh и ПК. [32] [33] [39] [40]
FutureWave обратилась к Adobe Systems с предложением продать им FutureSplash в 1995 году, но Adobe тогда отклонила это предложение. [33] [ не удалось проверить ] Microsoft хотела создать «сеть онлайн-телевидения» ( MSN 2.0 ) и приняла анимированный контент FutureSplash в качестве центральной ее части. [33] Disney Online использовала анимацию FutureSplash для своего сервиса Disney's Daily Blast, основанного на подписке. [32] [33] Телерадиокомпания Fox запустила «Симпсонов» с использованием FutureSplash. [33]
В ноябре 1996 года FutureSplash была приобретена Macromedia, а Macromedia провела ребрендинг и выпустила FutureSplash Animator как Macromedia Flash 1.0 . Flash представлял собой систему, состоящую из двух частей: редактора графики и анимации, известного как Macromedia Flash, и проигрывателя, известного как Macromedia Flash Player. [41]
FutureSplash Animator — инструмент анимации, изначально разработанный для перьевых компьютерных устройств. Из-за небольшого размера FutureSplash Viewer он особенно подходил для загрузки из Интернета. Macromedia распространяла Flash Player как бесплатный плагин для браузера , чтобы быстро завоевать долю рынка. К 2005 году на большем количестве компьютеров во всем мире был установлен Flash Player, чем любой другой формат веб-медиа, включая Java , QuickTime , RealNetworks и Windows Media Player . [42]
Macromedia обновила систему Flash в период с 1996 по 1999 год, добавив MovieClips, Actions (предшественник ActionScript), альфа-прозрачность и другие функции. По мере развития Flash фокус Macromedia сместился с маркетинга его как графического и медиа-инструмента к продвижению его как платформы веб-приложений , добавляя в проигрыватель возможности сценариев и доступа к данным, пытаясь сохранить при этом его небольшой размер. [ нужна цитата ]
В 2000 году была разработана первая основная версия ActionScript и выпущена вместе с Flash 5 . Actionscript 2.0 был выпущен вместе с Flash MX 2004 и поддерживал объектно-ориентированное программирование , улучшенные компоненты пользовательского интерфейса и другие функции программирования. Последней версией Flash, выпущенной Macromedia, была Flash 8 , в которой основное внимание уделялось графическим обновлениям, таким как фильтры (размытие, тень и т. д.), режимы наложения (аналогично Adobe Photoshop ) и расширенные функции для FLV-видео . [ нужна цитата ]
3 декабря 2005 года Adobe Systems приобрела Macromedia [55] вместе с ее линейкой продуктов, в которую входили Flash, Dreamweaver , Director / Shockwave , Fireworks и Authorware . [56]
В 2007 году первой версией Adobe стала Adobe Flash CS3 Professional , девятая основная версия Flash. Он представил язык программирования ActionScript 3.0, который поддерживал современные методы программирования и позволял разрабатывать бизнес-приложения с помощью Flash. Adobe Flex Builder (построенный на основе Eclipse ) был ориентирован на рынок разработки корпоративных приложений и также был выпущен в том же году. Flex Builder включал Flex SDK — набор компонентов, включающий диаграммы, расширенный пользовательский интерфейс и службы данных ( Flex Data Services ). [ нужна цитата ]
В 2008 году Adobe выпустила десятую версию Flash — Adobe Flash CS4 . В Flash 10 улучшены возможности анимации в редакторе Flash, добавлена панель редактора движения (аналогично Adobe After Effects ), инверсная кинематика (кости), базовая анимация 3D-объектов, анимация на основе объектов и другие функции текста и графики. Flash Player 10 включал встроенный 3D-движок (без ускорения графического процессора), который позволял выполнять основные преобразования объектов в трехмерном пространстве (положение, вращение, масштабирование). [ нужна цитата ]
Также в 2008 году Adobe выпустила первую версию Adobe Integrated Runtime (позже переименованную в Adobe AIR ), движка среды выполнения, который заменил Flash Player и предоставил дополнительные возможности языка ActionScript 3.0 для создания настольных и мобильных приложений. С помощью AIR разработчики впервые получили доступ к файловой системе (файлам и папкам пользователя) и подключенным устройствам, таким как джойстик, геймпад и датчики. [ нужна цитата ]
В 2011 году был выпущен Adobe Flash Player 11 , а вместе с ним и первая версия Stage3D , обеспечивающая 3D-рендеринг с ускорением графического процессора для Flash-приложений и игр на настольных платформах, таких как Microsoft Windows и Mac OS X. [57] Adobe продолжала улучшать возможности 3D с 2011 по 2013 год, добавляя поддержку 3D-рендеринга на платформах Android и iOS, альфа-каналы, сжатые текстуры, атласы текстур и другие функции. [58] [59] Adobe AIR был обновлен для поддержки 64-разрядных компьютеров и позволил разработчикам добавлять дополнительные функции в среду выполнения AIR с помощью AIR Native Extensions (ANE).
В мае 2014 года Adobe объявила, что Adobe AIR используется в более чем 100 000 уникальных приложениях и зарегистрировано более 1 миллиарда установок по всему миру. [60] Adobe AIR был признан лучшим продуктом для разработки мобильных приложений на выставке Consumer Electronics Show два года подряд (CES 2014 и CES 2015). [61] [62]
В 2016 году компания Adobe переименовала Flash Professional, основное программное обеспечение для создания Flash-контента, в Adobe Animate, чтобы отразить растущее использование технологии создания HTML5-контента в пользу Flash-контента. [63]
Adobe предприняла шаги по сокращению или устранению затрат на лицензирование Flash. Например, документация по формату файлов SWF предоставляется бесплатно [80] после того, как в 2008 году они смягчили требование принятия соглашения о неразглашении для ее просмотра. [81] Adobe также создала проект Open Screen, который устраняет лицензионные сборы и открывает протоколы данных для Flash.
Adobe также открыла исходный код многих компонентов, связанных с Flash.
Adobe не желает предоставлять полный исходный код Flash Player для бесплатной разработки программного обеспечения, и хотя были созданы бесплатные альтернативы с открытым исходным кодом , такие как Shumway и Gnash , они больше не находятся в активной разработке. [91]
1 мая 2008 года Adobe объявила о проекте Open Screen Project , целью которого является обеспечение единообразного интерфейса приложений на таких устройствах, как персональные компьютеры, мобильные устройства и бытовая электроника . [92] При анонсе проекта было намечено семь целей: отмена лицензионных сборов за Adobe Flash Player и Adobe AIR , снятие ограничений на использование форматов файлов Shockwave Flash ( SWF ) и Flash Video (FLV) , публикация интерфейсов прикладного программирования для переноса Flash на новые устройства, а также публикация протокола Flash Cast и формата сообщений действий (AMF), которые позволяют приложениям Flash получать информацию из удаленных баз данных. [92]
По состоянию на февраль 2009 года [update]были опубликованы спецификации, снимающие ограничения на использование спецификаций SWF и FLV/F4V. [93] Протокол Flash Cast, теперь известный как протокол доставки мобильного контента, и протоколы AMF также стали доступными, [93] причем AMF доступен в виде реализации с открытым исходным кодом, BlazeDS .
В список поставщиков мобильных устройств, присоединившихся к проекту, входят Palm , Motorola и Nokia, [94] которые вместе с Adobe объявили о создании фонда Open Screen Project стоимостью 10 миллионов долларов. [95]
Одним из основных применений Flash в Интернете, когда он был впервые выпущен, было создание полностью захватывающих интерактивных веб-сайтов. Обычно это были очень креативные проекты сайтов, которые обеспечивали большую гибкость по сравнению с тем, что могли обеспечить текущие стандарты HTML, а также работали через коммутируемые соединения. [96] Однако эти сайты ограничивали доступность, «нажимая кнопку «Назад », полностью лишая посетителей возможности использовать Flash, возвращая их на любую страницу, на которой они были до первого посещения сайта. Сайты, полностью работающие на Flash, потеряли популярность из-за более стратегического использования плагинов Flash для видео и других интерактивных функций среди стандартных соглашений HTML, что соответствует доступности функций HTML, таких как каскадные таблицы стилей, в середине 00-х годов. [97] В то же время это также привело к использованию Flash для новых приложений, включая видеоигры и анимацию. [98] Предшественники YouTube , но с созданными пользователями Flash-анимацией и играми, такими как Newgrounds , стали популярными направлениями, что еще больше способствовало распространению использования Flash. [96]
К концу тысячелетия был выпущен протокол беспроводных приложений (WAP), что соответствовало развитию динамического HTML . Пятнадцать лет спустя WAP был в значительной степени заменен полнофункциональными реализациями, а стандарт HTML5 включал большую поддержку интерактивных и видеоэлементов . Поддержка Flash в этих мобильных браузерах не была включена. В 2010 году Стив Джобс из Apple написал «Мысли о Flash» — открытое письмо Adobe, в котором критиковал закрытый характер платформы Flash и присущие приложению проблемы с безопасностью, чтобы объяснить, почему Flash не поддерживается в iOS . [99] [100] Adobe создала среду Adobe AIR как средство успокоить обеспокоенность Apple и потратила время на юридическую борьбу с Apple по поводу условий ее App Store, чтобы разрешить использование AIR на iOS. Хотя Adobe в конечном итоге победила, позволив другим сторонним средам разработки получить доступ к iOS, решение Apple заблокировать сам Flash считалось «смертельным ударом» для Flash-приложения. [98] В ноябре 2011 года, примерно через год после открытого письма Джобса, Adobe объявила, что больше не будет разрабатывать Flash, и посоветовала разработчикам перейти на HTML5. [101]
В 2011 году Adobe прекратила поддержку Flash на Android. [101] Adobe заявила, что платформа Flash переходит на Adobe AIR и OpenFL , многоцелевую реализацию Flash API с открытым исходным кодом. [102] В 2015 году Adobe переименовала Flash Professional, основную среду разработки Flash, в Adobe Animate, чтобы подчеркнуть расширенную поддержку разработки HTML5, и заявила, что «будет поощрять создателей контента создавать новые веб-стандарты», а не использовать Flash. [103]
В июле 2017 года Adobe прекратила поддержку Flash и объявила об окончании срока службы (EOL) в конце 2020 года, а также прекратит поддержку, распространение и обновления безопасности для Flash Player. [6]
После объявления об окончании срока службы Flash многие браузеры предприняли шаги по постепенному ограничению содержимого Flash (предупреждайте пользователей перед его запуском, что в конечном итоге блокирует весь контент без возможности его воспроизведения). К январю 2021 года все основные браузеры безоговорочно блокировали весь Flash-контент. Только IE11 , нишевые версии браузеров и некоторые браузеры, созданные для Китая , планируют продолжать поддерживать. Кроме того, за исключением китайского варианта Flash, программное обеспечение для выполнения Flash имеет встроенный переключатель отключения, который предотвращает воспроизведение Flash после 12 января 2021 года. [104] В январе 2021 года Microsoft выпустила дополнительное обновление KB4577586, которое удаляет Flash Player из Windows. ; в июле 2021 года это обновление было выпущено как обновление безопасности и автоматически применено ко всем остальным системам. [105]
Adobe Flash по-прежнему будет поддерживаться в Китае и во всем мире на некоторых специализированных корпоративных платформах после 2020 года. [5]
Еще в 2014 году, примерно в то же время, когда Adobe начала поощрять разработчиков Flash переводить свои работы на стандарты HTML5, другие начали предпринимать усилия по сохранению существующего Flash-контента посредством эмуляции Flash в открытых стандартах. Хотя некоторые Flash-приложения были утилитарными, некоторые из них оказались экспериментальным искусством, а другие заложили основу независимой разработки видеоигр . [106] Ранним проектом Mozilla был Shumway , проект с открытым исходным кодом, который пытался эмулировать стандарт Flash в HTML5, но проект был закрыт, поскольку команда обнаружила, что больше разработчиков переходят на HTML5, чем стремятся сохранить свой контент во Flash. , в сочетании с трудностями обеспечения полной совместимости. Google разработала приложение Swiffy , выпущенное в 2014 году, для преобразования Flash-приложений в HTML5-совместимые сценарии для просмотра на мобильных устройствах, но оно было закрыто в 2016 году. [106]
Ближе к дате окончания срока службы Flash в 2020 году были предприняты более целенаправленные усилия просто по сохранению существующих приложений Flash, включая веб-сайты, видеоигры и анимацию после окончания срока действия Flash. [98] [107] [108] В ноябре 2020 года Интернет -архив представил эмуляторы Flash Ruffle и Emularity для эмуляции Flash-игр и анимации без дыр в безопасности, открыв новую коллекцию для создателей и пользователей для сохранения и сохранения Flash-контента. [109] [110] К октябрю 2023 года в архиве Flashpoint было собрано более 160 000 Flash-приложений, за исключением тех, которые были коммерческими продуктами, и предлагались пользователям в качестве бесплатного архива для загрузки. [111] [112] Kongregate , один из крупнейших сайтов, предлагающих флеш-игры, сотрудничает с Strong Museum of Play, чтобы сохранить свои игры. [106]
Исходные файлы Flash имеют формат FLA и содержат графику и анимацию, а также встроенные ресурсы, такие как растровые изображения, аудиофайлы и видеофайлы FLV. Формат исходного файла Flash был собственным форматом, и Adobe Animate и Adobe Flash Pro были единственными доступными инструментами разработки, способными редактировать такие файлы. Исходные файлы Flash (.fla) можно скомпилировать в файлы Flash-роликов (.swf) с помощью Adobe Animate. Обратите внимание, что файлы FLA можно редактировать, а выходные файлы (.swf) — нет.
Файлы флэш-фильмов имели формат SWF , который традиционно назывался «ShockWave Flash-фильмы», «Flash-фильмы» или «Flash-приложения», обычно имеют расширение файла .swf и могут использоваться в виде подключаемого модуля веб-страницы. , строго «воспроизводимый» в автономном проигрывателе Flash Player или включенный в самоисполняющийся фильм Projector (с расширением .exe в Microsoft Windows ). Файлы Flash Video [спецификация 1] имеют расширение .flv и либо используются внутри файлов .swf, либо воспроизводятся через проигрыватель с поддержкой FLV, такой как VLC , или QuickTime и Windows Media Player с добавленными внешними кодеками .
Использование векторной графики в сочетании с программным кодом позволяет уменьшить размер Flash-файлов и, таким образом, позволяет потокам использовать меньшую пропускную способность , чем соответствующие растровые изображения или видеоклипы. Для контента в одном формате (например, просто текста, видео или аудио) другие альтернативы могут обеспечить более высокую производительность и потреблять меньше энергии ЦП , чем соответствующий Flash-фильм, например, при использовании прозрачности или больших обновлениях экрана, таких как фотографии или текст тускнеет.
В дополнение к механизму векторного рендеринга Flash Player включает в себя виртуальную машину под названием ActionScript Virtual Machine (AVM) для создания интерактивных сценариев во время выполнения с видео, звуком в формате MP3 и растровой графикой. Начиная с Flash Player 8, он предлагал два видеокодека: On2 Technologies VP6 и Sorenson Spark , а также динамические JPEG , Progressive JPEG, PNG , GIF и (DWG) файл чертежа AutoCAD (WMV) с возможностью метафайла Windows.
В Flash Player 11 представлен полноценный API 3D- шейдеров под названием Stage3D , который очень похож на WebGL . [113] [114] Stage3D обеспечивает рендеринг 3D-графики с ускорением на графическом процессоре в Flash-играх и приложениях и использовался для создания Angry Birds и нескольких других известных игр.
Для Flash с использованием Stage3D были созданы различные 3D-фреймворки, такие как Away3D 4, [114] CopperCube , [115] Flare3D , [116] и Starling . [117] Профессиональные игровые движки, такие как Unreal Engine [118] [119] и Unity, также экспортируют версии Flash, которые используют Stage3D для рендеринга 3D-графики.
Практически все плагины для просмотра видео в браузере бесплатны и кроссплатформенны, включая предложение Adobe Flash Video, которое было представлено в версии Flash 6. Flash Video был популярным выбором для веб-сайтов из-за большой установленной базы пользователей и возможности программирования Flash. . В 2010 году Apple публично раскритиковала Adobe Flash, в том числе реализацию воспроизведения видео, за то, что она не использовала преимущества аппаратного ускорения, что является одной из причин, по которой Flash не удалось найти на мобильных устройствах Apple. Вскоре после критики со стороны Apple Adobe продемонстрировала и выпустила бета-версию Flash 10.1, которая использовала доступное аппаратное ускорение графического процессора даже на Mac. Бета-версия Flash 10.2, выпущенная в декабре 2010 года, добавила аппаратное ускорение для всего конвейера рендеринга видео.
Flash Player поддерживает два различных режима воспроизведения видео, а декодирование видео с аппаратным ускорением не может использоваться для старого видеоконтента. Такой контент приводит к чрезмерной загрузке ЦП по сравнению с аналогичным контентом, воспроизводимым другими игроками.
В тестах, проведенных Ars Technica в 2008 и 2009 годах, Adobe Flash Player работал в Windows лучше , чем Mac OS X и Linux на том же оборудовании. [121] [122] Позже производительность последних двух улучшилась: в Mac OS X с Flash Player 10.1, [123] и в Linux с Flash Player 11. [124]
Flash Audio чаще всего кодируется в формате MP3 или AAC ( Advanced Audio Coding ); однако он также может использовать аудиокодеки ADPCM , Nellymoser ( кодек Nellymoser Asao ) и Speex . Flash поддерживает частоту дискретизации 11, 22 и 44,1 кГц. Он не может иметь частоту дискретизации звука 48 кГц, которая является стандартной частотой дискретизации для телевидения и DVD.
20 августа 2007 г. Adobe объявила в своем блоге, что с обновлением 3 Flash Player 9 Flash Video также будет реализовывать некоторые части международных стандартов MPEG-4 . [125] В частности, Flash Player будет работать с видео, сжатым в формате H.264 (MPEG-4, часть 10), со звуком, сжатым с использованием AAC (MPEG-4, часть 3), F4V, MP4 (MPEG-4, часть 14), M4V, Форматы мультимедийных контейнеров M4A, 3GP и MOV , спецификация синхронизированного текста 3GPP (MPEG-4, часть 17), которая представляет собой стандартизированный формат субтитров и возможность частичного анализа атома «ilst», который является эквивалентом ID3 , который iTunes использует для хранения метаданных . MPEG-4 Part 2 и H.263 не будут работать в формате файлов F4V. Adobe также объявила, что будет постепенно переходить от формата FLV к стандартному базовому формату медиафайлов ISO ( MPEG-4, часть 12 ) из-за функциональных ограничений структуры FLV при потоковой передаче H.264. Последняя версия Flash Player, реализующая некоторые части стандартов MPEG-4, стала доступна осенью 2007 года. [126]
Adobe Flash Player 10.1 не имеет акустического эхоподавления, в отличие от VoIP-предложений Skype и Google Voice, что делает эту и более ранние версии Flash менее подходящими для групповых звонков или собраний. Бета-версия Flash Player 10.3 включает акустическое эхоподавление.
Flash-программы используют язык программирования ActionScript . Это расширенная версия языка программирования ECMAScript с классической моделью классов в стиле Java , а не моделью прототипа JavaScript .
В октябре 1998 года Macromedia опубликовала на своем веб-сайте спецификацию Flash версии 3. Это было сделано в ответ на появление множества новых и часто полуоткрытых форматов, конкурирующих с SWF, таких как форматы Flare от Xara и форматы расширенной векторной анимации Sharp . Несколько разработчиков быстро создали библиотеку C для создания SWF. В феврале 1999 года была представлена MorphInk 99, первая сторонняя программа для создания SWF-файлов. Macromedia также наняла компанию Middlesoft для создания бесплатного набора разработчиков для файлов формата SWF версий с 3 по 5.
Macromedia предоставила спецификации Flash Files для версий 6 и более поздних версий только по соглашению о неразглашении , но они широко доступны на различных сайтах.
В апреле 2006 года была выпущена спецификация формата файлов Flash SWF с подробной информацией о новейшей на тот момент версии формата (Flash 8). Хотя в этой новой документации по-прежнему отсутствует конкретная информация о встроенных форматах сжатия видео (On2, Sorenson Spark и т. д.), она охватывает все новые функции, предлагаемые в Flash v8, включая новые команды ActionScript, средства управления выразительными фильтрами и т. д. Документ спецификации формата файла предлагается только разработчикам, которые согласны с лицензионным соглашением, которое позволяет им использовать спецификации только для разработки программ, которые могут экспортировать файлы в формат Flash. Лицензия не позволяет использовать спецификации для создания программ, которые можно использовать для воспроизведения Flash-файлов. Спецификация Flash 9 была доступна с аналогичными ограничениями. [127]
В июне 2009 года Adobe запустила проект Open Screen (ссылка Adobe), который сделал спецификацию SWF доступной без ограничений. Раньше разработчики не могли использовать эту спецификацию для создания SWF-совместимых проигрывателей, а только для создания авторского программного обеспечения, экспортирующего SWF. Однако в спецификации по-прежнему отсутствует информация о таких кодеках, как Sorenson Spark . [128]
Авторская программа Adobe Animate в основном используется для разработки графики и анимации и их публикации для веб-сайтов, веб-приложений и видеоигр. Программа также предлагает ограниченную поддержку встраивания аудио и видео и сценариев ActionScript.
Adobe выпустила Adobe LiveMotion , предназначенную для создания интерактивного анимационного контента и экспорта его в различные форматы, включая SWF. LiveMotion не удалось собрать сколько-нибудь заметной пользовательской базы. [ указать ]
В феврале 2003 года Macromedia приобрела компанию Presedia, которая разработала инструмент разработки Flash, который автоматически конвертировал файлы PowerPoint во Flash. Впоследствии Macromedia выпустила новый продукт под названием Breeze, который включал множество новых усовершенствований.
Различные бесплатные и коммерческие пакеты программного обеспечения могут выводить анимацию в формат Flash SWF, включая:
Проект Flash 4 Linux представлял собой инициативу по разработке приложения Linux с открытым исходным кодом в качестве альтернативы Adobe Animate. В планы разработки входили возможности создания 2D-анимации и анимации , а также вывода файлов в форматах SWF. F4L превратился в редактор, способный создавать 2D-анимацию и публиковать SWF-файлы. Flash 4 Linux был переименован в UIRA. UIRA намеревалась объединить ресурсы и знания проектов F4L и Qflash, оба из которых представляли собой приложения с открытым исходным кодом, призванные предоставить альтернативу проприетарному Adobe Flash.
Adobe предоставляет ряд инструментов для разработки программных приложений и видеоигр для Flash:
Сторонние инструменты разработки были созданы, чтобы помочь разработчикам создавать программные приложения и видеоигры с использованием Flash.
Adobe Flash Player — проигрыватель мультимедиа и приложений, первоначально разработанный Macromedia и приобретенный Adobe Systems. Он воспроизводит SWF- файлы, которые могут быть созданы с помощью Adobe Animate, Apache Flex или ряда других систем Adobe и сторонних инструментов. Он поддерживает язык сценариев ActionScript, который можно использовать для отображения Flash-видео из SWF-файла.
Scaleform GFx — это коммерческий альтернативный проигрыватель Flash, обеспечивающий полностью аппаратно-ускоренный рендеринг 2D-графики с использованием графического процессора . Scaleform имеет высокую совместимость как с Flash 10 ActionScript 3 [129] , так и с Flash 8 ActionScript 2. Scaleform GFx — это промежуточное программное обеспечение для разработки игр, которое помогает создавать графические пользовательские интерфейсы или HUD в 3D-видеоиграх. Он не работает с веб-браузерами.
IrfanView , программа просмотра изображений, использует Flash Player для отображения SWF-файлов.
OpenFL , кроссплатформенная реализация Adobe Flash API с открытым исходным кодом, [102] поддерживает импорт SWF-ресурсов. [130]
Lightspark — это бесплатный SWF-проигрыватель с открытым исходным кодом, который поддерживает большую часть ActionScript 3.0 и имеет плагин , совместимый с Mozilla . [131] Он будет использовать Gnash, бесплатный SWF-плеер, поддерживающий код ActionScript 1.0 и 2.0 (AVM1). Lightspark поддерживает рендеринг 3D-контента на основе OpenGL . Плеер также совместим с видео H.264 Flash на YouTube .
Целью Gnash было создание программного проигрывателя и замены плагина браузера для Adobe Flash Player. Gnash может воспроизводить SWF- файлы до версии 7 и 80% ActionScript 2.0. [132] Gnash работает на Windows, Linux и других платформах для 32-битных, 64-битных и других операционных систем, но в последние годы развитие значительно замедлилось.
Shumway — это Flash Player с открытым исходным кодом, выпущенный Mozilla в ноябре 2012 года. Он был построен на JavaScript и, следовательно, совместим с современными веб-браузерами. [133] [134] [135] В начале октября 2013 года Shumway был по умолчанию включен в ночную ветку Firefox. [136] Shumway визуализировал Flash-содержимое путем перевода содержимого Flash-файлов в элементы HTML5 и запуска интерпретатора ActionScript в JavaScript . [137] Он поддерживал как AVM1, так и AVM2, а также версии ActionScript 1, 2 и 3. [138] Разработка Shumway прекратилась в начале 2016 года. [139]
В том же году, когда от Shumway отказались, началась работа над Ruffle — флэш-эмулятором, написанным на Rust . Он также работает в веб-браузерах путем компиляции в WebAssembly и использования HTML5 Canvas . [140] В 2020 году Интернет-архив добавил поддержку эмуляции SWF, добавив Ruffle в свою схему эмуляции. [141] По состоянию на март 2023 года Ruffle заявляет, что поддерживает 95% языка AS1/2 и 73% API-интерфейсов AS1/2, но неправильно запускает большинство приложений AS3 (AVM2). [142]
Adobe Flash Player в настоящее время поддерживается только версиями Enterprise [1] [2] [4] и China [5] , во всех остальных случаях он устарел. [6]
Adobe Flash Player доступен в четырех вариантах:
Версия ActiveX представляет собой элемент управления ActiveX для использования в Internet Explorer и любых других приложениях Windows, поддерживающих технологию ActiveX. Версии подключаемых модулей доступны для браузеров, поддерживающих подключаемые модули NPAPI или PPAPI в Microsoft Windows , macOS и Linux . Версия для проектора представляет собой автономный проигрыватель, который может напрямую открывать SWF- файлы. [143]
Adobe AIR использует некоторый код совместно с Adobe Flash Player и, по сути, встраивает его.
Adobe Flash Player ранее был доступен для различных мобильных операционных систем, включая Android (между версиями 2.2 ) [144] и 4.0.4 [145] ., Pocket PC / Windows CE , QNX (например, на BlackBerry PlayBook ), Symbian , Palm OS и webOS (начиная с версии 2.0 [146] ). Flash Player для смартфонов изначально был доступен производителям мобильных телефонов в конце 2009 года. [147] В ноябре 2011 года Adobe объявила о прекращении поддержки Flash Player на мобильных устройствах. [148]
В 2011 году Adobe подтвердила свое обязательство «активно вносить вклад» в HTML5. [149] [150] Adobe объявила о прекращении использования Flash для мобильных платформ и телевидения, вместо этого сосредоточившись на HTML5 для контента браузера и Adobe AIR для различных магазинов мобильных приложений [151] [152] [153] [154] и описала это как "начало конца". [155] Компания BlackBerry LTD (ранее известная как RIM) объявила, что продолжит разработку Flash Player для PlayBook. [156]
Для устройств iOS ( iPhone , iPad и iPod Touch ) Adobe Flash Player отсутствует . Однако Flash-контент можно запустить на устройствах iOS различными способами:
Мобильная версия Internet Explorer для Windows Phone не может воспроизводить Flash-контент; [161] однако поддержка Flash по-прежнему присутствует в версии Windows для планшетов . [162]
AIR — кроссплатформенная среда выполнения для разработки приложений для мобильных устройств под управлением Android ( ARM Cortex-A8 и выше) [163] и Apple iOS . [164]
Adobe Flash Lite — это облегченная версия Adobe Flash Player, предназначенная для мобильных телефонов [165] [ источник самостоятельной публикации? ] и другие портативные электронные устройства, такие как Chumby и iRiver .
Список альтернативных игроков, не связанных с Интернетом, см. в § Открытый исходный код.
OpenFL — это программная платформа с открытым исходным кодом, отражающая Adobe Flash API. Он позволяет разработчикам создавать одно приложение на основе API OpenFL и одновременно использовать несколько платформ, включая iOS, Android, HTML5 (на выбор Canvas, WebGL, SVG или DOM), Windows, macOS, Linux, WebAssembly, Flash, AIR, PlayStation 4. , PlayStation 3, PlayStation Vita, Xbox One, Wii U, TiVo, Raspberry Pi и Node.js. [166] OpenFL отражает Flash API для графических операций. Приложения OpenFL могут быть написаны на Haxe , JavaScript (EcmaScript 5 или 6+) или TypeScript. [167]
С помощью OpenFL было разработано более 500 видеоигр, [168] включая отмеченную наградой BAFTA игру Papers, Please , Rymdkapsel , Lightbot и Madden NFL Mobile .
HTML5 часто называют альтернативой использованию технологии Adobe Flash на веб-страницах. Adobe выпустила инструмент, конвертирующий Flash в HTML5, [169] , а в июне 2011 года Google выпустила экспериментальный инструмент, который делает то же самое. [170] [171] В январе 2015 года YouTube по умолчанию использовал проигрыватели HTML5, чтобы лучше поддерживать больше устройств. [172]
Следующие инструменты позволяют конвертировать Flash-контент в HTML5:
Следующие инструменты запускают Flash-содержимое в браузере с поддержкой HTML5, но не преобразуют его в веб-страницу HTML5:
Веб-сайты, созданные с помощью Adobe Flash, не будут работать на большинстве современных мобильных устройств под управлением Google Android или iOS ( iPhone , iPad ). Единственная альтернатива — использование HTML5 и адаптивного веб-дизайна для создания веб-сайтов, поддерживающих как настольные, так и мобильные устройства.
Однако Flash по-прежнему используется для создания мобильных игр с использованием Adobe AIR. Такие игры не будут работать в мобильных веб-браузерах, их необходимо устанавливать через соответствующий магазин приложений .
Зависимость от Adobe для декодирования Flash делает его использование во Всемирной паутине проблематичным: полнота его общедоступных спецификаций обсуждается, а полная реализация Flash не является общедоступной в виде исходного кода с лицензией, допускающей повторное использование. Как правило, общедоступные спецификации — это то, что делает формат повторно реализуемым (см. хранилище данных для будущих проверок ), а повторно используемые кодовые базы можно переносить на новые платформы без одобрения создателя формата.
Ограничения Adobe на использование спецификаций SWF/FLV были сняты в феврале 2009 года (см. проект Adobe Open Screen). Однако, несмотря на усилия таких проектов, как Gnash, Swfdec и Lightspark , по состоянию на сентябрь 2011 года полностью бесплатный Flash-плеер еще не появился. Например, Gnash пока не может использовать SWF v10. [180] Примечательно, что Gnash числился в списке высокого приоритета Фонда свободного программного обеспечения , по крайней мере, с 2007 года до его удаления в январе 2017 года. [181]
Известные сторонники бесплатного программного обеспечения, открытых стандартов и Всемирной паутины предостерегают от использования Flash:
Основатель Mozilla Europe Тристан Нито заявил в 2008 году: [182]
Компании, создающие веб-сайты, должны остерегаться запатентованных мультимедийных технологий, таких как Adobe Flash и Microsoft Silverlight. (...) Вы создаете контент для своих пользователей, и кто-то посередине решает, должны ли пользователи видеть ваш контент.
Представитель открытых стандартов, изобретатель CSS и соавтор HTML5, Хокон Виум Ли объяснил в технологическом докладе Google в 2007 году под названием «Элемент <video>» предложение Theora в качестве формата для видео HTML5 : [183]
Я твердо убежден, что нам необходимо договориться о каком-то базовом формате видео, если [элемент видео] будет успешным. Сегодня Flash является основным форматом в Интернете. Проблема Flash в том, что это не открытый стандарт.
Представляя движение за свободное программное обеспечение , Ричард Столлман заявил в своей речи в 2004 году, что: [184] «Использование Flash на веб-сайтах является серьезной проблемой для нашего сообщества».
Консультант по юзабилити Якоб Нильсен в 2000 году опубликовал предупреждение под названием « Flash: 99% Bad» , в котором заявил, что «Flash имеет тенденцию ухудшать качество веб-сайтов по трем причинам: он поощряет злоупотребления дизайном, нарушает фундаментальные принципы взаимодействия в Интернете и отвлекает внимание от сайта. основная ценность». [185] Некоторые проблемы были, по крайней мере частично, исправлены после жалоб Нильсена: размер текста можно контролировать с помощью масштабирования всей страницы, а начиная с Flash Player 6 авторы получили возможность включать альтернативный текст во Flash.
Flash-контент обычно встраивается с помощью элемента HTMLobject
или . [186] Веб-браузер, который не полностью реализует один из этих элементов, отображает заменяющий текст, если он предоставлен веб-страницей. Часто для полной реализации этих элементов браузеру требуется плагин, хотя некоторые пользователи не могут или не хотят его устанавливать.embed
Поскольку Flash можно использовать для создания контента (например, рекламных объявлений), который некоторые пользователи находят неприятным или для загрузки которого требуется много трафика, некоторые веб-браузеры по умолчанию не воспроизводят Flash-контент, пока пользователь не нажмет на него, например Konqueror . К-Мелеон .
Большинство современных браузеров имеют функцию блокировки плагинов, запуская их только тогда, когда пользователь нажимает на них. Версии Opera, начиная с 10.5, имеют встроенную блокировку Flash. Opera Turbo требует, чтобы пользователь щелкнул мышью, чтобы воспроизвести Flash-контент, а браузер также позволяет пользователю включить эту опцию навсегда. И в Chrome [187] , и в Firefox [188] есть возможность включить «кликабельное воспроизведение плагинов». Эквивалентные расширения «блокировщика Flash» также доступны для многих популярных браузеров: у Firefox есть Flashblock и NoScript , у Internet Explorer есть Foxie, который содержит ряд функций, одна из которых называется Flashblock. Браузеры на базе WebKit под macOS, такие как Safari от Apple, имеют ClickToFlash. [189] В июне 2015 года Google объявил, что Chrome по умолчанию будет «приостанавливать» рекламу и «нецентральный» Flash-контент. [190]
Firefox (начиная с версии 46) переписывает старый код встраивания YouTube только для Flash в современный встроенный проигрыватель YouTube, который способен использовать HTML5 или Flash. [191] Такой код внедрения используется сайтами, не принадлежащими YouTube, для встраивания видео YouTube, и его до сих пор можно встретить, например, в старых блогах и форумах.
Однако есть способы обойти эту ошибку при отсутствии флеш-плеера, удалив код проверки в HTML. Это также зависит от зрения браузера.
В течение многих лет показатели безопасности Adobe Flash Player [192] побуждали многих экспертов по безопасности рекомендовать не устанавливать проигрыватель или блокировать Flash-контент. [193] [194] CERT США рекомендовал блокировать Flash, [195] а исследователь безопасности Чарли Миллер рекомендовал «не устанавливать Flash»; [196] однако тем, кто все еще использует Flash, Intego рекомендовала получать доверенные обновления «только непосредственно от поставщика, который их публикует». [197] Adobe Flash Player содержит более 1078 записей CVE , [198] из которых более 842 приводят к выполнению произвольного кода , а прошлые уязвимости позволяли шпионить через веб-камеры. [199] [200] [201] [202] Эксперты по безопасности уже давно предсказывают упадок Flash, заявляя, что с появлением HTML5 «...потребность в плагинах для браузера, таких как Flash, уменьшается». [203]
Активные действия третьих лиц по ограничению риска начались с того, что Стив Джобс в 2010 году заявил, что Apple не будет использовать Flash на iPhone , iPod Touch и iPad , сославшись на ужасную безопасность в качестве одной из причин. [204] Flash часто использовал возможность динамического изменения частей среды выполнения на языках OSX для повышения собственной производительности, но это приводило к общей нестабильности. В июле 2015 года серия недавно обнаруженных уязвимостей привела к тому, что директор по безопасности Facebook Алекс Стамос обратился к Adobe с призывом полностью прекратить использование программного обеспечения [205] и внести в черный список веб-браузер Mozilla Firefox , Google Chrome и Apple Safari . все предыдущие версии Flash Player. [206] [207] [208]
Как и файл cookie HTTP , флэш-файл cookie (также известный как « локальный общий объект ») может использоваться для сохранения данных приложения. Flash-cookie не распространяются между доменами . Исследование, проведенное в августе 2009 года Ашканом Солтани и группой исследователей из Калифорнийского университета в Беркли, показало, что 50% веб-сайтов, использующих Flash, также используют флэш-куки, однако политики конфиденциальности редко раскрывают их, а пользовательские средства контроля предпочтений конфиденциальности отсутствовали. [209] Функции подавления или удаления кеша и истории большинства браузеров не влияли на запись локальных общих объектов Flash Player в собственный кеш в версии 10.2 и более ранних версиях, после чего сообщество пользователей было гораздо меньше осведомлено о существовании и функциях Flash cookie. чем файлы cookie HTTP. [210] Таким образом, пользователи этих версий, удалив файлы cookie HTTP и очистив файлы и кэши истории браузера, могут полагать, что они удалили все данные отслеживания со своих компьютеров, хотя на самом деле история посещений Flash остается. Собственная панель Adobe Flash Website Storage Settings, подменю веб-приложения Adobe Flash Settings Manager, а также другие редакторы и наборы инструментов позволяют управлять настройками и удалять локальные общие объекты Flash. [211]
Начиная с сегодняшнего дня, не будет никаких ограничений на использование спецификации SWF или спецификаций FLV и F4V, составляющих видео во Flash.
Раньше, чтобы ознакомиться со спецификацией SWF, пользователям приходилось подписывать лицензионное соглашение, чтобы не использовать его для создания конкурирующих игроков.
Мы больше не будем разрабатывать Flash Player в браузере для работы с новыми конфигурациями мобильных устройств (чипсет, браузер, версия ОС и т. д.) после предстоящего выпуска Flash Player 11.1 для Android и BlackBerry PlayBook.
{{cite web}}
: CS1 maint: bot: original URL status unknown (link){{cite web}}
: CS1 maint: archived copy as title (link)Я рекомендую вам полностью отключить надстройку Shockwave Flash в IE.
Всего 291 уязвимостей