Adobe Flash

Un article de Wikipédia, l'encyclopédie libre.

Pour les articles homonymes, voir Flash.
Adobe Flash
Développeur Adobe Systems
Dernière version CS3 (9.0) (le 16 avril 2007)
Environnement Microsoft Windows, Mac OS X
Type Logiciel multimédia
Licence Propriétaire
Site web www.adobe.com

Adobe Flash (anciennement Macromedia Flash; nom original FutureSplash Animator), ou simplement Flash, se réfère à Adobe Flash Player et à un logiciel multimédia utilisé pour créer le contenu de Adobe Engagement Platform (tel qu’une application Internet, jeux ou vidéos). Flash Player, développé et distribué par Adobe Systems (qui acheta Macromedia en 2005), est une application client fonctionnant sur la plupart des navigateurs Web. Ce logiciel permet la création de graphiques vectoriels et de bitmap, un langage script appelé ActionScript et un stream bi-directionnel de l’audio et vidéo.

Pour être bref, Adobe Flash est un logiciel d'environnement de développement intégré (IDE) avec Flash Player une machine virtuelle utilisée pour lire les fichiers Flash. Mais le terme « Flash » peut se référer à un lecteur, un environnement ou à un fichier d’application.

Depuis son lancement en 1996, la technologie Flash est devenue une des méthodes les plus populaires pour ajouter des animations et des objets interactifs à une page web ; de nombreux logiciels de création et OS sont capables de créer ou d’afficher du Flash. Flash est généralement utilisé pour créer des animations, des publicités ou des jeux vidéo. Il permet aussi d'intégrer de la vidéo en streaming dans une page, jusqu'au développement d'applications Rich Media.

Les fichiers Flash, généralement appelés "animation Flash" sont au format .swf. Ils peuvent être inclus dans une page web et lus par le plugin Flash du navigateur, ou bien interprétés indépendamment dans le lecteur Flash Player.

Sommaire

