N'y a t-il vraiment que le FLV pour les vidéos en ligne ?
Étant toujours à la recherche de *la* solution pour embarquer des vidéos dans des pages webs j'en suis arrivé à faire le choix suivant: format FLV ! Alors, es-ce la seule solution viable à l'heure actuelle ?
Du FLV en voici en voilà
Voici ma vision de la chose pour "défendre" ma position:
- 1. Pour les illustrations, les fichiers de départ sont du inkscape SVG
- 2. Pour les vidéos, c'est du DV classique ou de l'appareil photo numérique
- 3. Export des fichiers SVG dans inkscape en PNG 640x480 et stockage dans un répertoire
- 4. Montage avec cinelerra pour avoir les transitions et les "durées" d'affichage des illustrations, gestion des différentes pistes, de la bande son etc.
- 5. Export de cinelerra en x milliers de fichiers PNG (question d'avoir une super qualité de sortie)
- 6. Transformation des x milliers de fichiers png en 1 fichier FLV (format propriétaire mais assez bien documenté pour que ffmpeg, mplayer et vlc sachent créer et lire des fichiers dans ce format) à l'aide du logiciel libre ffmpeg puis flvtool2 -U (nouvelle découverte ce soir) libre aussi pour ajouter des méta informations dans le fichier
ffmpeg -i /tmp/export/sequence-%6d.png -b 5000k -threads 2 /tmp/export.flv
- 7. Dépot du fichier flv sur le serveur
- 8. Utilisation de flowplayer comme logiciel de lecture des vidéo flash en ligne
- 9. On n'est pas obligé d'avoir le plugin flash propriétaire d'adobe sur son ordinateur: l'implémentation libre gnash arrive à lire les trucs envoyés par flowplayer depuis la version 0.8.3
- 10. Et en bonus, on propose de télécharger la vidéo si elle n'est pas lisible en ligne et ensuite VLC arrive à la lire sans soucis ...
Donc en bref ça me permet presque de considérer FLV un peu comme PDF ... on a de quoi les créer en libre et les lire en libre, Seul le format de fichier peut-être considérer comme "mauvais" mais en l'absence d'alternative ...
La solution ultime: le MP4
Mais il y a mieux ! Hé oui, il semblerait que flowplayer sache gérer le format H264, lequel format a une implémentation libre qui est quasiment la référence: X264 ...
La seule modification dans la chaîne de production indiquée ci-dessus, c'est l'étape 6: on demande juste à ffmpeg de créer non pas un fichier FLV mais un fichier YUV qui sera ensuite transformé en MP4 via X264.
ffmpeg -i /tmp/export/sequence-%6d.png -b 5000k -threads 2 -pix_fmt yuv420p /tmp/fichier.y4m x264 --threads 2 --progress -B 800 -o /tmp/fichier.mp4 /tmp/fichier.yuv 640x480
Note: passez le -B 800 à 5000 si vous voulez une qualité sans faille mais attention à la taille du fichier.
Si vous avez une piste audio il faut penser à la travailler, par exemple
- 1. L'extraire de votre vidéo de départ
ffmpeg fichier.wav -i MVI_0385.AVI
- 2. La transformer en AAC
faac -b 192k -o audio.aac fichier.wav
- 3. La multiplexer avec la bande video X264
MP4Box -tmp /tmp -add video.mp4 -add audio.aac /tmp/export.mp4
Et hop, tout un chapitre de plus de la formation Montage vidéo en logiciels libres et streaming de RyXéo !
Pour pouvoir utiliser tout ça il faut penser à installer les paquets suivants:
sudo apt-get install mkvtoolnix faac gpac x264 flvtool2 cinelerra ffmpeg inkscape
Vous en pensez quoi vous ?
Commentaires
ta ligne de commande à rallonge finale me donne des idées comme "outil de lecture" en ligne pour les enfants ou adultes en cours d'alphabétisation : affichage progressif des mots ou groupes de mots...
ania.lescaPetite précision, ce n'est pas flowplayer en lui même qui permet de gérer du h264, mais la version 9 de flash.
Ce qui implique une mise à jour du plugin flash si nécessaire.
Bien sur la version libre du plugin flash ne permet pas à ma connaissance ce genre de choses...
jpciTheora (http://menguy.aymeric.free.fr/theor...) ne serait-il pas une alternative réellement libre ?
CalaadCa utilise l'applet Java Cortado qui permet de lire les vidéos au format OGG. Du 100% libre en gros.
Ca a l'air équivalent au niveau performance à du Flash / FLV...
Oggtheora est pour moi superieur au flv, crado au niveau compression.
teza