web-dev-qa-db-fra.com

Comment HTML5 peut-il "remplacer" Flash?

Un sujet de débat qui a connu une résurgence depuis le dévoilement de l'iPad est la question de Flash par rapport à HTML5. Certains suggèrent que HTML5 remplacera un jour Adobe Flash.

Je ne développe pas de logiciel fonctionnant dans un navigateur, , ma compréhension (limitée) est la suivante:

  • HTML est un langage de balisage de texte pur qui est transmis via HTTP à un navigateur client. Le navigateur client interprète le balisage et rend (avec plus ou moins de succès) la page conformément à une spécification standard.
  • Adobe Flash est un cadre de propriété permettant de travailler avec de l’audio, de la vidéo, du son et des images raster/vectorielles. Il nécessite des outils de création spéciaux (un compilateur, peut-être?) Et un lecteur personnalisé disponible en tant que plug-in pour la plupart des navigateurs courants.

Quelqu'un pourrait-il expliquer (à ce développeur C/C++) comment il est possible d’un point de vue technique/de codage qu’un balisage textuel langage (HTML5) pourrait être considéré comme un remplacement à un cadre multimédia (Flash)?

S'il vous plaît, pas d'argument critique - juste des faits techniques.

139
Mike Willekes

Ce que les gens appellent vaguement HTML5 dans le contexte de cette discussion est la combinaison de HTML en tant que langage de balisage, CSS qui spécifie comment il est rendu et du code javascript qui manipule le HTML et le CSS de manière dynamique.

En outre, HTML5 contient non seulement les éléments de texte standard, mais également <canvas> sur lequel des graphiques 2D peuvent être dessinés, et <video> éléments qui intègrent la vidéo (comme son nom l’indique).

Ainsi, dans une implémentation à part entière de HTML5, vous pouvez implémenter des sites Web dynamiques sans utiliser Flash. Un exemple est la version HTML5 de Youtube, récemment introduite en tant que version bêta pour les utilisateurs de Safari/Chrome, voir ici . Un autre est un émulateur NES en javascript + HTML. (Et bien ce dernier ne concerne pas vraiment HTML5 ... il utilise <canvas>.)

85
Yuji

Lorsque Steve J. a déclaré que HTML5 était l'avenir, il n'a pas pris la peine de préciser que cette affirmation faisait réellement référence à l'utilisation la plus répandue de Flash aujourd'hui, à savoir la vidéo. Peut-être n’a-t-il pas expliqué cela à dessein, afin que de nombreux utilisateurs mal informés qui souhaitent regarder Hulu sur leur iPhone se déchaînent contre Flash. Ce qui est exactement ce qui se passait .. C'est agaçant et j'ai perdu le respect de Steve.

La pile HTML5 (html, css et JS) ne remplacera PAS Flash. Je développe du contenu Flash depuis plus de 10 ans et je suis également très compétent en JS. Je réfléchis à l'idée d'utiliser JS pour des tâches où ActionScript peut réaliser la même chose avec 50% de code en moins. Certaines tâches seront très difficiles, voire impossibles, à réaliser avec JS et CSS. Pour les animations rudimentaires et les fonctionnalités de type JQuery, bien sûr, HTML5 peut être une option viable à la place de Flash. Mais pour les jeux complexes et les RIA, je ne le vois pas. Actionscript a évolué pour devenir un langage robuste et complet.

L’autre élément important est que le lecteur Flash est mis à jour périodiquement par Adobe pour résoudre les problèmes éventuels. Comment vont-ils mettre à jour/améliorer les spécifications HTML5 si cela devient la norme et que Flash passe au revoir??? Ils ne vont pas. Vous devez attendre que HTML6 et tous les navigateurs le prennent en charge. Ce qui signifie que vous finissez par attendre 5 à 10 ans. Excellent moyen de nous ramener à 1998. Non merci, je vais rester avec Flash pour le moment.