[modifier] Histoire

  • En janvier 1993, Charlie Jackson, Jonathan Gay et Michelle Welsh créent une petite entreprise de logiciel (startup) appelée FutureWave et un premier logiciel de dessin, SmartSketch, conçu pour rendre la création d’interfaces graphiques aussi simple que le dessin sur papier. Bien qu'innovant, SmartSketch n’a pas connu le succès attendu.
  • Avec la démocratisation d’Internet, FutureWave se rendit compte du potentiel des outils d’animation vectorielle pour le Web. En 1995, FutureWave modifia SmartSketch en ajoutant un système d’image par image et réédita le logiciel sous le nom de FutureSplash Animator sur Macintosh et PC. Avec le temps, l’entreprise ajouta à son effectif un second programmeur, Robert Tatsumi, un artiste Adam Grofcsik et un PR spécialiste Ralph Mittman.
  • En décembre 1996, Macromedia achète le logiciel d’animation vectoriel et le commercialise sous le nom de Flash 1.0.
  • Macromedia Flash 2 sort en 1997 avec des nouveautés comme la prise en charge du son stéréo, l'intégration des bitmaps, les boutons et la bibliothèque.
  • Macromedia Flash 3 sort en 1998, améliorant nettement la gestion des animations et la publication. Un langage de script simple apparait pour contrôler des objets interactifs. Macromedia vend son 100 000e produit cette année là.
  • En 1999, Macromedia sort Flash 4 et enregistre 100 millions d’installations du Flash Player, désormais inclus à Microsoft Internet Explorer 5. Flash 4 voit le début du support du MP3.
  • À l’origine, le lecteur Flash n’était pas inclus avec les navigateurs web et les utilisateurs devaient visiter le site de Macromedia pour le télécharger. À partir de 2000, il est distribué avec les navigateurs AOL, Netscape et Internet Exporer. Deux ans plus tard, il est fourni avec toutes les versions de Windows XP, touchant 92% des utilisateurs du Web.
  • Flash 5 sort en 2000, avec de nouvelles possibilités de script, sous le langage désormais appelé ActionScript. Il innove aussi par la possibilité de modifier l’interface des environnements textuels.
  • Macromedia Generator fut la première initiative de Macromedia pour séparer le design du contenu du fichier Flash. Generator 2.0 sort en avril 2000 et inclut la génération de serveur temps réel dans la version professionnelle de Flash. Generator est arrêté en 2002 au profit de nouvelles technologies qui autorisent la transmission de données entre le client et les serveurs ColdFusion.
  • En septembre 2001, une étude de Media Metrix pour Macromedia montre que 7 des 10 plus grands sites américains utilisent la technologie Flash.
  • Le 15 mars 2002, Macromedia annonce la disponibilité de Macromedia Flash MX et Macromedia Flash Player 6, avec de nouvelles applications sur la vidéo, les composants, les bibliothèques téléchargeables.
  • Flash Communication Server MX, également sorti en 2002, autorise les vidéos à être téléchargées par Flash Player 6 (auparavant inclut dans le fichier Flash).
  • Flash MX 2004 sort en septembre 2003, avec de nouveautés comme un lancement plus rapide, jusqu’à 8 fois plus rapide avec le nouveau compilateur et le nouveau Macromedia Flash Player 7, la possibilité de créer des tableaux, graphiques et des animations de texte, la prise en charge de nouveaux formats comme le PDF et Adobe Illustrator 10. ActionScript 2.0 apparait également permettant une orientation objet plus formelle des développements. Flash MX 2004 est le premier à se voir commercialisé en deux versions, “standard” et “professionnel”. La version standard est orientée vers l'animation Flash classique, tandis que la version Pro inclut des possibilités avancées pour les développeurs.
  • En 2004, l'introduction de la “plate-forme Flash” lui fait dépasser le statut de simple outil de création (Flex 1.0/Breeze 1.0). Flash Lite 1.1 autorise la lecture de contenus Flash sur les périphériques embarqués, type téléphones mobiles.
  • Macromedia sort Flash 8 en 2005, considéré par Macromedia comme la mise à jour la plus importante depuis Flash 5 : filtres, bitmap, nouveau Codec vidéo On2 VP6, nouveau moteur de rendu "FlashType", un émulateur pour téléphones portables et plusieurs ajouts à l'ActionScript 2.0 tel que BitmapData, plusieurs classes géométriques.
  • Flash Lite 2 est également mis à jour en 2005 (parallèlement au Flash Player 7).
  • Le 3 décembre 2005, Adobe Systems achète Macromedia et tous ses produits.
  • Flash Player 9 en 2006 marque la première fois qu’un lecteur flash est mis à jour en même temps que le logiciel de création. Flex 2.0 est mis à jour en même temps que Flash Player 9. Pour la première fois dans l’histoire de Flash, le lecteur sera mis à jour avant le logiciel flash correspondant.
  • En 2007 Flash est inclus dans la Creative Suite 3 d'Adobe (CS3) Flash CS3 se décline toujours en 2 versions (simple et professionnelle) Les principales nouveautés sont l'intégration totale dans le reste de la suite Adobe entre autres, un accès aux fichiers plus facile grâce à Bridge CS3. Mais le principal changement n'est pas là, c'est le passage à ActionScript 3 qui l'améliore grandement, il se révèle plus complet mais plus compliqué pour les débutants.

[modifier] Langage de Programmation

À l’origine concentré sur l’animation, les premières versions de Flash offraient peu d’interactivité, les possibilités de script étant très limitées.

Les versions plus récentes incluent ActionScript, langage dont la syntaxe est similaire au JavaScript (une implémentation de ECMA) et prend en charge le format JSON . ActionScript est utilisé pour créer la plupart des interactions (boutons, champs, menus déroulants) présentes dans les animations Flash.

Les nouvelles versions du lecteur Flash et des logiciels de création ont considérablement amélioré leurs possibilités de script. Flash MX 2004 introduit ActionScript 2.0, un langage de programmation de script indispensable au développement d’applications Flash. Les scripts peuvent permettre de diminuer les temps de développement autant que le poids des .swf, par rapport à l'emploi d'images clés, conçues avant tout pour l'animation. De plus, ils sont facilement réutilisables. En outre, à partir de la version 3.0 d'ActionScript, le langage offre une meilleure intégration du paradigme orienté objet.

