Le format FLV et gestion de la vidéo avec Flash
Prérequis et fichiers nécessaires :
Aucune connaissance particulière de Flash, ActionScript ou serveur, n’est réellement nécessaire pour suivre ce tutoriel.
Si vous avez des antécédents en vidéo, cela sera forcément un plus et vous aidera à mieux affiner vos réglages, lors de la compression de fichiers FLV.
Les logiciels utilisés au cours de ce tutoriel sont :
- Flash CS3 Professionnel
- Flash Video Encoder
- Fichiers nécessaires
Au travers de ce tutoriel, nous allons aborder la description et les bases de l’utilisation de vidéo dans Flash. Nous utiliserons les boites de dialogue classiques d’importation, puis nous explorerons les divers réglages du logiciel Flash Video Encoder CS3, fournis avec Flash Professionel CS3. Enfin, nous utiliserons le composant FLVPlayback en corrélation avec d’autres composants, et nous finirons par utiliser et voir les possibilités qu’apporte ActionScript, pour piloter de la vidéo.
Introduction à la gestion de la vidéo avec Flash
Depuis la version 4 de Flash, la vidéo s’intègre de mieux en mieux au fil des versions. Soit par des améliorations au niveau de l’ActionScript qui le pilote et le gère, soit par l’ajout de nouveau codec.
Player version | année | introduction des codecs |
---|---|---|
Flash 3 | 1998 | Mp3 |
Flash 4 | 1999 | Mp3 streaming – Video QUick Time |
Flash 6 – MX | 2002 | FLV – Sorenson Spark |
Flash 8 | 2005 | FLV – On2 VP6 |
Flash 9 Update 3 | 2007 | FLV – H.264 et AAC Audio |
Nous allons explorer au travers de ce tutoriel, l’intégration de la vidéo pour un player QuickTime, mais aussi la vidéo au sein d’un fichier SWF et la vidéo FLV extérieure et pilotée par un fichier SWF.
Le format FLV
Macromedia a mis en place un format vidéo propre à Flash, le FLV. Ce format utilise divers codec de compression et offre la possibilité d’ajouter des points de repères. Quelques infos sur le FLV depuis le site de Wikipedia, ou sur l’excellente page qui résume le format FLV et la vidéo dans Flash, sur le site de Open Source Flash. Le FLV en soit, est le format de vidéo, mais la vidéo elle-même est encodée selon des codec ou des normes. Voici les 3 disponibles :
Spark
Développé par la société Sorenson, le codec Spark est le premier codec qui est apparu avec le FLV. Un des avantages de ce codec est qu’il ne nécessite que la version 6 du player et offre une qualité très satisfaisante dans bien des contextes. Vous trouverez d’autres pistes d’information sur cette
VP6
Acheté en exclusivité pour le FLV à la société On2 Technologie, le codec VP6 est apparu à la sortie du Flash Player 8. Il a tout de suite été adopté par la communauté des développeurs, comme étant LE codec. Il est vrai que dans bien des cas, son taux de compression permet, à poids de fichier égal, en comparaison de Spark, d’obtenir une bien meilleure qualité. Mais ce n’est pas tout le temps le cas, tout dépend de la nature de l’image et du format de la vidéo (dimensions hautes ou larges). Voir les comparatifs à ce sujet.
Le codec VP6 intègre la gestion d’une couche alpha, ce qui permet de pouvoir à la volée, intégrer une vidéo dans un décor Flash, et de le modifier de manière dynamique et en temps réel, depuis le Flash Player, un peu sur le principe de la présentation de la météo. Cette version du codec nécessite minimum Flash Player 8.
H.264
Le h.264 est la dernière norme d’encodage et reste la plus avancée en rapport à ce qui se fait. Ce codec est pris en compte à partir de la version 3 du Flash Player 9.
Les comparatifs ou sites de discussion sur le sujet des codecs
Les outils de compression FLV
Squeeze
Développé par la société Sorenson, Squeeze propose une déclinaison de solutions d’encodage, qui permettent d’exporter la vidéo vers divers formats. Squeeze for Flash ne se cantonne qu’à du FLV et resserre l’utilisation. Vous pouvez ajouter le plug in On 2 video, pour permettre l’exportation vers du FLV utilisant le codec VP6.
Flix
Développé par la société On 2 technologie, Flix est une suite de logiciels qui permet d’encoder des vidéos au format FLV, mais qui s’intègre également parfaitement, dans l’ensemble de votre chaîne de production vidéo.
Flash Video Encoder
Ce logiciel est fourni en standard avec la version Flash Professionnelle. Bien qu’étant un petit gabarit comparé aux deux précédents, il reste une solution envisageable pour bien des situations et donne un résultat plus que satisfaisant. Nous aborderons un peu plus loin au cours de ce tutoriel, les différents écrans de réglages qu’il propose.
Riva
Riva FLV Video Encoder est une solution gratuite qui permet d’encoder les vidéos en FLV en utilisant les codecs Spark et VP6. Vous pouvez le compléter par Riva Producer Lite, qui, pour une poignée de dollars, vous permet de batcher et directement uploader l’ensemble des vidéos générées.
So Think
Sothink Flash Video Encoder offre une autre alternative pour l’encodage des vidéos. La dernière version de l’outil permet de générer des fichiers FLV, mais également SWF, ce qui, dans certains cas peut être utile. Quelques options complémentaires peuvent s’avérer intéressantes, comme la génération automatique de vignettes images, la conversion directe du format DVD, l’habillage des commandes… etc…
Super
Super v2008 build 25 est une autre alternative à l’encodage de vidéo en FLV. En fait, plus qu’une alternative, Super fait gratuitement ce que d’autres ne font pas en payant… :))
Importation de fichier vidéo
La manière la plus ‘guidée’ reste d’importer une vidéo dans Flash depuis le menu Fichier > Importer > Importer de la vidéo. Dès lors, une boite de dialogue s’ouvre et vous guide pas à pas sur les divers réglages nécessaires. Vous allez devoir passer une succession d’écrans de réglages pour terminer votre tâche. Lors du deuxième écran, vous devrez définir la manière d’utiliser la vidéo avec Flash. Une grande partie des formats vidéo disponibles sont utilisables, sauf certains comme le réal média, le mpeg 2, le divx.
Naviguez dans l’animation ci-dessous et survolez les options pour en découvrir les finalités. Promenez votre souris sur les diverses zones et et cliquez sur les boutons de l’animation ci-après.
Les divers modes de gestion de la vidéo
Voici, ci-dessous, la liste détaillée avec les principaux avantages et inconvénients de chacune des options d’importation de vidéo dans Flash.
Téléchargement progressif à partir d’un serveur web
Le téléchargement progressif à partir d’un site web fonctionne à s’y méprendre comme un stream… du fait que la vidéo se joue dès que la mémoire tampon s’est remplie ou actualisée. Seulement, comme tout bon serveur HTTP qui se respecte, il se peut qu’il y ait embouteillage dans la tuyauterie et la vid…éo… pou… rra …donn…. …. … er … l’impr… es…sion… d’…a…v….oir… le hoc….quet. C’est là en fait, que l’on réalise que nous ne sommes pas en flux continu.
Avantages
- Ne nécessite pas de serveur de streaming
- Facile et rapide pour mettre en place
- Fonctionne et reste suffisant dans bien des cas (daylimotion, youtube…)
- Fonctionne à partir du lecteur 6 de Flash
Inconvénients
- Peut interrompre ou ralentir la diffusion en cas d’encombrement
- Ne garantit pas de débit constant
- La partie de la vidéo non chargée ne peut pas être atteinte (déplacement dans le temps)
Diffusion en continu avec le service FVSS
Il s’agit d’une sorte de serveur mutualisé qui permet de ne pas avoir à acheter FMS ou FCS, et d’utiliser les services du serveur mis à disposition par son hébergeur. Il existe grand nombre de services aux Etats Unis, comme le présente Adobe sur cette page. En France, vous trouverez des prestataires comme ZonePro, qui propose un service équivalent..
Avantages
Inconvénients
Diffusion en continu à partir de Flash Media Server
Véritable lecture en flux continu, streaming, Flash Media Server est un serveur qui utilise le protocole RTMP (Real Time Messaging Protocol). Il existe aujourd’hui une alternative open source à FMS, RED5 un serveur Flash gratuit et libre. Vous pouvez en savoir plus sur FMS sur le tutoriel dédié.
Avantages
- Permet de garantir une bande passante entre le player et le serveur
- Permet de déplacer la tête de lecture sur une portion de vidéo pas encore chargée
- Permet d’utiliser des systèmes multi-utilisateurs
- Permet d’adapter la distribution au type de connexion utilisateur
Inconvénients
- Coût de FMS assez élevé (voir alternative RED5)
- Complexité de mise en œuvre
- Nécessite un serveur dédié et d’avoir de la bande passante
En tant que vidéo pour périphérique portable en conjonction avec SWF
Avantages
Inconvénients
Incorporer la vidéo dans SWF et la diffuser dans le scénario
La vidéo peut directement être intégrée au sein de la time line de flash. A ce moment-là, nul n’est besoin d’utiliser le composant FLVPlayback, ou des lignes d’ActionScript pour lire la vidéo.
Avantages
- Ne nécessite pas d’ActionScript pour lire la vidéo
- Facilité de synchronisation avec d’autres animations présentes sur la Time Line
- Simplicité d’interaction avec la vidéo (Masques, Guide, Interpolation, etc…)
Inconvénients
- A chaque compilation (ou test d’animation) la vidéo est re-compilée, ce qui prend du temps
- La vidéo est chargée intégralement avec le SWF
- Pour mettre à jour la vidéo, il faut la réimporter dans le FLA
Vidéo QuickTime liée pour la publication sur Quick Time
Depuis les débuts de l’intégration de la vidéo dans Flash et depuis QuickTime 4, il est possible d’ajouter une couche d’interactivité lisible par le player Quick Time. De ce fait, si vous importez une vidéo sur la TimeLine, que vous lui ajoutez une barre de commandes interactive dans Flash (Masquage automatique par exemple), au moment de l’exportation optez pour Flash 4, publiez en QuickTime autonome et voilà un .MOV interactif lisible par QuickTime Player.
Avantages
- Lire des animations Flash dans QuickTime Player
- Ajouter de l’interactivité à des films .MOV
- Porte pour intégrer des animations Flash dans Acrobat (antérieur à Acrobat 6.0)
Inconvénients
- Ne peut pas bénéficier des évolutions de Flash 5
- N’a pas d’interactions extérieures
2 réponses
[…] Flash, utilisant un composant FLVPlayBack, et de pointer vers le fichier FLV adéquat (voir Le format FLV et gestion de la vidéo avec Flash), ou alors d’intégralement gérer le flux FLV depuis Action Script (Gestion de fichiers FLV […]
[…] Flash, utilisant un composant FLVPlayBack, et de pointer vers le fichier FLV adéquat (voir Le format FLV et gestion de la vidéo avec Flash), ou alors d’intégralement gérer le flux FLV depuis Action Script (Gestion de fichiers FLV […]