Bien que les standards ouverts soient un objectif louable, je ne vois pas cela comme ils le disent si bien ...

Mes deux centimes.

67
Dresden2

Je pense que certaines personnes ici programment des snobs et n'écoutent pas. Moi aussi, je suis un développeur Flash débutant et je ne veux pas qu'il s'en aille. Tu sais pourquoi? Parce que les gens CRÉATIFS peuvent utiliser Flash pour développer très facilement ce qui se trouve dans notre cerveau. Une personne qui aime dessiner et créer des scènes n'aime pas nécessairement coder. Taper un tas de "phrases", ce n'est pas dessiner et animer! Ce que vous dites à propos de HTML5, c'est comme dire que Picasso et Dali auraient dû apprendre un langage de programmation pour pouvoir peindre. Ridicule, non?

C'est pourquoi les gens préfèrent Flash au HTML5. Ce n’est pas une question d’intérêt personnel, c’est simplement reconnaître que les personnes capables de créer du contenu Web animé et animé devraient plutôt être en mesure de créer notre propre vision plutôt que d’acquérir une compétence sans rapport ou de s’appuyer sur une autre personne pour l’interpréter.

Au lieu de ridiculiser, vous pouvez créer un environnement visuel HTML5 qui rivalise avec Flash.

36
Katryna

comment est-il possible, d'un point de vue technique/de codage, qu'un langage de balisage textuel (HTML5) puisse être considéré comme un remplacement d'un cadre multimédia (Flash)?

HTML5 est le nouveau nom chaud pour "pile de technologies Web", pas simplement "langage de balisage".

Il a un langage de programmation (JavaScript), comme le fait Flash; un ensemble d'API, augmentant considérablement dans le cadre des efforts couramment appelés "HTML5", des moyens de dessiner des graphiques (SVG, <canvas>), de lire de l'audio et de la vidéo (<audio>, <vidéo>).