La synchronisation Flash/XML, similaire à AJAX ?

[modifier] Extraction du contenu non-trivial

Le Flash .swf encapsule code et ressources graphiques dans un format propriétaire qui n'est pas extractible directement. Il existe cependant des décompilateurs conçus par reverse engineering permettant d'extraire les ressources et le code éventuellement assombri (noms de variables et commentaires en moins)[réf. nécessaire]. En principe, .swf était conçu pour demeurer un format fermé, mais une ouverture du format par Adobe semble envisagée[1].

[modifier] Format et plug-in

Le lecteur Flash est relativement léger et permet une initialisation rapide. L'intégration d'une animation Flash dans une page (X)HTML (W3C, xSWF) peut se faire ainsi :

<object data="movie.swf" type="application/x-shockwave-flash" width="500" height="500">
    <param name="movie" value="movie.swf" />
</object>

SMIL est une W3C Recommendation qui rend possibles certaines des capacités de Flash.

L'utilisation de graphiques vectoriels (tels que PostScript, SVG et PDF) — spécialement quand ils sont combinés avec du code ActionScript pour l'animation — autorise les fichiers Flash à être de petits fichiers qui utilisent moins de bande passante que les bitmaps ou les vidéos. Sur plusieurs points, Flash est une solution très intéressante pour transmettre des contenus multiples. Si le contenu est simplement un format (comme text, vidéo ou audio), d’autres alternatives peuvent donner de meilleurs résultats. Cependant, cela dépend du type d’application ou d’animation créée. Une animation Flash peut avoir besoin de plusieurs CPU.

En combinaison avec un moteur de rendu vectoriel, le lecteur Flash inclut une machine virtuelle appelée ActionScript Virtual Machine (AVM) pour scripter des interactions au lancement, des vidéos, des fichiers MP3 et des images Bitmap. Le lecteur Flash 8 offre deux codecs vidéos On2 Technologies VP6 et Sorenson Spark, et accélération du démarrage des JPEG, Progressive JPEG, PNG, et GIF. Dans sa prochaine version, le lecteur flash devrait pouvoir utiliser le compilateur compilation à la volée ("just-in-time") pour le moteur ActionScript.

Flash est devenu très courant sur les ordinateurs. Selon NPD study, 98% des internautes américains ont le lecteur flash installé, [1] avec 45%-56%[2] qui ont la dernière version.

Le lecteur Flash existe pour un très grand nombre de systèmes et d’appareils. Les contenus Flash peuvent être lus sans problèmes sur Microsoft Windows, Mac OS, et Linux (Macromedia a créé ou licencié des lecteurs pour les systèmes suivants : Windows, Mac OS 9/X, Solaris, HP-UX, Pocket PC, OS/2, QNX, Symbian, Palm OS, BeOS, and IRIX). À défaut, Macromedia Flash Lite permet une compatibilité avec tous les autres systèmes.

Flash Player 8 n’a jamais été édité pour Linux. Cette décision était contestée au sein de la communauté Linux car certaines personnes avaient le sentiment qu’Adobe abandonnait le marché Linux. Adobe a annoncé qu’ils écarteraient cette version pour se concentrer sur la version 9, lancée peu de temps après les versions Windows et Mac OS X.

Paradoxalement, les sites web insistent pour utiliser les versions les plus récentes, Adobe clame que leurs lecteurs Flash sont « compatibles Linux ». La sortie de la version 9 a contribué à améliorer cette situation.

Adobe offre à ses utilisateurs qui acceptent la licence la possibilité d’utiliser les spécificités afin de développer des programmes qui peuvent être exportés au format Flash. La licence interdit d’utiliser les spécifications pour créer des programmes servant à copier les fichiers Flash.

