ordinateur-interfaces-riches

Adobe recentre Flash sur le jeu et la vidéo HD

Cette semaine Adobe a publié par l’intermédiaire de Mike Chambers la feuille de route d’évolution de la plateforme Flash : Adobe roadmap for the Flash runtimes. Un document à la tonalité un peu trop formelle à mon goût, mais qui a le mérite d’illustrer la volonté de transparence d’Adobe quand à l’avenir de Flash et de clarifier son positionnement vis-à-vis de HTML5.

Une publication qui tombe à pic, car Adobe s’est fait pas mal chahuter ces derniers temps (Adobe toujours dans la tourmente malgré des nouveautés intéressantes), non pas que ses produits ne sont plus bons, mais parce qu’une tranche de la blogosphère high-tech a décidé que Flash n’était plus à la mode. Mettons tout de suite les choses au point : avec cet article, mon but n’est pas de prendre la défense d’Adobe, mais de militer en faveur des interfaces riches, de TOUTES les interfaces riches, pour que les concepteurs de sites et de services en ligne aient une palette d’outils la plus large possible afin d’améliorer et d’enrichir l’expérience des internautes.

D’où vient Flash et où va cette technologie ?

Comme précisé dans le document, Flash est une technologie d’animation vectorielle créée dans les années 90. Suite à un accueil enthousiaste de la communauté, ce plug-in a commencé à intégrer toujours plus de possibilités (animations, audio, vidéo, accès aux périphériques…). Si le rythme d’innovation avec Flash a été aussi soutenu, c’est parce que la technologie était tirée par un écosystème de développeurs frustrés de voir les spécifications de HTML stagner. Résultats : ils se sont rabattus sur Flash pour pouvoir délivrer des expériences toujours plus riches à des internautes en recherche de sensations et de spectaculaire.

Puis en 2008, Adobe a sorti AIR, un environnement d’exécution multiplateforme pour pouvoir encapsuler des contenus Flash dans une similiapplication. L’objectif était de pouvoir proposer une solution de distribution universelle pour des applications légères et des jeux.

Jusque-là tout se passait bien, puis sont arrivés les smartphones et notamment l’iPhone d’Apple qui a refusé Flash pour pouvoir préserver l’intégrité de son modèle de distribution (iTunes). Certes, il y avait également l’alternative d’Android, mais les équipes d’Adobe ont visiblement rencontré des problèmes de performance insurmontables. De ce fait, décision a été prise de se concentrer sur un portage de AIR sur les smartphones afin de se conformer au modèle de distribution de « petites » applications mobiles via des marketplace. Aujourd’hui la situation est à priori stabilisée puisque ce mode de fonctionnement (des contenus Flash encapsulés sous forme d’applications mobiles) semble être le compromis universellement accepté.

Plus récemment, le W3C a enfin débloqué la situation et repris son travail de normalisation pour faire évoluer les spécifications de HTML. Une très bonne nouvelle, car les évolutions apportées par HTML5 vont grandement simplifier la création d’interfaces plus sophistiquées, surtout avec CSS3 (HTML 5 + CSS 3 = une révolution pour les interfaces web). Pour vous éviter une longue explication, disons qu’avec CSS3 et HTML5, le HTML va reprendre sa place et Flash va reprendre la sienne (Flash et HTML5 ne sont pas concurrents).

Deux créneaux porteurs : les jeux et la vidéo en ligne

Comme précisé plus haut, le but de cette roadmap est de clarifier le positionnement de Flash. Ce nouveau positionnement va donc s’articuler autour de deux créneaux : les jeux et la vidéo en ligne.

Au sujet des jeux en ligne, les ambitions d’Adobe sont clairement affichées : ils veulent faire de Flash la console virtuelle pour le web en capitalisant sur les possibilités offertes par le plugin (distribution universelle, accélération matérielle pour la 3D, prise en charge des périphériques…) ainsi que sur un écosystème de développeurs très dense. Ils comptent d’ailleurs aller encore plus loin en formalisant un Game Developer Program pour soutenir l’industrie et stimuler l’écosystème.

Certes, avec des technologies comme WebGL il est possible de faire de très belles choses (Gameloft Embraces HTML5 With 3D Game GT Racing), mais la population ciblée est beaucoup plus restreinte, et les environnements de développement ne sont pas aussi sophistiqués (à l’image de Unity3D).

