Rappels
Eduter CNERTA met à disposition des ses partenaires un serveur de diffusion vidéo pour l'intégration de vidéos numériques sur leurs sites web. Basé sur Wowza Media Server, il permet la diffusion à la demande ou en direct de nombreux formats de fichiers, sur de nombreux protocoles.
La volonté d'Eduter CNERTA est de proposer un service disponible et accessible par tous et préconise donc des choix aux intégrateurs et utilisateurs du service. Par exemple la qualité de service est assurée en choisissant une diffusion dite "en streaming" (par flux) et non "progressive" (par téléchargement) ce qui a pour avantage d'offrir une meilleure réactivité du contrôle de la vidéo et d'économiser la bande passante disponible ; toute la difficulté réside dans le choix de de l'implémentation qui se voudra la moins propriétaire en l'absence de norme définie aujourd'hui par l'IETF et le W3C par rapport aux besoins actuels dans ce domaine. Nos préconisations concernent également le format de fichier conteneur, les codecs et leurs paramétrages à l'encodage, le lecteur vidéo, etc.
L'évolution constante et rapide des technologies nous amène à proposer et tester ces innovations et évaluer leur pérennité dans le dispositif qu'est le notre (voir Eduter).
Que propose Démo #02?
De tester la méthode de diffusion et de lecture préconisée actuellement par Eduter CNERTA. Des dysfonctionnement lors de la lecture ayant été constatés dans différentes infrastructures protégées par des règles de firewall et de proxy, des modifications de ces règles de filtrage ont été effectuées par les responsables de ces infrastructures. La première démo permet de vérifier si ces modifications rendent la lecture possible d'après nos recommandations actuelles ; pour rappel :
- Diffusion avec le protocole rtmpt sur le port 80,
- Encodage en fichier .MP4 (encapsulation MPEG) avec le codec H.264 - Baseline 3.0 et AAC ou MP3
- Intégration web avec Flowplayer ou JW Player (versions Adobe Flash) pour la lecture de la vidéo.
Cependant, l'actualité des technologies dans ce domaine est riche :
- le développement de la norme HTML5 par le W3C (voir cet article) pour lequel nous retiendrons pour la vidéo :
- la consultation web depuis un mobile reste faible : 6% en avril 2012 (1,47% selon w3schools),
- l'absence de choix parmi les protocoles de diffusion (HLS, HDS, Smooth, DASH, etc),
- l'absence de choix d'un conteneur (MP4, MOV, AVI, WebM, OGG, F4V, etc) et d'un codec (VP8, H.264, Theora, etc),
- la ratification de la norme HTML5 n'est pas encore faite,
- et logiquement, l'implémentation de la norme par les navigateurs progresse mais n'est pas terminée.
- l'arrivée de nouveaux terminaux (smartphones et tablettes),
- l'abandon de Flash pour le web mobile (voir cet article),
- la complexité des actions menées par Apple, Google, Microsoft pour faire avancer la norme.
Il est donc important de tester de nouvelles méthodes de diffusion qui tendent à utiliser le protocole HTTP comme base afin de passer les firewall,
et notamment HLS (HTTP Live Streaming) d'Apple (déposé comme IETF Draft) qui reste le seul protocole de diffusion HTTP implémenté dans iOS et Android 3.0.
DASH (Dynamic Adaptive Streaming over HTTP) développé par MPEG est le candidat le plus attendu puisque soutenu par Apple, Adobe, Microsoft, etc.
mais aucune implémentation n'est encore faite et aucune promesse de gratuité.
La future disparition d'Adobe Flash pour le web sur les terminaux mobiles est une réalité proche mais il serait ambitieux de
l'oublier aujourd'hui ; il permet indiscutablement de lire de la vidéo en streaming sur les terminaux non mobiles (représentant 94% de la consultation internet).
Adobe Flash propose maintenant deux protocoles :
- RTMP et ses dérivés
- HDS (HTTP Dynamic Streaming)
Nous présentons donc une deuxième démo de lecture vidéo avec FlowPlayer (version Flash et HTML) d'un flux diffusé avec le protocole HDS d'Adobe pour la partie Flash et HLS pour la partie HTML sous iOS puisqu'Apple Safari implémente directement ce protocole. Notons que JW Player ne souhaite pas implémenter HDS, qui ne semble pas promis à un bel avenir.
Une troisième démo y ajoute une liste de lecture et des points d'entrée et de sortie pour chaque vidéos de cette liste.
Nous aurions pu proposer une démonstration avec une intégration 100% HTML5 en déclinant les formats de vidéo pris en charge par les navigateurs mais l'absence d'au moins un protocole de streaming par l'ensemble des navigateurs fait perdre considérablement l'intérêt de ce test.
Quelques références
Serveur de diffusion
Protocoles du moment
- MPEG Dynamic Adaptive Streaming over HTTP (DASH)
- lire également cet article
- Apple HTTP Live Streaming (HLS)
- Adobe HTTP Dynamic Streaming (HDS)
- Microsoft Smooth Streaming