Étant donné que les fichiers Flash ne dépendent pas d’un standard comme SVG, cela réduit l’utilisation du format par des logiciels non commerciaux. Cependant, il y a plusieurs outils qui créent des fichiers .swf et une importante communauté open source. Le lecteur Flash ne peut pas être entièrement open source, ou des systèmes d’exploitation complètement gratuits doivent accepter la licence Macromedia.

[modifier] Utilisations

Les fichiers Flash créés peuvent être inclus dans une page web pour un usage sur Internet ou peuvent être montrés sous forme indépendante (sous la forme d'un fichier exécutable seul, sans plugiciel) en vue d'une utilisation hors ligne. Le contenu graphique des fichiers Flash est prévu pour être principalement vectoriel, à la façon du format SVG, mais est plus développé au niveau multimédia et intègre des médias tels que le son numérique et la vidéo numérique. On utilise Flash pour produire des contenus visuels dans l'approche dite "RichMedia" et "Motion Design" du Web.

Ce logiciel est actuellement utilisé dans les contextes suivants :

  • Création de sites Internet et de jeux vidéos distribués sur le World Wide Web.
  • Création d'illustrations.
  • Création de vidéos pour la télévision ou le cinéma (génériques, clips musicaux, publicités, courts-métrages d'animation).
  • Conception d'habillages pour des émissions télévisées.
  • Création d'applications multimédia.
  • Portions d'interfaces de jeux vidéos
  • Création de diaporamas interactifs.
  • Création de bannières publicitaires.
  • Distributions marketing sur CD.
  • Diffusion de vidéos via le Web.
  • Module Web permettant d'interagir avec une base de données.
  • RIA ou Rich Internet Application.

À partir de Flash MX (version 6.0, MX pour 'Multimedia eXperience'), Flash est devenu l'outil standard de création et de publication de contenus et d'applications dynamiques destinés aux ordinateurs de bureau et aux périphériques mobiles. Flash n'est souvent plus identifié comme un simple logiciel d'animation. Flash est de plus en plus utilisé pour développer des applications Rich Internet Application (RIA) aux contenus dynamiques mais également des applications dites "off-line". De grands groupes n'hésitent pas à exploiter les possibilités de Flash, et notamment les possibilités d'interfaçage dynamique en fonction de l'utilisateur. (Ex. : Eurocopter a développé ses outils de formation en Flash. Que ce soient pilotes ou mécaniciens, tous les intervenants accèdent à la formation qui les concerne via une interface adaptative développée en Flash.)

Depuis Flash MX 2004 (version 7.0), Flash tend à devenir un Environnement de développement intégré (IDE) complet à l’instar de Visual Studio qui permettra à terme ce qu'on appelle le Rapid Application Development (RAD), une méthode de conception de logiciel basée sur l’utilisation de composants pré construits.

La technologie Flash est utilisée dans de nombreux domaines d'applications et supports :

[modifier] Limitations

L'inconvénient pour les utilisateurs est la nécessité de la présence d'un composant (plug-in) sur le navigateur de l'internaute. Ce composant existe désormais sur de nombreuses plateformes (Pc, Mac, Pocket Pc, Psp, Mobiles...) et systèmes (Windows, OSX, Linux, etc.). À noter que sa dernière version (Flash Player 9), utilisée désormais dans de nombreux sites, est disponible à nouveau pour les systèmes UNIX, au contraire de la version précédente (Flash Player 8). Cette limitation pouvait être cependant contournée en utilisant Wine afin d'émuler Internet Explorer ou tout autre navigateur fonctionnant sur une plate-forme Windows. Toutefois, ce support reste partiel. Ce plugin ne prenant en charge que certaines versions de Linux (navigateurs basés sur GTK+2, drivers sonores ALSA, aucun support d'OSS, ni d'esd), un certains nombre d'internautes ne peuvent pas visualiser les animations flash les plus récentes.

Selon Macromedia, le lecteur Flash (plug-in ou ActiveX pour Internet Explorer sous Windows) est actuellement présent sur 97 % des navigateurs du monde entier, dont 90% possèderaient la dernière version, d'après une étude réalisée par NPD. D'autres sources, comme Webhits, avancent des taux inférieurs à 70 % en 2005.

L'inconvénient pour les auteurs est l'assujettissement à un logiciel propriétaire pour créer des fichiers Flash, ainsi que le recours à un format dont seul Macromedia dirige l'évolution future. Cependant, la publication en octobre 1998 des spécifications du format .swf version 3 a rendu plus accessible le développement d'applications compatibles avec Flash. À l'heure actuelle, de très nombreux logiciels tels que OpenOffice.org ou Toonboom studio (dessin animé) peuvent exporter dans ce format. Toutefois une partie des technologies utilisées dans le lecteur ou plug-in Flash restent non-publiques ou sujettes à brevet (compression audio et vidéo par exemple).

Le composant Flash Player est un plug-in propriétaire (ou un ActiveX) dont les sources ne sont pas disponibles. D'autres projets de lecteurs Flash existent, comme GPLFlash, à un stade d'aboutissement variable.

Le langage ActionScript, qui accompagne Flash est un langage de script basé sur Ecmascript/Javascript. Toutefois le plug-in n'inclut pas d'interpréteur ECMAScript, mais compile ce langage ActionScript en un bytecode qui peut ensuite être interprété par le lecteur.

La technologie Flash étant de plus en plus utilisée pour du contenu publicitaire, parfois intempestif, il a été créé pour Mozilla et ses dérivés des extensions comme FlashBlock (voir Liens externes) permettant de bloquer le contenu Flash publicitaire, le chargement de pages d'introduction non désirées et les requêtes d'installation de Flash.

Contrairement au cas de son « grand frère » Director et des ses « Xtras », Flash n'est pas prévu pour être étendu à l'aide de plug-ins. Il est possible d'intégrer des composants ou 'Components' supplémentaires à télécharger sur le site de l'éditeur, ou réalisés par de nombreux développeurs ; ces composants sont eux-même développés en technologie Flash et sont intégrés de manière transparente et avec la compatibilité inter-plateforme que cela implique, à la différence des Xtras de Director qui sont des bibliothèques externes pouvant utiliser différentes technologies et parfois spécifiques à certaines plateformes.

Enfin, étant donnée la large diffusion du format flash, le développement d'un programme de lecture compatible a été mis sur la liste des objectifs prioritaires de la FSF. Le projet s'appelle Gnash.

[modifier] Accessibilité des sites web

Comme pour un site internet rendu en XHTML ou en HTML, le développement d'un site en Flash accessible impose un travail supplémentaire ainsi que certaines contraintes de développement. Toutefois l'automatisation de l'accessibilité du contenu flash, tout comme son interprétation par défaut par des dispositifs à destination de certains publics (tels que les mal-voyants ou les handicapés moteurs) n'existe pas et serait techniquement extrêmement compliquée[réf. nécessaire].

[modifier] Référencement

À l'instar de Javascript et notamment d'AJAX le contenu Flash n'est que partiellement interprété par les moteurs de recherche, le référencement des sites en flash nécessite donc lui aussi un travail spécifique, d'autant plus efficace qu'il sera pris en compte tôt dans le développement d'un site en Flash. Une solution couramment adoptée, adaptée aux sites dynamique, et donnant de très bons résultats est de créer une version HTML du site qui sera lisible par les moteurs de recherche, la technologie javascript renvoyant les visiteurs vers une version en Flash. L'avantage de cette solution est aussi de résoudre le problème de l'accessibilité du contenu.

[modifier] Notes et références

[modifier] Liens internes

  • Scalable Vector Graphics (SVG)
  • Flash peut servir à réaliser de la BD en ligne
  • Flash peut servir à réaliser un récit sur support numérique
  • Flash peut servir à réaliser une animation en ligne comme XiaoXiao
  • Les logiciels Gnash, issu du projet GNU se veut une alternative libre au lecteur Flash.
  • Un ensemble de logiciels open-source permettent de produire du format .swf ou de travailler avec Flash - le plus utilisé professionnellement est MTASC.

[modifier] Liens externes