Autre domaine où Flash excelle : la vidéo en ligne. C’est d’ailleurs sur ce second créneau qu’Adobe souhaite intensifier ses efforts pour faire de Flash LE moteur de la vidéo pour le web. Là encore, vous pourriez me dire que HTML5 propose des lecteurs vidéo très performants, mais diffuser de la vidéo ne se limite pas à déployer un lecteur. Sur ce point, les équipes d’Adobe vont travailler pour pouvoir étendre le support à de nouveaux codecs, enrichir les possibilités de manipulation des vidéos, collaborer de façon étroite avec les constructeurs et CDN pour optimiser les flux de streaming, proposer des solutions de DRM plus fiables pour protéger les contenus et autoriser des outils d’analytics plus sophistiqués.

Quelles évolutions pour Flash et AIR ?

Plusieurs stades d’évolution de Flash sont décrits dans la roadmap (qui devrait d’ailleurs être enrichie au fur et à mesure) :

  • Une version 11.2 qui devrait sortir très bientôt avec un support plus étendu des cartes graphiques (rétrocompatibilité jusqu’en 2008), des astuces pour les jeux (verrouillage de la souris, support du clic droit, désactivation du menu contextuel…) et de meilleures performances pour la vidéo ;
  • Une version « Cyril » qui devrait sortir au cours du second trimestre et apporter d’autres améliorations techniques ainsi que la possibilité de streamer des textures 3D ;
  • Une version « Dolores » programmée pour la seconde moitié de l’année avec d’autres améliorations techniques et une rétrocompatibilité sur les cartes graphiques sorties depuis 2005 ;
  • C’est par contre en 2013 que sortira normalement la version « Next » avec une réécriture du noyau et une nouvelle machine virtuelle ActionScript supportant la future version d’ActionScript.

Visiblement cette nouvelle version d’ActionScript va être une authentique révolution, mais je ne possède pas les compétences pour en apprécier la portée. Je laisse donc le soin à d’autres de commenter cette partie.

Concernant AIR, il n’y aura pas de grosses évolutions (en dehors de celles induites par le Flash Player encapsulé dedans). Les équipes vont visiblement travailler à l’amélioration des APIs pour offrir plus de modularité et de stabilité aux développeurs tiers.

Pour ce qui est de la compatibilité sur les différentes plateformes :

  • Flash et AIR continueront d’exister sur les ordinateurs (Mac et Windows), mais le support de Linux ne sera assuré qu’au travers de Chrome (Google privilégiant ainsi Flash à AIR sur ses chromebooks).
  • Flash ne sera donc plus disponible sur les smartphones ou tablettes puisque c’est l’option AIR qui a été privilégiée. Il y a deux semaines, Adobe a officiellement confirmé que Flash ne serait plus supporté par le navigateur d’Android (Adobe confirms: no Flash for Chrome on Android), cette décision va permettre aux équipes de concentrer leurs efforts dans une même direction. Précisons que les problèmes de performance et de consommation d’énergie qui plombaient l’utilisation de Flash dans le navigateur d’Android se retrouvent également avec javascript (ils vont devoir faire de gros progrès sur la machine virtuelle).
  • Pour les télévisions connectées, même si certaines plateformes embarquent Flash dans le navigateur, il semblerait que la priorité soit encore une fois donnée à AIR.

Voilà, tout est dit dans ce document et nous y voyons maintenant beaucoup plus clair.

Flash est mort, vive Flash !

Donc si l’on résume ce qui a été annoncé : Les RIAs exploitant Flash ne subsisteront que sur les ordinateurs, pour les terminaux mobiles et alternatifs (smartphones, tablettes, TV et voitures connectées…), les contenus Flash devront être distribués sous forme d’applications.

Cela veut-il dire qu’Adobe jette l’éponge et que finalement Flash n’est pas un bon produit. Non, bien évidemment que non, car de toute façon, une application AIR n’est qu’un contenu Flash distribué non pas dans le navigateur, mais au sein d’une application autonome. C’est donc la fin du Flash Player pour mobile, mais pas de Flash !

Le constat d’échec ne se situe donc pas au niveau de la technologie en elle-même, mais au niveau du modèle de distribution : les constructeurs ont fait le forcing pour imposer leur app store et sécuriser ainsi un minimum de revenu pour financer le développement de leur système d’exploitation. Dans l’absolu ce n’est pas plus mal, car même si ce système force les utilisateurs à payer un peu plus, il permet de tirer la qualité vers le haut en générant plus de revenus pour les développeurs et les distributeurs.

Moralité : vous n’avez pas fini d’entendre parler de Flash, ni d’HTML5, car ces deux familles technologiques vont maintenant pouvoir cohabiter en symbiose.