Contrairement à Flash, les "applications HTML5" sont traitées par le navigateur, et non par un plugin de navigateur propriétaire, ce qui est bien - du moins pour les éditeurs de navigateurs (voir l'article correspondant de cet article de blog - merci Jotham) . Par exemple, il est possible pour un fournisseur de navigateur de résoudre les problèmes (et de ne pas attendre Adobe) - IIRC Apple a cité Flash comme étant la raison n ° 1 des plantages parmi tous les plantages sur Mac.

[édité pour supprimer les affirmations "les normes ouvertes sont meilleures" que je suis trop paresseux pour sauvegarder]

10
Nickolay

Ce n'est pas simplement HTML5, mais lorsque l'adoption du navigateur est terminée. Par exemple, la présence de la balise HTML5 <video> Ne signifie rien sans un lecteur vidéo fourni par le navigateur pour présenter la vidéo (à ce stade, nous espérons que la vidéo Flash ne sera plus nécessaire). Il en va de même pour la balise <audio>.

De plus, l'élément de canevas de HTML5 (associé à JS) permet, dans un navigateur, d'afficher des graphiques beaucoup plus avancés qu'auparavant.

8
Doug Neiner

Eh bien, pour avoir une idée des capacités de HTML5/canvas + JavaScript, vous pouvez jeter un oeil à this qui est une implémentation de Wolfenstein 3D purement réalisé en HTML5 , sans utiliser de Flash (notez que vous avez besoin d’un navigateur doté de la toile, tel que Firefox, pour que cela fonctionne).

7
none

Ce n’est pas tellement que HTML5 puisse remplacer Flash en y faisant correspondre fonction par caractéristique. Il va de soi que la pile HTML5 (y compris JavaScript et CSS) peut être utilisée pour créer le même type d’applications Web riches pour lesquelles Flash était la seule option viable auparavant. Parce que le HTML promet de remédier également à certaines des lacunes de la plate-forme Flash, il est possible qu’il remplace Flash dans cet espace.

Cette discussion est très centrée sur la technologie utilisée pour rendre l'application accessible aux utilisateurs. Il ne traite pas de la facilité avec laquelle les auteurs sont en mesure de créer le contenu qui sera livré à leurs utilisateurs. Vous avez déjà indiqué que Flash est associé à un ensemble d’outils commerciaux spécialement conçus et commercialisés par Adobe pour répondre aux besoins des auteurs de contenu riche. De telles solutions pour HTML5 ne sont pas encore tellement adoptées. Pour les développeurs qui considèrent la création principalement comme du codage, ce n’est pas un gros problème et ils n’auront pas de difficulté à se faire apprécier par HTML5 (et beaucoup le font déjà). Pour les auteurs qui n'ont pas de formation en développement/codage, ceci peut être une autre histoire et pour eux, la viabilité de HTML5 dépendra grandement de la disponibilité d'outils de création intégrés. Peut-être que les outils Adobe Flash produiront au format HTML5 au lieu de SWF dans quelques années ...

6
VoidPointer

Ce que ces gens stupides et non créatifs n’ont pas compris, c’est que HTML5/Javascript/CSS est très chargé au début. Tout cet actif est encore entièrement un fichier texte RAW. pas de compression, pas d'optimisation de bytecode et ce sera toujours comme ça. Donc, pour les développeurs de jeux, ce n’est pas une option si vous avez toute votre source à portée de main du vol. Flash vous permet de compiler votre code source de manière plus compacte tout en restant capable de créer votre contenu dynamique de manière graphique serrée. Le dessus de ce flash supporte déjà les shaders, l'accélération matérielle, les filtres de pixels (Pixel bender) et les effets de calque. Jusqu'à ce jour, vous ne pouvez pas faire en sorte que des éléments html lâchent une ombre avec facilité et simplicité. HTML5 essaiera simplement de remplacer Flash en tant que lecteur multimédia, mais puisque la popularité de Flash est due à sa cohérence, il sera difficile à vendre. Ma haine des CSS et du Javascript se laisse deviner par le fait que 40% du code javascript est destiné à la compatibilité des navigateurs et que l’implémentation CSS n’est JAMAIS cohérente chez différents éditeurs de navigateurs. Jusqu'à ce que les nerds résolvent ce problème, Flash ne sera jamais remplacé. Le fait est que tout ce que vous pouvez faire en HTML5, nous pouvons le faire en flash plus rapidement et mieux.

J'ai déjà vu le Wolfenstein 3D dans Canvas. Son inférieur. et minuscule. Nous pouvons créer un meilleur moteur 3D avec une fenêtre plus grande. Bas ça?

5
Shinto

Flash ne se limite pas à l’audio/vidéo. Récemment, Flex est devenu très populaire en raison de son modèle de programmation riche et de sa capacité à développer des interfaces utilisateur hautes performances.

si HTML 5 ou autre doit devenir populaire, le moteur JavaScript intégré doit tout d'abord être plus efficace. Flex/Flash ces jours sont populaires en raison de la robustesse du moteur ActionScript.

4
Satish

Beaucoup de gens prétendent que HTML5 va tuer des plugins comme Flash et Silverlight, mais ce n'est tout simplement pas le cas.

Prenons par exemple ce scénario.

Chargez un fichier binaire sur une URL. Pour les besoins de la démo, nous allons utiliser le format shapefile (.shp), qui contient des polygones géographiques dans un système de coordonnées.

Analyser le contenu de l'octet côté client.

Dessinez le contenu de manière efficace.

Démo: http://www.libertyvanguard.com/liberty-gis

Ceci est juste un exemple où la technologie de plugin ne sera pas remplacée par HTML5.

4
Liberty Vanguard

J'espère que nous parlons de Comment HTML5 peut-il remplacer swf et flv. Pas flash entièrement. Je suis un développeur Flash (amature). Pour moi, quelqu'un qui est plus artistique que programmeur, Flash est assez facile à utiliser (la plupart du temps). Comment faire en sorte qu'un personnage de dessin animé traverse l'écran en HTML5? Ou quelque chose de simple, comme transformer un cercle en un carré? Je n'ai sûrement pas écrit cela comme code. Je ne suis tout simplement pas très intelligent dans la programmation pour y parvenir. Flash est relativement simple. Dessinez tous vos graphiques dans l'application de votre choix (illustrateur pour moi), puis cousez-les avec un script d'action. Je vous aime tous les deux Apple et Adobe. Veuillez trouver une sorte de compromis.

4
Damo

Avec les javascripts permettant de suivre les événements de l'interface graphique et de créer des scripts pour les nouveaux éléments HTML 5, vous obtenez une grande partie de l'offre de Flash.

HTML 5 comporte un certain nombre de nouveaux éléments. L'un d'eux s'appelle Canvas. Avec elle, vous pouvez dessiner tout ce que vous voulez à l'écran, dans ses limites. Vous utilisez javascript pour dessiner dessus et vous pouvez attraper tous les clics de souris et similaires avec javascript. Si vous avez l'habitude d'utiliser des kits d'outils graphiques sur le bureau, tels que Tk, GTK, vous pouvez comparer ces nouveaux éléments à certains des widgets de ces kits d'outils graphiques.

Regardez thejit pour voir un exemple de graphes en HTML 5

3
jeorgen

J'espère bien que HTML5 pourra livrer la marchandise et peut-être ne pas remplacer entièrement le flash, mais au moins en ce qui concerne la vidéo. Bien que la vidéo flash soit de petite taille, elle nécessite beaucoup trop de traitement. Allez sur youtube sans flashblock activé, puis ouvrez le gestionnaire de tâches. Vous pouvez maintenant voir comment les processus de firefox sortent de la page chaque fois que vous visitez un site géré par flash, tel que YouTube. Mon conseil obtenir Flashblock.

3
Rick Savage

Flash fonctionne avec une timeline, une scène et des scènes et permet de charger des films les uns sur les autres. Il possède également une peau d'oignon, une interpolation et d'autres outils d'art vectoriel qui facilitent les animations de dessins animés via des animations image par image. Vous faites tout cela, puis vous contrôlez une très petite quantité de script/script d'action. HTML Java CSS est loin d'être une expérience artistique pour l'auteur et il faut beaucoup plus de codage pour obtenir des résultats similaires - le flash est beaucoup plus rapide, facile et convivial. Je doute que Flash le soit. aller n'importe où pressé.

3
animator

HTML5 est en effet loin de remplacer les technologies Flash ou Silverlight UI. Et le problème réside non seulement dans le nombre limité de composants HTML5 requis par HTML5 dans l'interface utilisateur d'une application, mais également dans le fait qu'il ne permet pas de créer des composants personnalisés de manière à ce qu'ils s'intègrent parfaitement au moteur d'exécution.

Jetez un oeil à Ample SDK - JavaScript UI Framework , son architecture hérite largement de ce que vous trouverez dans Flex, Silverlight ou Gecko. L’une des technologies de l’interface utilisateur compatible avec XUL est XUL, stylable en CSS et programmable en JavaScript avec les API XUL DOM ou jQuery. Vous pouvez également créer votre propre technologie d'interface utilisateur par-dessus le cadre.

3
Sergey Ilinsky

Je pense que HTML5 remplacera la majeure partie du flash/flex, qui restera probablement sous une autre branche car canvas est cool. De nouvelles bibliothèques vont venir. Mais tant que JS restera dans les faits singlethreaded ce ne sera pas si rapide, en particulier avec les jeux, à supposer qu'Adobe n'abandonne pas.

3
tomasb

Je doute que cela vienne remplacer tout ce que Flash est capable d’englober. Toutefois, si vous parcourez le Web de nos jours, vous constaterez que Flash est largement utilisé pour diffuser du contenu vidéo ou audio dans le navigateur. Quelque chose qui est inclus dans HTML 5, bien que paralysé à ce jour, car ils ne pouvaient se mettre d’accord sur aucun codec standard.

Certes, tous ces jeux et publicités Nice Flash ne disparaîtront pas uniquement à cause de HTML 5 et HTML 5 ne pourra pas les remplacer. Mais il vise à pouvoir remplacer les utilisations qui en réalité peuvent fournissent du contenu. Pour les graphiques vectoriels, il existe également SVG qui pourrait bénéficier d’un traitement spécial.

Reste à savoir si ce sera vraiment la mort de Flash pour la vidéo. Les problèmes de codec vidéo HTML 5 pourraient être résolus tôt ou tard. Toutefois, Flash restera très probablement le support de choix, les fournisseurs de contenu souhaitant avoir un contrôle plus strict sur ce qui sera livré, les techniques de gestion numérique des droits et techniques similaires, etc.

3
Joey

Le navigateur moderne prenant en charge norme HTML5 permet de lire les fichiers multimédias pris en charge dans le navigateur, sans nécessiter de plug-ins tiers.

Vous pouvez essayer cela par vous-même. La dernière version de Safary et de Google Chrome (Firefox 3.6 également) peut jouer à <video> balise directement dans une page HTML5. YouTube supporte maintenant HTML5 .

C'est pourquoi l'iPad pourra lire des vidéos si le site utilise HTML5, sans les plugins Adobe Flash, à l'aide d'un navigateur Safari conforme à la norme HTML5.

3
Donny Kurnia

Sujet intéressant. Je fais écho au sentiment de la plupart des affiches: si HTML 5 fait de grands progrès dans la présentation multimédia de base, il ne pourra pas remplacer Flash. Tous les sites de jeux en ligne sont un bon exemple. Flash est capable de fonctionner sur la plupart des navigateurs sauf sur certains appareils mobiles.

Sur cette note, je pense que l’épuisement de la batterie est la raison initiale pour laquelle Steve Jobs ne souhaitait pas prendre en charge Flash sur iPhone et iPad. Cela pourrait mordre Apple (sans jeu de mots) sur la route. Android 2.2 aura un support Flash (mais il n'est pas clair si tous les fabricants de matériel le supporteront - ils auront confiance en leurs batteries).

En outre, il semble que Flash 10+ sera une chose sûre pour les appareils Blackberry à venir, y compris les téléphones BB, la prochaine tablette BB Playbook (au fait, ce jouet a des caractéristiques inimaginables - je suis impatient de pouvoir mettre la main dessus tout de suite. l'année prochaine).

Je suis prêt à parier que Flash continuera d'être important dans Web Dev même après que le support HTML 5 devienne universel.

2
Krigs

J'ai d'abord entendu le commentaire de "HTML qui remplace Flash" de Steve Jobs. (Il déteste Flash peut-être parce qu'il se bloque sur ses ordinateurs Mac. Je ne suis pas sûr. Je pense qu'il est déconnecté. La preuve en est son produit ridicule "l'iPad".)

Le but est de savoir QU’EST BON IS IL POUR LES DÉVELOPPEURS? Réponse: pas aussi bon que Flash. Pourtant. Pourquoi est-ce que je dis cela avec mon expérience limitée? C’est tout ce qui est compatible Le code dont vous avez besoin en Javascript pour fonctionner dans tous les navigateurs. CE QU'UNE CHARGE DE RUBBISH. ActionScript/Flash est un morceau de code/application pour TOUS les navigateurs.

Flash propose également des outils logiciels de développement graphiques (et non graphiques) pour rationaliser le processus.

Donc, LA RÉPONSE COURTE IS CET Adobe ne laissera pas HTML5 "remplacer" Flash, au moins à court terme. Mais il peut rivaliser avec Flash si les gens créent assez d'outils de développement pour cela particulièrement graphique WYSIWYG des outils, comme si Google développait un éditeur WYSIWYG facile à utiliser pour créer des applications GWT.

2
Navigateur

Nous développons actuellement un LCMS. L'un des domaines est un outil de création entièrement WYSIWYG pour le développement de supports de formation conformes à SCORM et AICC contenant une animation, une vidéo, un audio et de multiples types d'évaluation avec interaction. L'outil semble proche de l'apparence d'un Power Point, permettant à l'utilisateur de glisser-déposer facilement des objets d'apprentissage dans la diapositive avec des images, de redimensionner des images, de les déplacer, de superposer du texte, d'ajouter des tests, etc.

Cet espace de travail est réalisé actuellement dans Flex et offre d'excellentes performances. Même Google Docs/Presentations n'est pas à la hauteur de la flexibilité et des performances de cette application.

Je me demande si une application de cette envergure peut être développée avec HTML5 sans énormément de ressources. Nous sommes une petite entreprise avec un petit groupe de développeurs.

2
Jorge

Il est possible que le langage de balisage textuel (HTML5) remplace un framework multimédia (Flash).

La solution est simple: il suffit de déplacer le cadre dans le navigateur et de devenir un standard ouvert. Non seulement le cadre multimédia, le navigateur peut inclure beaucoup d'autres fichiers appartenant au système d'exploitation.

Il est possible que le navigateur soit finalement le système d'exploitation (mode utilisateur). Le système d’exploitation actuel sera limité au mode noyau, la plupart du temps traitant des matériels.

2
Jack

Un angle cinglant évident et plus large qui est rarement fait est que le terme "flash" référencé de manière vague englobe en fait toute la plate-forme Flash, et cela inclut l'IDE Flash.

Les animateurs et autres types artistiques qui utilisent cette technologie pour créer des dessins animés et des animations complexes dépendent presque entièrement du IDE pour leur travail. Ce n'est tout simplement pas possible sans cela. Fin de l'histoire. Ce n'est pas seulement la technologie au niveau de la spécification de langue qui compte! Il s’agit également des "technologies de support" dans ce cas IDE (je dis "supportant" mais le Flash IDE est vraiment une technologie intégrée au reste de la plate-forme Flash).

Si quelqu'un crée un IDE HTML5 qui présente des fonctionnalités comparables à celles de l'IDE Flash, c'est génial, mais je suis surpris que le point soit rarement présenté. Les artistes font autant partie du débat que les programmeurs, et il est déraisonnable de dire que cela ne les regarde pas.

Donc, pour répondre directement à votre question: HTML5 serait considéré comme une alternative tout à fait raisonnable - ou même un remplacement - à un framework multimédia tel que Flash si et seulement si un IDE correct est construit pour celui-ci, le faisant ainsi passer à un cadre multimédia aussi.

Il n’est tout simplement pas réaliste de faire valoir un argument sans prendre en compte les IDE. Si la question est spécifiquement "Le format HTML5 dans son état terminé, sans IDE, peut-il être une alternative à Flash pour les applications autres que les animations complexes animées manuellement?" alors la réponse serait probablement oui et nous rentrerions tous à la maison.

2
helloworlder

Les développeurs Web s’intéressent toujours à un navigateur comme IE6, qui est très ancien, vous pouvez donc être sûr que Flash et des technologies similaires seront là pour très longtemps ...

1
Deniz Acay

Autrement dit, nombreux sont ceux qui espèrent que les fonctionnalités HTML5 associées à javascript peuvent fournir une expérience Web graphique meilleure, moins chère et plus efficace que le flash. Considérez que de nombreux sites Web sophistiqués tels que gmail, google maps et youtube peuvent fonctionner sans flash en utilisant HTML et javascript. Les améliorations apportées à javascript et HTML permettent aux sites Web de développer des fonctionnalités d'animation et de graphisme encore plus riches sans avoir à payer à Adobe.

1
Doug T.