Lecteur Flash compatible avec l'API video de HTML 5

Video element Pour ceux qui pensent déjà personnaliser leur lecteur vidéo qui utilise l’élément video de HTML 5, j’ai fait un petit Flash+Javascript qui reprend l’API défini dans la documentation.

Introduction

HTML 5 introduit de nouveaux éléments dont l’élément video qui permet d’afficher un média de type vidéo sur une page HTML. Certains navigateurs modernes commencent à l’implémenter même si les spécifications ne sont pas encore figées.

Ces navigateurs peuvent donc afficher des vidéos ainsi que leur contrôleur. La documentation indique qu’il y a une API qui permet de manipuler la vidéo sans utiliser le contrôleur par défaut.

L’idée, c’est de fournir un lecteur vidéo en flash compatible avec cette API afin de réutiliser un contrôleur personnalisé destiné au départ à l’élément video. Celà permet de faire une amélioration progressive entre le Flash et le HTML 5, tout en gardant le même design de contrôleur qui va bien avec le site.

Exemple

Voici un exemple de page qui affiche une vidéo avec l’élément video si le navigateur le supporte, sinon un Flash, voire un texte alternatif s’il n’a aucun des deux : http://resources.neolao.com/flash/components/flv_player_html5

En lisant la documentation, j’ai tout de suite compris qu’un Flash ne suffirait pas. Il me fallait aussi un objet Javascript qui implémente des méthodes comme addEventListener ou des setters comme currentTime. En effet, le dialogue entre le Flash et Javascript est limité par des appels de méthodes et des arguments de type String, Number, Boolean, Array ou Object.

Conclusion

La seule difficulté, c’était de simuler un setter parce que je ne pouvais pas l’utiliser à cause d’Internet Explorer, encore lui … Sinon c’est plutôt simple et la documentation est assez claire.

Je n’ai pas terminé de reproduire tous les comportements, il me reste quelques évènements et des propriétés à remplir.

Commentaires