Adobe Flash (anteriormente Macromedia Flash y FutureSplash) fue una plataforma de software multimedia utilizada para la producción de animaciones, aplicaciones web enriquecidas, aplicaciones de escritorio, aplicaciones móviles, juegos móviles y reproductores de video de navegador web integrados. Flash muestra texto, gráficos vectoriales y gráficos de trama para proporcionar animaciones, videojuegos y aplicaciones. Permite la transmisión de audio y video, y puede capturar la entrada del mouse, teclado, micrófono y cámara.
Adobe Flash | ||
---|---|---|
Información general | ||
Tipo de programa | Plataforma | |
Desarrollador |
| |
Modelo de desarrollo | Software propietario | |
Licencia | Freeware | |
Estado actual | Activo solo para usuarios empresariales y todos los usuarios en China, descontinuado en cualquier otro lugar, es decir, fuera de China | |
Información técnica | ||
Programado en | ActionScript | |
Plataformas admitidas | Navegadores web, iOS (a través de software de terceros), Android, Windows, macOS, Linux | |
Lanzamientos | ||
Adobe Flash | Adobe Animate | |
Archivos legibles | ||
| ||
Archivos editables | ||
FLA | ||
Enlaces | ||
Sitio web oficial
| ||
Los artistas pueden producir gráficos y animaciones Flash utilizando Adobe Animate (anteriormente conocido como Adobe Flash Professional). Los desarrolladores de software pueden producir aplicaciones y videojuegos utilizando Adobe Flash Builder, FlashDevelop, Flash Catalyst o cualquier editor de texto combinado con Apache Flex SDK. Los usuarios finales ven contenido Flash a través de Flash Player (para navegadores web), Adobe AIR (para aplicaciones móviles o de escritorio) o reproductores de terceros como Scaleform (para videojuegos). Adobe Flash Player (que está disponible en Microsoft Windows, macOS y Linux) permite a los usuarios finales ver contenido Flash mediante navegadores web. Adobe Flash Lite permitía ver contenido Flash en teléfonos inteligentes más antiguos, pero desde entonces fue descontinuado y reemplazado por Adobe AIR.
El lenguaje de programación ActionScript permite el desarrollo de animaciones interactivas, videojuegos, aplicaciones web, aplicaciones de escritorio y aplicaciones móviles. Los programadores pueden implementar software Flash utilizando un IDE como Adobe Animate, Adobe Flash Builder, Adobe Director, FlashDevelop y Powerflasher FDT. Adobe AIR permite desarrollar aplicaciones móviles y de escritorio con todas las funciones con Flash y publicarlas para Windows, macOS, Android, iOS, Xbox One, PlayStation 4, Wii U y Nintendo Switch.
Flash se utilizó inicialmente para crear sitios web totalmente interactivos, pero este enfoque se eliminó con la introducción de HTML5. En cambio, Flash encontró un nicho como la plataforma dominante para el contenido multimedia en línea, particularmente para los juegos de navegador. Después de una carta abierta escrita por Steve Jobs en 2010 que decía que no aprobaría el uso de Flash en los dispositivos iOS de Apple debido a numerosas fallas de seguridad, el uso de Flash disminuyó cuando Adobe hizo la transición a la plataforma Adobe Air. Flash Player quedó obsoleto en 2017 y oficialmente descontinuado a fines de 2020 para todos los usuarios fuera de China, así como para usuarios no empresariales,[5] con muchos navegadores web y sistemas operativos programados para eliminar el software Flash Player casi al mismo tiempo. Adobe continúa desarrollando Adobe Animate, que admite estándares web como HTML5 en lugar del formato Flash.[6]
A principios de la década de 2000, Flash se instaló ampliamente en las computadoras de escritorio y, a menudo, se usaba para mostrar páginas web interactivas y juegos en línea, y para reproducir contenido de video y audio.[7] En 2005, YouTube fue fundado por ex empleados de PayPal y utilizó Adobe Flash Player como un medio para mostrar contenido de video comprimido en la web.[7]
Entre 2000 y 2010, numerosas empresas utilizaron sitios web basados en Flash para lanzar nuevos productos o crear portales empresariales interactivos.[8] Los usuarios notables incluyen Nike, Hewlett-Packard (más conocido como HP), Nokia, General Electric, World Wildlife Fund, HBO, Cartoon Network, Disney y Motorola.[8] Después de que Adobe introdujera 3D acelerado por hardware para Flash (Stage3D), los sitios web de Flash experimentaron un crecimiento del contenido 3D para demostraciones de productos y recorridos virtuales.[9][10]
En 2007, YouTube ofreció videos en formato HTML5 para iPhone y iPad, que no admitían Flash Player.[7] Tras una polémica con Apple, Adobe dejó de desarrollar Flash Player para móviles, centrando sus esfuerzos en las aplicaciones de Adobe AIR y la animación HTML5.[7] En 2015, Google presentó Google Swiffy, una herramienta que convertía la animación Flash a HTML5, que Google usaba para convertir automáticamente los anuncios web Flash para dispositivos móviles.[11] En 2016, Google suspendió Swiffy y su soporte.[12] En 2015, YouTube cambió a la tecnología HTML5 en la mayoría de los dispositivos de forma predeterminada;[13][14][15] Sin embargo, YouTube admitió el reproductor de video basado en Flash para navegadores web y dispositivos más antiguos hasta 2017.[16]
Después de que Flash 5 introdujera ActionScript en 2000, los desarrolladores combinaron las capacidades visuales y de programación de Flash para producir experiencias y aplicaciones interactivas para la Web.[17] Estas aplicaciones basadas en la web finalmente se conocieron como "Rich Internet Applications"[17] y más tarde "Rich Web Applications".
En 2004, se lanzó Macromedia Flex y se dirigió específicamente al mercado de desarrollo de aplicaciones.[17] Flex introdujo nuevos componentes de interfaz de usuario, componentes avanzados de visualización de datos, comunicación remota de datos y un IDE (Flash Builder) moderno.[17][18] Flex compitió con Asynchronous JavaScript and XML (AJAX) y Microsoft Silverlight durante su mandato.[17] Flex se actualizó para admitir la integración con fuentes de datos remotas, utilizando AMF, BlazeDS, Adobe LiveCycle, Amazon Elastic Compute Cloud y otros.[19]
Entre 2006 y 2016, el servicio web Speedtest.net realizó más de 9,000 millones de pruebas de velocidad con una utilidad creada con Adobe Flash.[20][21] En 2016, el servicio cambió a HTML5 debido a la disminución de la disponibilidad de Adobe Flash Player en las PC.[22]
Los desarrolladores podrían crear aplicaciones web Flash y aplicaciones web enriquecidas en el lenguaje de programación ActionScript 3.0 con IDE, incluidos Adobe Flash Builder, FlashDevelop y Powerflasher FDT. Las aplicaciones Flex generalmente se construyeron utilizando marcos Flex como PureMVC.[19]
Los videojuegos Flash eran populares en Internet, con portales como Newgrounds, Kongregate y Armor Games dedicados a alojar juegos basados en Flash. Muchos juegos Flash fueron desarrollados por individuos o grupos de amigos debido a la simplicidad del software. Los juegos Flash populares incluyen Farmville, Alien Hominid, QWOP y Club Penguin.[23][24]
Adobe introdujo varias tecnologías para ayudar a crear videojuegos, incluido Adobe AIR (para lanzar juegos para plataformas móviles o de escritorio), Adobe Scout (para mejorar el rendimiento), CrossBridge (para convertir juegos basados en C++ para que se ejecuten en Flash) y Stage3D (para admitir videojuegos acelerados por GPU). Marcos 3D como Away3D y Flare3D simplificaron la creación de contenido 3D para Flash.
Adobe AIR permite la creación de juegos móviles basados en Flash, que pueden publicarse en las tiendas de aplicaciones Google Play y Apple.[25][26][27]
Flash también se utiliza para crear interfaces y HUD para videojuegos en 3D mediante Scaleform GFx, una tecnología que reproduce contenido Flash en videojuegos que no son Flash. Scaleform es compatible con más de 10 motores de videojuegos importantes, incluidos Unreal Engine y UDK, CryEngine y PhyreEngine, y se ha utilizado para proporcionar interfaces 3D para más de 150 títulos de videojuegos importantes desde su lanzamiento en 2003.
Los usuarios notables de Flash incluyen DHX Media Vancouver para producciones que incluyen Pound Puppies, Littlest Pet Shop y My Little Pony: Friendship Is Magic, Fresh TV para Total Drama, Nelvana para 6teen y Clone High, Williams Street para Metalocalypse y Squidbillies, Nickelodeon Animation Studio para El Tigre: Las aventuras de Manny Rivera, Starz Media para Wow! Wow! Wubbzy!, Anima Estudios para El Chavo Animado entre otros.
El precursor de Flash fue SmartSketch, un producto publicado por FutureWave Software en 1993. La compañía fue fundada por Charlie Jackson, Jonathan Gay y Michelle Welsh.[28][29][30][31] SmartSketch era una aplicación de dibujo vectorial para computadoras de pluma que ejecutaban el sistema operativo PenPoint.[32][33] Cuando PenPoint fracasó en el mercado, SmartSketch fue portado a Microsoft Windows y Mac OS.[29]
A medida que Internet se hizo más popular, FutureWave se dio cuenta del potencial de una herramienta de animación web basada en vectores que podría desafiar la tecnología de Macromedia Shockwave.[28][29] En 1995, FutureWave modificó SmartSketch agregando funciones de animación cuadro por cuadro y lanzó este nuevo producto como FutureSplash Animator en Macintosh y PC.[28][29][34]
FutureWave se acercó a Adobe Systems con una oferta para venderles FutureSplash en 1995, pero Adobe rechazó la oferta en ese momento.[29] Microsoft quería crear una "red de televisión en línea" (MSN 2.0) y adoptó el contenido animado FutureSplash como parte central de la misma.[29] Disney Online usó animaciones FutureSplash para su servicio basado en suscripción Disney's Daily Blast.[28][29] Fox Broadcasting Company lanzó Los Simpson usando FutureSplash.[29]
En noviembre de 1996, Macromedia adquirió FutureSplash, y Macromedia renombró y lanzó FutureSplash Animator como Macromedia Flash 1.0. Flash era un sistema de dos partes, un editor de gráficos y animación conocido como Macromedia Flash y un reproductor conocido como Macromedia Flash Player.
FutureSplash Animator fue una herramienta de animación desarrollada originalmente para dispositivos informáticos basados en bolígrafos. Debido al pequeño tamaño de FutureSplash Viewer, era especialmente adecuado para su descarga en la Web. Macromedia distribuyó Flash Player como complemento de navegador gratuito para ganar cuota de mercado rápidamente. Para 2005, más computadoras en todo el mundo tenían instalado Flash Player que cualquier otro formato de medios web, incluidos Java, QuickTime, RealNetworks y Windows Media Player.[35]
Macromedia actualizó el sistema Flash entre 1996 y 1999 agregando MovieClips, Actions (el precursor de ActionScript), transparencia Alpha y otras características. A medida que Flash maduraba, el enfoque de Macromedia pasó de comercializarlo como una herramienta gráfica y de medios a promocionarlo como una plataforma de aplicaciones web, agregando capacidades de secuencias de comandos y acceso a datos al reproductor mientras intentaba conservar su pequeña huella.
En 2000, se desarrolló la primera versión principal de ActionScript y se lanzó con Flash 5. Actionscript 2.0 se lanzó con Flash MX 2004 y admitía programación orientada a objetos, componentes de interfaz de usuario mejorados y otras características de programación. La última versión de Flash lanzada por Macromedia fue Flash 8, que se centró en actualizaciones gráficas como filtros (desenfoque, sombra paralela, etc.), modos de fusión (similar a Adobe Photoshop) y funciones avanzadas para video FLV.
El 3 de diciembre de 2005, Adobe Systems adquirió Macromedia[36] junto con toda la línea de productos de Macromedia, incluidos Flash, Dreamweaver, Director/Shockwave, Fireworks y Authorware.
En 2007, el lanzamiento de la primera versión de Adobe fue Adobe Flash CS3 Professional, la novena versión principal de Flash. Introdujo el lenguaje de programación ActionScript 3.0, que admitía prácticas de programación modernas y permitía desarrollar aplicaciones comerciales con Flash. Adobe Flex Builder (basado en Eclipse) se dirigió al mercado de desarrollo de aplicaciones empresariales y también se lanzó el mismo año. Flex Builder incluía Flex SDK, un conjunto de componentes que incluía gráficos, interfaz de usuario avanzada y servicios de datos (Flex Data Services).
En 2008, Adobe lanzó la décima versión de Flash, Adobe Flash CS4. Flash 10 mejoró las capacidades de animación dentro del editor Flash, agregando un panel de editor de movimiento (similar a Adobe After Effects), cinemática inversa (huesos), animación básica de objetos 3D, animación basada en objetos y otras funciones de texto y gráficos. Flash Player 10 incluía un motor 3D incorporado (sin aceleración de GPU) que permitía transformaciones básicas de objetos en el espacio 3D (posición, rotación, escala).
También en 2008, Adobe lanzó la primera versión de Adobe Integrated Runtime (más tarde rebautizado como Adobe AIR), un motor de tiempo de ejecución que reemplazó a Flash Player y proporcionó capacidades adicionales al lenguaje ActionScript 3.0 para crear aplicaciones móviles y de escritorio. Con AIR, los desarrolladores podían acceder por primera vez al sistema de archivos (los archivos y carpetas del usuario) y dispositivos conectados como un joystick, gamepad y sensores.
En 2011, se lanzó Adobe Flash Player 11 y, con él, la primera versión de Stage3D, que permitía el renderizado 3D acelerado por GPU para aplicaciones y juegos Flash en plataformas de escritorio como Microsoft Windows y Mac OS X.[37] Adobe mejoró aún más las capacidades 3D de 2011 a 2013, agregando soporte para renderizado 3D en plataformas Android e iOS, canales alfa, texturas comprimidas, atlas de texturas y otras funciones.[38] Adobe AIR se actualizó para admitir computadoras de 64 bits y permitir a los desarrolladores agregar funciones adicionales al tiempo de ejecución de AIR mediante AIR Native Extensions (ANE).
En mayo de 2014, Adobe anunció que Adobe AIR se usaba en más de 100000 aplicaciones únicas y tenía más de 1000 millones de instalaciones registradas en todo el mundo.[39] Adobe AIR fue votado como el mejor producto de desarrollo de aplicaciones móviles en Consumer Electronics Show durante dos años consecutivos (CES 2014 y CES 2015).[40][41]
En 2016, Adobe cambió el nombre de Flash Professional, el principal software de creación de contenido Flash, a Adobe Animate para reflejar su creciente uso para la creación de contenido HTML5 a favor del contenido Flash.
Adobe ha tomado medidas para reducir o eliminar los costos de licencias de Flash. Por ejemplo, la documentación en formato de archivo SWF se proporciona de forma gratuita después de que relajaran el requisito de aceptar un acuerdo de confidencialidad para verla en 2008.[42] Adobe también creó el Proyecto de pantalla abierta que elimina las tarifas de licencia y abre los protocolos de datos para Flash.
Adobe también ha abierto muchos componentes relacionados con Flash.
Adobe no ha estado dispuesto a poner a disposición el código fuente completo de Flash Player para el desarrollo de software gratuito y, aunque se han creado alternativas gratuitas y de código abierto como Shumway y Gnash, ya no están en desarrollo activo.[48]
El 1 de mayo de 2008, Adobe anunció el Open Screen Project, con la intención de proporcionar una interfaz de aplicación uniforme en todos los dispositivos, como computadoras personales, dispositivos móviles y productos electrónicos de consumo.[49] Cuando se anunció el proyecto, se delinearon siete objetivos: la abolición de las tarifas de licencia para Adobe Flash Player y Adobe AIR, la eliminación de las restricciones en el uso de los formatos de archivo Shockwave Flash (SWF) y Flash Video (FLV), la publicación de interfaces de programación de aplicaciones para portar Flash a nuevos dispositivos, y la publicación del protocolo The Flash Cast y Action Message Format (AMF), que permite que las aplicaciones Flash reciban información de bases de datos remotas.[49]
En febrero de 2009, se publicaron las especificaciones que eliminan las restricciones sobre el uso de SWF y las especificaciones FLV/F4V.[50] El protocolo Flash Cast, ahora conocido como Protocolo de entrega de contenido móvil, y los protocolos AMF también están disponibles,[50] con AMF disponible como una implementación de código abierto, BlazeDS.
La lista de proveedores de dispositivos móviles que se han sumado al proyecto incluye a Palm, Motorola y Nokia,[51] quienes, junto con Adobe, han anunciado un fondo para el Open Screen Project de $10 millones.[52]
Uno de los usos principales de Flash en Internet cuando se lanzó por primera vez fue para crear sitios web interactivos totalmente inmersivos. Por lo general, estos eran diseños de sitios altamente creativos que brindaban más flexibilidad sobre lo que los estándares HTML actuales podían proporcionar, así como también operar a través de conexiones de acceso telefónico.[53] Sin embargo, estos sitios limitaron la accesibilidad al "romper el botón Atrás", expulsando a los visitantes de la experiencia Flash por completo al devolverlos a cualquier página en la que hubieran estado antes de llegar por primera vez al sitio. Los sitios que se ejecutan completamente en Flash cayeron en desgracia por el uso más estratégico de los complementos de Flash para video y otras funciones interactivas entre las convenciones HTML estándar, lo que corresponde a la disponibilidad de funciones HTML como hojas de estilo en cascada a mediados de los años 2000.[54] Al mismo tiempo, esto también llevó a que Flash se usara para nuevas aplicaciones, incluidos videojuegos y animaciones.[55] Precursores de YouTube, pero con animaciones y juegos Flash generados por los usuarios, como Newgrounds, se convirtieron en destinos populares, lo que ayudó aún más a difundir el uso de Flash.[53]
Hacia el final del milenio, se lanzó el Protocolo de aplicación inalámbrica (WAP), correspondiente al desarrollo de HTML dinámico. Quince años después, WAP había sido reemplazado en gran medida por implementaciones de capacidad total y el estándar HTML5 incluía más soporte para elementos interactivos y de video. No se incluyó soporte para Flash en estos navegadores móviles. En 2010, Steve Jobs de Apple escribió Pensamientos sobre Flash, una carta abierta a Adobe en la que criticaba la naturaleza cerrada de la plataforma Flash y los problemas de seguridad inherentes a la aplicación para explicar por qué Flash no era compatible con iOS.[56][57] Adobe creó el entorno Adobe AIR como un medio para apaciguar las preocupaciones de Apple y dedicó tiempo a luchar legalmente contra Apple por los términos de su tienda de aplicaciones para permitir que AIR se use en iOS. Si bien Adobe finalmente ganó, lo que permitió que otros entornos de desarrollo de terceros tuvieran acceso al iOS, la decisión de Apple de bloquear Flash se consideró el "golpe mortal" para la aplicación Flash.[55] En noviembre de 2011, aproximadamente un año después de la carta abierta de Jobs, Adobe anunció que ya no desarrollaría Flash y aconsejó a los desarrolladores que cambiaran a HTML5.[58]
En 2011, Adobe dejó de admitir Flash en Android.[58] Adobe declaró que la plataforma Flash estaba haciendo la transición a Adobe AIR y OpenFL, una implementación de código abierto para múltiples objetivos de la API de Flash.[59] En 2015, Adobe renombró Flash Professional, el principal entorno de creación de Flash, como Adobe Animate para enfatizar su soporte ampliado para la creación de HTML5 y declaró que "alentaría a los creadores de contenido a crear con nuevos estándares web" en lugar de usar Flash.[60]
En julio de 2017, Adobe dejó de usar Flash y anunció su fin de vida útil (EOL) a fines de 2020, y dejará de brindar soporte, distribución y actualizaciones de seguridad para Flash Player.[5]
Con el anuncio de EOL de Flash, muchos navegadores tomaron medidas para restringir gradualmente el contenido de Flash (precaución a los usuarios antes de iniciarlo, y finalmente bloquearon todo el contenido sin la opción de reproducirlo). Para enero de 2021, todos los principales navegadores bloqueaban incondicionalmente todo el contenido Flash. Solo IE11, bifurcaciones de navegador de nicho y algunos navegadores creados para China planean continuar con el soporte. Además, excluyendo la variante china de Flash, el software de ejecución de Flash tiene un interruptor de apagado incorporado que evita que reproduzca Flash después del 12 de enero de 2021.[61] En enero de 2021, Microsoft lanzó una actualización opcional KB4577586 que elimina Flash Player de Windows; en julio de 2021, esta actualización se lanzó como una actualización de seguridad y se aplicó automáticamente a todos los sistemas restantes.[62]
Adobe Flash seguirá siendo compatible en China y en todo el mundo en algunas plataformas empresariales especializadas más allá de 2020.
Ya en 2014, casi al mismo tiempo que Adobe comenzó a alentar a los desarrolladores de Flash a hacer la transición de sus trabajos a los estándares HTML5, otros comenzaron a esforzarse por preservar el contenido Flash existente mediante la emulación de Flash en estándares abiertos. Si bien algunas aplicaciones Flash eran utilitarias, varias aplicaciones habían demostrado ser arte experimental, mientras que otras habían sentado las bases del desarrollo independiente de videojuegos.[63] Uno de los primeros proyectos fue Shumway de Mozilla, un proyecto de código abierto que intentaba emular el estándar Flash en HTML5, pero el proyecto se cerró cuando el equipo descubrió que más desarrolladores estaban cambiando a HTML5 que buscando mantener su contenido en Flash, junto con las dificultades para asegurar la plena compatibilidad. Google había desarrollado la aplicación Swiffy, lanzada en 2014, para convertir aplicaciones Flash en secuencias de comandos compatibles con HTML5 para su visualización en dispositivos móviles, pero se cerró en 2016.[63]
Más cerca de la fecha de EOL de Flash en 2020, hubo esfuerzos más concentrados simplemente para preservar las aplicaciones Flash existentes, incluidos sitios web, videojuegos y animaciones más allá de la EOL de Flash.[55][64][65] Internet Archive presentó los emuladores Ruffle y Emularity Flash para emular juegos y animaciones Flash sin los agujeros de seguridad en noviembre de 2020, abriendo una nueva colección para que los creadores y usuarios guarden y conserven el contenido Flash.[66][67] En enero de 2020, el proyecto Flashpoint recopiló más de 38,000 aplicaciones Flash, excluidas las que eran productos comerciales, y se ofreció como un gran archivo disponible gratuitamente para que los usuarios lo descargaran.[68][69] Kongregate, uno de los sitios más grandes que ofrece juegos Flash, ha estado trabajando con el Strong Museum of Play para preservar sus juegos.[63]
Los archivos de origen Flash están en formato FLA y contienen gráficos y animaciones, así como activos incrustados, como imágenes de mapa de bits, archivos de audio y archivos de video FLV. El formato de archivo de origen Flash era un formato propietario y Adobe Animate y Adobe Flash Pro eran las únicas herramientas de creación disponibles capaces de editar dichos archivos. Los archivos fuente Flash (.fla) se pueden compilar en archivos de película Flash (.swf) con Adobe Animate. Tenga en cuenta que los archivos FLA se pueden editar, pero los archivos de salida (.swf) no.
Los archivos de películas Flash estaban en formato SWF, tradicionalmente llamados películas "ShockWave Flash", "películas Flash" o "aplicaciones Flash", generalmente tienen una extensión de archivo .swf y se pueden usar en forma de un complemento de página web, estrictamente "reproducido" en un Flash Player independiente, o incorporado en una película Projector autoejecutable (con la extensión .exe en Microsoft Windows). Los archivos de Flash Video tienen una extensión de archivo .flv y se usan desde archivos .swf o se reproducen a través de un reproductor compatible con flv, como VLC, o QuickTime y Windows Media Player con códecs externos agregados.
El uso de gráficos vectoriales combinados con el código del programa permite que los archivos Flash sean más pequeños y, por lo tanto, permite que las secuencias utilicen menos ancho de banda que los mapas de bits o los videoclips correspondientes. Para el contenido en un solo formato (como solo texto, video o audio), otras alternativas pueden proporcionar un mejor rendimiento y consumir menos energía de la CPU que la película Flash correspondiente, por ejemplo, cuando se usan transparencias o se realizan actualizaciones de pantalla grande, como fotografías o el texto se desvanece.
Además de un motor de representación vectorial, Flash Player incluye una máquina virtual llamada ActionScript Virtual Machine (AVM) para interactividad de secuencias de comandos en tiempo de ejecución, con video, audio basado en MP3 y gráficos de mapa de bits. A partir de Flash Player 8, ofrecía dos códecs de video: On2 Technologies VP6 y Sorenson Spark, y JPEG en tiempo de ejecución, JPEG progresivo, PNG, GIF y (DWG) Archivo de dibujo de AutoCAD (WMV) Capacidad de metarchivo de Windows.
Flash Player 11 introdujo una API de sombreado 3D completa, llamada Stage3D, que es bastante similar a WebGL.[70][71] Stage3D permite la representación acelerada por GPU de gráficos 3D dentro de juegos y aplicaciones Flash, y se ha utilizado para crear Angry Birds y un par de otros juegos notables.
Se han creado varios marcos 3D para Flash utilizando Stage3D, como Away3D 4,[71] CopperCube, Flare3D,[72] y Starling.[73] Los motores de juegos profesionales como Unreal Engine[74][75] y Unity también exportan versiones Flash que usan Stage3D para renderizar gráficos 3D.
Prácticamente todos los complementos de navegador para video son gratuitos y multiplataforma, incluida la oferta de Flash Video de Adobe, que se introdujo con la versión 6 de Flash. Flash Video había sido una opción popular para los sitios web debido a la gran base de usuarios instalada y la capacidad de programación de Flash. En 2010, Apple criticó públicamente a Adobe Flash, incluida su implementación de reproducción de video por no aprovechar la aceleración de hardware, una de las razones por las que Flash no se encontraba en los dispositivos móviles de Apple. Poco después de las críticas de Apple, Adobe hizo una demostración y lanzó una versión beta de Flash 10.1, que usaba la aceleración de hardware GPU disponible incluso en una Mac. Flash 10.2 beta, lanzado en diciembre de 2010, agregó aceleración de hardware para toda la canalización de procesamiento de video.
Flash Player admite dos modos distintos de reproducción de video, y la decodificación de video acelerada por hardware no se puede usar para contenido de video más antiguo. Dicho contenido provoca un uso excesivo de la CPU en comparación con el contenido comparable que se reproduce con otros reproductores.
En las pruebas realizadas por Ars Technica en 2008 y 2009, Adobe Flash Player funcionó mejor en Windows que en Mac OS X y Linux con el mismo hardware.[77][78] Posteriormente, el rendimiento mejoró para los dos últimos, en Mac OS X con Flash Player 10.1,[79] y en Linux con Flash Player 11.[80]
Flash Audio se suele codificar en MP3 o AAC (Codificación de audio avanzada); sin embargo, también puede utilizar los códecs de audio ADPCM, Nellymoser ( Nellymoser Asao Codec ) y Speex . Flash permite frecuencias de muestreo de 11, 22 y 44,1kHz. No puede tener una frecuencia de muestreo de audio de 48 kHz, que es la frecuencia de muestreo estándar de TV y DVD.
El 20 de agosto de 2007, Adobe anunció en su blog que con la Actualización 3 de Flash Player 9, Flash Video también implementará algunas partes de los estándares internacionales MPEG-4.[81] Específicamente, Flash Player funcionará con video comprimido en H.264 (MPEG-4 Parte 10), audio comprimido usando AAC (MPEG-4 Parte 3), F4V, MP4 (MPEG-4 Parte 14), M4V, M4A, 3GP y formatos de contenedor multimedia MOV, especificación de texto temporizado 3GPP (MPEG-4 Parte 17), que es un formato de subtítulos estandarizado y capacidad de análisis parcial para el átomo "ilst", que es el ID3 equivalente que iTunes usa para almacenar metadatos. MPEG-4 Parte 2 y H.263 no funcionarán en el formato de archivo F4V. Adobe también anunció que se alejará gradualmente del formato FLV al formato de archivo de medios base ISO estándar (MPEG-4 Parte 12) debido a los límites funcionales con la estructura FLV cuando se transmite H.264. La versión final de Flash Player que implementa algunas partes de los estándares MPEG-4 estuvo disponible en el otoño de 2007.[82]
Adobe Flash Player 10.1 no tiene cancelación de eco acústico, a diferencia de las ofertas de VoIP de Skype y Google Voice, lo que hace que esta y las versiones anteriores de Flash sean menos adecuadas para llamadas o reuniones grupales. Flash Player 10.3 Beta incorpora cancelación de eco acústico.
Los programas Flash utilizan el lenguaje de programación ActionScript. Es un superconjunto mejorado del lenguaje de programación ECMAScript, con un modelo de clase de estilo Java clásico, en lugar del modelo prototipo de JavaScript.
En octubre de 1998, Macromedia reveló la especificación de la versión 3 de Flash en su sitio web. Hizo esto en respuesta a muchos formatos nuevos ya menudo semiabiertos que compiten con SWF, como los formatos Flare de Xara y Extended Vector Animation de Sharp. Varios desarrolladores crearon rápidamente una biblioteca C para producir SWF. En febrero de 1999, se presentó MorphInk 99, el primer programa de terceros para crear archivos SWF. Macromedia también contrató a Middlesoft para crear un kit de desarrolladores disponible gratuitamente para las versiones 3 a 5 del formato de archivo SWF.
Macromedia hizo que las especificaciones de Flash Files para las versiones 6 y posteriores estén disponibles solo bajo un acuerdo de confidencialidad, pero están ampliamente disponibles en varios sitios.
En abril de 2006, se publicó la especificación del formato de archivo Flash SWF con detalles sobre el formato de la versión más reciente (Flash 8). Aunque aún carecía de información específica sobre los formatos de compresión de video incorporados (On2, Sorenson Spark, etc.), esta nueva documentación cubría todas las funciones nuevas que se ofrecen en Flash v8, incluidos los nuevos comandos de ActionScript, controles de filtros expresivos, etc. El documento de especificación de formato de archivo se ofrece solo a los desarrolladores que aceptan un acuerdo de licencia que les permite usar las especificaciones solo para desarrollar programas que puedan exportar al formato de archivo Flash. La licencia no permite el uso de las especificaciones para crear programas que puedan usarse para la reproducción de archivos Flash. La especificación Flash 9 estuvo disponible bajo restricciones similares.[83]
En junio de 2009, Adobe lanzó Open Screen Project ( enlace de Adobe), que hizo que la especificación SWF estuviera disponible sin restricciones. Anteriormente, los desarrolladores no podían usar la especificación para crear reproductores compatibles con SWF, sino solo para crear software de creación de exportación de SWF. Sin embargo, la especificación aún omite información sobre códecs como Sorenson Spark.[84]
El programa de creación Adobe Animate se utiliza principalmente para diseñar gráficos y animaciones y publicar los mismos para sitios web, aplicaciones web y videojuegos. El programa también ofrece soporte limitado para incrustación de audio y video y secuencias de comandos ActionScript.
Adobe lanzó Adobe LiveMotion, diseñado para crear contenido de animación interactivo y exportarlo a una variedad de formatos, incluido SWF. LiveMotion no logró obtener ninguna base de usuarios notable.
En febrero de 2003, Macromedia compró Presedia, que había desarrollado una herramienta de creación de Flash que convertía automáticamente archivos de PowerPoint a Flash. Posteriormente, Macromedia lanzó el nuevo producto como Breeze, que incluía muchas mejoras nuevas.
Varios paquetes de software gratuitos y comerciales pueden generar animaciones en formato Flash SWF, incluidos:
El proyecto Flash 4 Linux fue una iniciativa para desarrollar una aplicación Linux de código abierto como alternativa a Adobe Animate. Los planes de desarrollo incluían capacidad de autoría para animación 2D e interpolación, así como la salida de formatos de archivo SWF. F4L evolucionó hasta convertirse en un editor capaz de crear animaciones 2D y publicar archivos SWF. Flash 4 Linux pasó a llamarse UIRA. UIRA pretendía combinar los recursos y el conocimiento del proyecto F4L y el proyecto Qflash, los cuales eran aplicaciones de código abierto que tenían como objetivo proporcionar una alternativa al propietario Adobe Flash.
Adobe proporciona una serie de herramientas para desarrollar aplicaciones de software y videojuegos para Flash:
Se han creado herramientas de desarrollo de terceros para ayudar a los desarrolladores a crear aplicaciones de software y videojuegos con Flash.
Adobe Flash Player es el reproductor multimedia y de aplicaciones desarrollado originalmente por Macromedia y adquirido por Adobe Systems. Reproduce archivos SWF, que pueden crearse con Adobe Animate, Apache Flex o una serie de otras herramientas de Adobe Systems y de terceros. Tiene soporte para un lenguaje de secuencias de comandos llamado ActionScript, que se puede usar para mostrar Flash Video desde un archivo SWF.
Scaleform GFx es un reproductor Flash alternativo comercial que presenta renderizado de gráficos 2D totalmente acelerado por hardware usando la GPU. Scaleform tiene una alta conformidad con Flash 10 ActionScript 3[85] y Flash 8 ActionScript 2. Scaleform GFx es una solución de middleware de desarrollo de juegos que ayuda a crear interfaces gráficas de usuario o HUD dentro de videojuegos 3D. No funciona con navegadores web.
IrfanView, un visor de imágenes, utiliza Flash Player para mostrar archivos SWF.
OpenFL, una implementación de código abierto multiplataforma de la API de Adobe Flash,[59] admite la importación de activos SWF.[86]
Lightspark es un reproductor SWF gratuito y de código abierto que admite la mayor parte de ActionScript 3.0 y tiene un complemento compatible con Mozilla.[87] Recurrirá a Gnash, un reproductor SWF gratuito compatible con código ActionScript 1.0 y 2.0 (AVM1). Lightspark es compatible con la representación basada en OpenGL para contenido 3D. El reproductor también es compatible con videos H.264 Flash en YouTube .
Gnash tenía como objetivo crear un reproductor de software y un reemplazo del complemento del navegador para Adobe Flash Player. Gnash puede reproducir archivos SWF hasta la versión 7 y el 80 % de ActionScript 2.0.[88] Gnash se ejecuta en Windows, Linux y otras plataformas para los sistemas operativos de 32 bits, 64 bits y otros, pero el desarrollo se ha ralentizado significativamente en los últimos años.
Shumway fue un Flash Player de código abierto lanzado por Mozilla en noviembre de 2012. Fue construido en JavaScript y, por lo tanto, es compatible con los navegadores web modernos.[89][90][91] A principios de octubre de 2013, Shumway se incluyó de forma predeterminada en la rama nocturna de Firefox.[92] Shumway representó los contenidos Flash traduciendo los contenidos dentro de los archivos Flash a elementos HTML5 y ejecutando un intérprete de ActionScript en JavaScript.[93] Admitía tanto AVM1 como AVM2, y las versiones 1, 2 y 3 de ActionScript.[94] El desarrollo de Shumway cesó a principios de 2016.[95]
En el mismo año en que se abandonó Shumway, se comenzó a trabajar en Ruffle, un emulador de flash escrito en Rust. También se ejecuta en navegadores web, al compilar en WebAssembly y usar HTML5 Canvas.[96] En 2020, Internet Archive agregó soporte para emular SWF al agregar Ruffle a su esquema de emulación.[97] A partir de enero de 2023, Ruffle admite el 90 % de AVM1 y el 60 % de las API AS1/2, pero implementa tan poco de AVM2 (AS3) que no se admiten aplicaciones.[98]
Actualmente, Adobe Flash Player solo es compatible con las variantes Enterprise[99][100][101] y China; ha quedado obsoleto en todos los demás.[5]
Adobe Flash Player está disponible en cuatro versiones:
La versión ActiveX es un control ActiveX para usar en Internet Explorer y cualquier otra aplicación de Windows que admita la tecnología ActiveX. Las versiones del complemento están disponibles para navegadores compatibles con complementos NPAPI o PPAPI en Microsoft Windows, macOS y Linux. La versión del proyector es un reproductor independiente que puede abrir archivos SWF directamente.[102]
Adobe AIR comparte algo de código con Adobe Flash Player y esencialmente lo integra.
Adobe Flash Player estaba disponible anteriormente para una variedad de sistemas operativos móviles, incluidos Android (entre las versiones 2.2)[103] y 4.0.4,[104] Pocket PC/Windows CE, QNX (p. ej., en BlackBerry PlayBook), Symbian, Palm OS y webOS (desde la versión 2.0[105]). Flash Player para teléfonos inteligentes se puso originalmente a disposición de los fabricantes de teléfonos móviles a finales de 2009.[106] En noviembre de 2011, Adobe anunció la retirada de la compatibilidad con Flash Player en dispositivos móviles.[107]
En 2011, Adobe reafirmó su compromiso de "contribuir agresivamente" a HTML5.[108][109] Adobe anunció el final de Flash para plataformas móviles o TV, centrándose en cambio en HTML5 para el contenido del navegador y Adobe AIR para las diversas tiendas de aplicaciones móviles[110][111][112][113] y lo describió como "el principio del fin".[114] BlackBerry LTD (anteriormente conocido como RIM) anunció que continuaría desarrollando Flash Player para PlayBook.[115]
No hay Adobe Flash Player para dispositivos iOS (iPhone, iPad y iPod Touch). Sin embargo, el contenido Flash se puede ejecutar en dispositivos iOS de varias formas:
La versión móvil de Internet Explorer para Windows Phone no puede reproducir contenido Flash; sin embargo, la compatibilidad con Flash todavía está presente en la versión para tableta de Windows.[120]
AIR es un sistema de tiempo de ejecución multiplataforma para desarrollar aplicaciones para dispositivos móviles que ejecutan Android ( ARM Cortex-A8 y superior)[121] y Apple iOS.[122]
Adobe Flash Lite es una versión ligera de Adobe Flash Player destinada a teléfonos móviles[123] y otros dispositivos electrónicos portátiles como Chumby e iRiver.
OpenFL es un marco de software de código abierto que refleja la API de Adobe Flash. Permite a los desarrolladores crear una sola aplicación contra las API de OpenFL y apuntar simultáneamente a múltiples plataformas, incluidas iOS, Android, HTML5 (opción de Canvas, WebGL, SVG o DOM), Windows, macOS, Linux, WebAssembly, Flash, AIR, PlayStation 4, PlayStation 3, PlayStation Vita, Xbox One, Wii U, TiVo, Raspberry Pi y Node.js.[124] OpenFL refleja la API Flash para operaciones gráficas. Las aplicaciones OpenFL se pueden escribir en Haxe, JavaScript (EcmaScript 5 o 6+) o TypeScript.[125]
Se han desarrollado más de 500 videojuegos con OpenFL,[126] incluido el juego ganador del premio BAFTA Papers, Please, Rymdkapsel, Lightbot y Madden NFL Mobile.
HTML5 se cita a menudo como una alternativa al uso de la tecnología Adobe Flash en las páginas web. Adobe lanzó una herramienta que convierte Flash a HTML5,[127] y en junio de 2011, Google lanzó una herramienta experimental que hace lo mismo.[128][129] En enero de 2015, YouTube usó reproductores HTML5 de forma predeterminada para admitir mejor más dispositivos.[130]
Las siguientes herramientas permiten convertir contenido Flash a HTML5:
Las siguientes herramientas ejecutan contenido Flash en un navegador compatible con HTML5, pero no se convierten a una página web HTML5:
Los sitios web creados con Adobe Flash no funcionarán en la mayoría de los dispositivos móviles modernos con Google Android o iOS (iPhone, iPad). La única alternativa es usar HTML5 y un diseño web receptivo para crear sitios web compatibles con dispositivos móviles y de escritorio.
Sin embargo, Flash todavía se usa para crear juegos móviles con Adobe AIR. Dichos juegos no funcionarán en navegadores web móviles, pero deben instalarse a través de la tienda de aplicaciones correspondiente.
La dependencia de Adobe para decodificar Flash hace que su uso en la World Wide Web sea una preocupación: se debate la integridad de sus especificaciones públicas y no hay una implementación completa de Flash disponible públicamente en forma de código fuente con una licencia que permita su reutilización. Por lo general, las especificaciones públicas son las que hacen que un formato sea reimplementable (consulte el almacenamiento de datos de pruebas futuras), y las bases de código reutilizables se pueden trasladar a nuevas plataformas sin el respaldo del creador del formato.
Las restricciones de Adobe sobre el uso de las especificaciones SWF/FLV se levantaron en febrero de 2009 (consulte el Proyecto de pantalla abierta de Adobe). Sin embargo, a pesar de los esfuerzos de proyectos como Gnash, Swfdec y Lightspark, aún no se ha visto un reproductor Flash gratuito completo, a partir de septiembre de 2011. Por ejemplo, Gnash todavía no puede usar SWF v10.[137] En particular, Gnash se incluyó en la lista de alta prioridad de la Free Software Foundation, desde al menos 2007 hasta su eliminación en enero de 2017.[138]
Destacados defensores del software libre, los estándares abiertos y la World Wide Web han advertido contra el uso de Flash:
El fundador de Mozilla Europa, Tristan Nitot, declaró en 2008:[139]
Las empresas que crean sitios web deben tener cuidado con las tecnologías propietarias de medios enriquecidos como Flash de Adobe y Silverlight de Microsoft. (. . . ) Está produciendo contenido para sus usuarios y hay alguien en el medio que decide si los usuarios deben ver su contenido.
En representación de los estándares abiertos, inventor de CSS y coautor de HTML5, Håkon Wium Lie explicó en una charla tecnológica de Google de 2007, titulada "el elemento <video>", la propuesta de Theora como formato para video HTML5:[140]
Creo firmemente que debemos acordar algún tipo de formato de video de referencia si [el elemento de video] va a tener éxito. Flash es hoy el formato de referencia en la web. El problema con Flash es que no es un estándar abierto.
En representación del movimiento del software libre, Richard Stallman declaró en un discurso en 2004 que:[141] "El uso de Flash en los sitios web es un problema importante para nuestra comunidad".
El consultor de usabilidad Jakob Nielsen publicó un cuadro de alerta en 2000 titulado Flash: 99% malo, afirmando que "Flash tiende a degradar los sitios web por tres razones: fomenta el abuso del diseño, rompe con los principios de interacción fundamentales de la Web y distrae la atención de los sitios web". valor central."[142] Algunos problemas se han solucionado al menos parcialmente desde las quejas de Nielsen: el tamaño del texto se puede controlar utilizando el zoom de página completa y los autores pueden incluir texto alternativo en Flash desde Flash Player 6.
El contenido Flash generalmente se incrusta utilizando el object
o el elemento HTML embed
.[143] Un navegador web que no implemente completamente uno de estos elementos muestra el texto de reemplazo, si lo proporciona la página web. A menudo, se requiere un complemento para que el navegador implemente completamente estos elementos, aunque algunos usuarios no pueden o no quieren instalarlo.
Dado que Flash se puede utilizar para producir contenido (como anuncios) que algunos usuarios consideran desagradable o requiere una gran cantidad de ancho de banda para descargar, algunos navegadores web, de forma predeterminada, no reproducen contenido Flash hasta que el usuario hace clic en él, p. Konqueror, K-Meleon.
La mayoría de los navegadores actuales tienen una función para bloquear complementos, reproduciendo uno solo cuando el usuario hace clic en él. Las versiones de Opera desde 10.5 cuentan con bloqueo de Flash nativo. Opera Turbo requiere que el usuario haga clic para reproducir contenido Flash, y el navegador también permite al usuario habilitar esta opción de forma permanente. Tanto Chrome[144] como Firefox[145] tienen una opción para habilitar "complementos de clic para reproducir". Las extensiones de "Bloqueador de Flash" equivalentes también están disponibles para muchos navegadores populares: Firefox tiene Flashblock y NoScript, Internet Explorer tiene Foxie, que contiene una serie de características, una de ellas llamada Flashblock. Los navegadores basados en WebKit en macOS, como Safari de Apple, tienen ClickToFlash.[146] En junio de 2015, Google anunció que Chrome "pausaría" los anuncios y el contenido Flash "no central" de forma predeterminada.[147]
Firefox (a partir de la versión 46) reescribe el antiguo código de incrustación de YouTube solo para Flash en el moderno reproductor integrado de YouTube que es capaz de usar HTML5 o Flash.[148] Este código para insertar es utilizado por sitios que no son de YouTube para insertar videos de YouTube y todavía se puede encontrar, por ejemplo, en blogs y foros antiguos.
Sin embargo, hay formas de pasar este error en ausencia de Flash Player eliminando el código de validación en HTML. Esto también depende de la visión del navegador.
Durante muchos años, el registro de seguridad de Adobe Flash Player[149] ha llevado a muchos expertos en seguridad a recomendar no instalar el reproductor o bloquear el contenido Flash.[150][151] El US-CERT ha recomendado bloquear Flash,[152] y el investigador de seguridad Charlie Miller recomendó "no instalar Flash";[153] sin embargo, para las personas que aún usan Flash, Intego recomienda que los usuarios obtengan actualizaciones confiables "solo directamente del proveedor que las publica".[154] Adobe Flash Player tiene más de 1078 entradas CVE,[155] de las cuales más de 842 conducen a la ejecución de código arbitrario, y las vulnerabilidades anteriores han permitido el espionaje a través de cámaras web.[156][157][158][159] Los expertos en seguridad han predicho durante mucho tiempo la desaparición de Flash, diciendo que con el auge de HTML5 "... la necesidad de complementos de navegador como Flash está disminuyendo".[160]
Los movimientos activos de terceros para limitar el riesgo comenzaron con Steve Jobs en 2010 diciendo que Apple no permitiría Flash en el iPhone, iPod Touch y iPad, citando la seguridad abismal como una de las razones.[161] Flash a menudo usaba la capacidad de cambiar dinámicamente partes del tiempo de ejecución en idiomas en OSX para mejorar su propio rendimiento, pero causaba inestabilidad general. En julio de 2015, una serie de vulnerabilidades recién descubiertas dieron como resultado que el director de seguridad de Facebook, Alex Stamos, emitiera un llamado a Adobe para descontinuar el software por completo[162] y el navegador web Mozilla Firefox, Google Chrome y Apple Safari a la lista negra. todas las versiones anteriores de Flash Player.[163][164][165]
Al igual que la cookie HTTP, una cookie flash (también conocida como "Objeto compartido local ") se puede usar para guardar datos de la aplicación. Las cookies flash no se comparten entre dominios. Un estudio de agosto de 2009 realizado por Ashkan Soltani y un equipo de investigadores de UC Berkeley encontró que el 50% de los sitios web que usaban Flash también empleaban cookies flash, pero las políticas de privacidad rara vez las revelaban y faltaban controles de usuario para las preferencias de privacidad.[166] Las funciones de supresión o eliminación de caché e historial de la mayoría de los navegadores no afectaron la escritura de Objetos compartidos locales de Flash Player en su propia caché en la versión 10.2 y anteriores, momento en el cual la comunidad de usuarios era mucho menos consciente de la existencia y función de las cookies Flash que las cookies HTTP.[167] Por lo tanto, los usuarios con esas versiones, después de eliminar las cookies HTTP y purgar los archivos y cachés del historial del navegador, pueden creer que han eliminado todos los datos de seguimiento de sus computadoras cuando, de hecho, permanece el historial de navegación Flash. El propio panel de configuración de almacenamiento del sitio web de Flash de Adobe, un submenú de la aplicación web Administrador de configuración de Flash de Adobe y otros editores y kits de herramientas pueden administrar la configuración y eliminar los objetos compartidos locales de Flash.[168]