SlideShare une entreprise Scribd logo
Ludovic AUXEPAULES
Stéphane MICHEL
DSI de l’UPMC
10 ans après : une nouvelle plateforme de captation et diffusion en
direct et en différé de vidéos de cours
Plan de la présentation
Contexte et historique de la chaîne de captation à la FMPMC
Présentation générale des solutions techniques
Extron SMP 351
Opencast, « le maître d’orchestre »
Serveur vidéo Wowza et développements associés
Intégration dans Moodle
Exemple d’utilisation de la nouvelle chaine et statistiques
210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Contexte et historique
Depuis 2006, la faculté de Médecine de l’UPMC propose un système de
diffusion de vidéo interne
 700 étudiants  2300 étudiants (48 groupes de TD)
 Diffusion des cours magistraux dans plusieurs amphithéâtres et salles simultanément
 Diffusion en direct (live) et en différé des cours filmés
Premier projet lancé en mai 2006 et mis en production en septembre 2006
(présenté aux JRES 2007)
 Amphi maitre, serveurs de streaming Helix, Real Media
 Intégration dans l’ENF uPortal 2.5 (puis l’ENT uPortal 2.6) sous forme de deux canaux
VideoLive et VideoArchives
 + Un forum Questions/réponses pour chaque cours
310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Services VideoLive et VideoArchives dans l’ENT
monUPMC de 2006 à 2016
410 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Contexte actuel
2015 : Lancement d’un grand chantier de modernisation par la faculté de
Médecine
Objectifs et demandes
 Vidéos de meilleure qualité (en HD)
 Formats lisibles sur tout dispositifs (bureau, tablette, mobile)
 Simplification du pilotage de la chaine pour déléguer la programmation et la publication
idéalement au métier
 Intégration des vidéos directement dans les espaces de cours sur le LMS Moodle dédié
aux étudiants de PACES
510 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Contexte actuel
Rénovation complète des amphithéâtres en 2015
 Nouvelle infrastructure A/V acquise (marché public)
 Intégration des Extron SMP 351 pour un usage local
Projet de nouvelle chaine de diffusion relancé en juin 2016 et mis en
production en septembre 2016
La PACES en 2016/2017
 2353 étudiants inscrits répartis en 48 groupes de TD
 4 amphithéâtres : 1 x 300 places + 3 x 200 places
 Un 1er cours le matin pour la moitié et un 2nd l’après-midi
 Semestre 1 : 170 h de cours en 4 UE
 Semestre 2 : 124 h de cours en 4 UE, 80 h en UE spécifiques
610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Infrastructure, vue synoptique
710 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Infrastructure, vue technique
8
Extron SMP 351
910 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Extron SMP 351
Produit intégré et complet « prêt à utiliser »
Équipe déjà l’ensemble des 9 amphis principaux de la FMPMC
Interopérable avec OpenCast
1010 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Extron SMP 351
Configurations & réglages
Optimisation de la taille du flux A/V
 Travail visuel de paramétrage Qualité vs Taille
=> Codage H264 (High profile – level 4.1) - HD
720p (1280x720) – 15 fps – Bitrate : 750 Kbps
1110 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Extron SMP 351
Interface
Adaptation de l’habillage et de l’incrustation caméra
1210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Extron SMP 351
Interface
Calendrier des programmations récupéré automatiquement via la liaison
avec Opencast
1310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast, le « maître d’orchestre »
1410 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast d’Apereo
Une solution automatisée d’enregistrement et de distribution de vidéos
open-source (ex Matterhorn)
 Automatisée, flexible, personnalisable et évolutive
Fonctionnalités principales
 Programmation / Planification des évènements
 Processus / Workflow de traitement séquentiel
• Ré-encodage, détection des silences, OCR…
• Distribution / Publication des vidéos
 Interfaces de gestion et de lecture intégrée des vidéos
Standards gérés
 iCal, RSS, ATOM, OAI-PMH, MPEG-7, Dublin Core, LTI, REST
1510 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast d’Apereo
Intégration possible avec de nombreux systèmes
 Extron, Galicaster, Current, Wowza, LMS (Moodle, Sakai) avec LTI, Kaltura, YouTube,
iTunes U, Piwik, ORI-OAI…
Communauté très active fournissant du support et de nouvelles
fonctionnalités
Déploiement sur un ou plusieurs serveurs Linux
 “Tout en un” vs Déploiement distribué
 Installation pouvant évoluée en fonction des besoins de l’établissement
1610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Exemple d’aide et de test des API REST
Un ensemble complet d’API REST et web-services pour pouvoir
développer facilement ses propres intégrations
1710 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Agents de capture
Chaque SMP 351 présent dans les amphis correspond à un agent de
capture dont on peut suivre le statut (en attente, en cours
d’enregistrement…)
1810 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Agents de capture (vue SMP 351)
1910 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Les séries
Une série par UE nommée PAES_YYYY_Sx_UEz
2010 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Métadonnées d’un enregistrement (1/3)
2110 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Localisation
Date, heure et durée
Titre
Enseignant
Série
Opencast
Métadonnées d’un enregistrement (2/3)
Configuration des noms des fichiers en fonction des métadonnées dans
le SMP 351
Exemple de fichier produit par le SMP 351
PAES_2016_S2_Informations_g_n_ral_20170104_135100_S1R1.mp4
Série _ Titre évènement _ Date _ Heure _
2210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Métadonnées d’un enregistrement (3/3)
Extrait des métadonnées d’un enregistrement au format Dublin Core dans
Opencast
2310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Workflow de traitement des enregistrements
Un flux de traitement Opencast est une liste séquentielle d’opérations
décrite dans un fichier xml
 Pas de limite dans le nombre d’opérations ou sur leurs répétitions
 Possibilité d’interrompre le workflow pour demander une action à l’utilisateur
(suppression des silences par exemple)
Dans note cas, création d’un workflow « HD 720p »
 Encodage en plusieurs qualités de l’enregistrement
 Publication sur le NAS pour Wowza
2410 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Configuration du workflow « HD 720p »
25
Sélection du
workflow
10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Extrait du workflow « HD 720p » executé
2610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Opencast
Interface d’administration des enregistrements
27
Vérification du traitement de la
vidéo et de sa publication
S
é
r
i
e
L
i
e
u
10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Actions : Détails,
Supprimer,
Editeur
Opencast
Editeur d’enregistrement (« découpe »)
28
Détection automatique des
silences
10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Serveur vidéo Wowza
2910 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Wowza Streaming Engine
 Licence Propriétaire
 Connu comme un produit fiable et
performant
 Modulable (plugins)
 Adaptable (API REST)
 Interopérable
30
Serveur(s) Physique(s) dédié(s)
 Demande un paramétrage fin pour optimiser les performances
(Tutoriels et préconisations fournis par Wowza)
 Besoin d’un réseau performant (équilibrage de charge), dimensionné en fonction du nombre
d’utilisateurs attendus et du débit de diffusion
10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Wowza Streaming Engine
Transcodage à la volée
Conditionné par la puissance CPU et GPU disponible
3110 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Wowza Streaming Engine
Application, url et matriçage
 Création d’une « chaine » (application) pour chaque canal de diffusion
 Automatisation du matriçage des flux d’entrée via script local et métadonnées Opencast
 Ce fonctionnement permet d’obtenir une url de sortie unique pour chaque canal :
rtmp://@IP-du-serveur:1935/Nom-d’application/Nom-du-flux_Format-du-transcodeur
exemple : rtmp://134.157.xxx.yyy:1935/Live_PAES/PAES_480p
 Avantage : L’URL unique simplifie la configuration des lecteurs
3210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Wowza Streaming Engine
LoopUntilLive & Scripts PilWoz.sh
LoopUntilLive
(Plugins Wowza)
 Permet la diffusion automatique d’une boucle (ou
playlist) vidéo lorsqu’il n’y a pas de direct.
 Avantages
• Informe l’utilisateur
• Évite de la perte de flux et les messages erreurs coté
frontal/lecteurs
3310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Wowza Streaming Engine
LoopUntilLive & Scripts PilWoz.sh
34
REST API Opencast
Crontab
3Min
REST API Wowza
Wowza
Application1
(Chaine 1)
Loop Until
Live (plugin)
Stream_A
Stream_B
Stream_X
Application2
(Chaine 2)
Opencast
ICAL
ParseOpencastIcs.sh
function ParseDateIN() { # parse les donnees d'heure de debut
function ParseDateOUT() { # parse les donnees d'heure de fin
function ParseLOC() { # parse le nom de l'encodeur (Stream)
function ParseSERIE() { # parse le nom de la serie (Application)
function HourGMT () { # assure la conversion en heure GMT+x
### forge du fichier cron
PilWoz.sh
Conn/Deconn : nom_de_l'appli
nom_du_Stream
10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Wowza
Test de charge et bande passante
Utilisation de « Wowza load testing tool »
Test conduits depuis de deux sites distants 1 G (2200 connexions simulées sur 4 h)
3510 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Moodle
3610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Moodle
4 espaces dédiés
3710 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Moodle
Intégration du flux live
3810 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
 Génération du lien vers la bonne application live Wowza
 Affichage de la page web contenant le lecteur
Moodle
Intégration du flux VOD
 Lecture du fichier .smil correspondant à la vidéo
 Récupération des chemins vers les qualités vidéo disponibles
 Génération des liens la bonne application VOD de Wowza
 Affichage de la page web contenant le lecteur
3910 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Moodle
Liste de lecture vod
Récupération des informations sur les listes de lecture
 Lancement d’un cron interrogeant les web-services d’Opencast (API REST)
 Stockage des données dans des fichiers .json tampons
Affichage des listes de lectures par l’application
 Mise en forme des données contenues dans le .json concerné (Titre, date…, ID)
 Affichage sous forme de liens vers le lecteur VOD
4010 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Exemple d’utilisation de la nouvelle chaine automatisée
(1/2)
1. Un enregistrement est programmé dans Opencast
2. Les SMP 351 récupèrent automatiquement la programmation des enregistrements en
interrogeant Opencast
3. Le flux direct est diffusé en RTSP par le SMP 351 et relayé par Wowza directement en
plusieurs qualités et dans plusieurs protocoles
Crontab Wowza : Le jeu de scripts installés programme le matriçage des flux sur la chaine de diffusion Wowza
lors d’un cours en direct sinon une boucle vidéo d’attente est diffusée (plugin Wowza).
Les étudiants visualisent le cours en direct dans l’ENT ou Moodle.
4110 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
VideoLive dans l’ENT monUPMC
depuis septembre 2016
4210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Exemple d’utilisation de la nouvelle chaine automatisée
(2/2)
4. A la fin du cours en direct, le SMP 351 crée un dossier qu’il stocke localement
conformément aux métadonnées programmées. Opencast vient récupérer le fichier
mp4
5. Opencast traite le fichier reçu et suit le workflow HD 720p : il le réencode en
différentes qualités, l’indexe et met l’ensemble à disposition dans un montage NAS
partagé. Il crée une liste de lecture smil compatible avec Wowza
Le script cron-rest : Interrogation régulière d’Opencast pour créer des listes de lecture dans chacune des UE(s)
de Moodle
Les étudiants parcourent les cours en différé dans Moodle et ouvrent le lecteur
flowplayer (lisant les flux en HLS de Wowza)
4310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Statistiques d’utilisation du live
De septembre 2016 à avril 2017
4410 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Statistiques d’utilisation de la vod
De septembre 2016 à avril 2017
4510 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
Quelques perspectives
Ouverture de la chaîne de diffusion à d’autres départements d’enseignement
 Depuis septembre 2017, ouverture du système aux IFSI (Institut de formation en soins infirmiers) –
cours en VOD uniquement
Répartition de charge sur plusieurs serveurs Wowza
 2 serveurs en répartition de charge sur une VIP F5
Renforcer l’infrastructure liée à Opencast
 Séparer l’interface d’administration des différents serveurs dédiés au traitement des vidéos
 Étudier la vidéothèque intégrée d’Opencast et le module LTI
Amélioration des lecteurs (Utilisation de VideoJS ?, Paella ?)
 Gestion de nouveaux formats (MPEG-DASH), chapitrage, sous-titrage
 Création d’un module respectant les normes LTI
4610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours

Contenu connexe

Similaire à 10 ans après : une nouvelle plateforme de captation et diffusion en direct et en différé de vidéos de cours

Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
Microsoft Technet France
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Microsoft Technet France
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Microsoft Décideurs IT
 
La diffusion vidéo avec le Cloud Azure
La diffusion vidéo avec le Cloud AzureLa diffusion vidéo avec le Cloud Azure
La diffusion vidéo avec le Cloud Azure
Microsoft
 
Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?
pprem
 
Alphorm.com Formation Windows Server 2016 : Installation et Configuration
Alphorm.com Formation Windows Server 2016 : Installation et ConfigurationAlphorm.com Formation Windows Server 2016 : Installation et Configuration
Alphorm.com Formation Windows Server 2016 : Installation et Configuration
Alphorm
 
[FR] Websocket Documentary Reasearches
[FR] Websocket Documentary Reasearches[FR] Websocket Documentary Reasearches
[FR] Websocket Documentary Reasearches
Manavai Teikituhaahaa
 
Réaliser un webcast
Réaliser un webcastRéaliser un webcast
Réaliser un webcast
Libcast SAS
 
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
Alphorm
 
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMCRetour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Ludovic A
 
CMs-Reseaux.pdf
CMs-Reseaux.pdfCMs-Reseaux.pdf
CMs-Reseaux.pdf
GuelordMasimango
 
ServeurWeb-ProtocoleHttpdefinitionet.pdf
ServeurWeb-ProtocoleHttpdefinitionet.pdfServeurWeb-ProtocoleHttpdefinitionet.pdf
ServeurWeb-ProtocoleHttpdefinitionet.pdf
nebibieg
 
Devops - VSTS - Source
Devops - VSTS - SourceDevops - VSTS - Source
Devops - VSTS - Source
Michel Bruchet
 
Les technologies actuelles et futures de l'ott
Les technologies actuelles et futures de l'ottLes technologies actuelles et futures de l'ott
Les technologies actuelles et futures de l'ott
Luc Trudeau
 
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm
 
Mise en place vidéoconférence + chat avec Openfire
Mise en place vidéoconférence + chat avec OpenfireMise en place vidéoconférence + chat avec Openfire
Mise en place vidéoconférence + chat avec Openfire
Abdou Lahad SYLLA
 
Nouveautés IBM i 2015 par Phillipe Bourgeois, IBM France
Nouveautés IBM i 2015 par Phillipe Bourgeois, IBM FranceNouveautés IBM i 2015 par Phillipe Bourgeois, IBM France
Nouveautés IBM i 2015 par Phillipe Bourgeois, IBM France
Fresche Solutions
 
Cv p lescure
Cv p lescureCv p lescure
Cv p lescure
PatrickLescure2
 
Introduction to NI, LabVIEW, ELVIS and Planet NI
Introduction to NI, LabVIEW, ELVIS and Planet NIIntroduction to NI, LabVIEW, ELVIS and Planet NI
Introduction to NI, LabVIEW, ELVIS and Planet NI
slemoslideshare
 

Similaire à 10 ans après : une nouvelle plateforme de captation et diffusion en direct et en différé de vidéos de cours (20)

Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
 
La diffusion vidéo avec le Cloud Azure
La diffusion vidéo avec le Cloud AzureLa diffusion vidéo avec le Cloud Azure
La diffusion vidéo avec le Cloud Azure
 
Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?
 
Alphorm.com Formation Windows Server 2016 : Installation et Configuration
Alphorm.com Formation Windows Server 2016 : Installation et ConfigurationAlphorm.com Formation Windows Server 2016 : Installation et Configuration
Alphorm.com Formation Windows Server 2016 : Installation et Configuration
 
[FR] Websocket Documentary Reasearches
[FR] Websocket Documentary Reasearches[FR] Websocket Documentary Reasearches
[FR] Websocket Documentary Reasearches
 
Réaliser un webcast
Réaliser un webcastRéaliser un webcast
Réaliser un webcast
 
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
 
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMCRetour d'expérience : Mise en place de l'ENT v4 à l'UPMC
Retour d'expérience : Mise en place de l'ENT v4 à l'UPMC
 
CMs-Reseaux.pdf
CMs-Reseaux.pdfCMs-Reseaux.pdf
CMs-Reseaux.pdf
 
ServeurWeb-ProtocoleHttpdefinitionet.pdf
ServeurWeb-ProtocoleHttpdefinitionet.pdfServeurWeb-ProtocoleHttpdefinitionet.pdf
ServeurWeb-ProtocoleHttpdefinitionet.pdf
 
Devops - VSTS - Source
Devops - VSTS - SourceDevops - VSTS - Source
Devops - VSTS - Source
 
Les technologies actuelles et futures de l'ott
Les technologies actuelles et futures de l'ottLes technologies actuelles et futures de l'ott
Les technologies actuelles et futures de l'ott
 
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.x
 
Mise en place vidéoconférence + chat avec Openfire
Mise en place vidéoconférence + chat avec OpenfireMise en place vidéoconférence + chat avec Openfire
Mise en place vidéoconférence + chat avec Openfire
 
Nouveautés IBM i 2015 par Phillipe Bourgeois, IBM France
Nouveautés IBM i 2015 par Phillipe Bourgeois, IBM FranceNouveautés IBM i 2015 par Phillipe Bourgeois, IBM France
Nouveautés IBM i 2015 par Phillipe Bourgeois, IBM France
 
Petals DSB - Current Status
Petals DSB - Current StatusPetals DSB - Current Status
Petals DSB - Current Status
 
Cv p lescure
Cv p lescureCv p lescure
Cv p lescure
 
Introduction to NI, LabVIEW, ELVIS and Planet NI
Introduction to NI, LabVIEW, ELVIS and Planet NIIntroduction to NI, LabVIEW, ELVIS and Planet NI
Introduction to NI, LabVIEW, ELVIS and Planet NI
 

Plus de Ludovic A

ESUPDAYS 26 : CAS 5.2 - Retour d'expérience Sorbonne Université
ESUPDAYS 26 : CAS 5.2 - Retour d'expérience Sorbonne UniversitéESUPDAYS 26 : CAS 5.2 - Retour d'expérience Sorbonne Université
ESUPDAYS 26 : CAS 5.2 - Retour d'expérience Sorbonne Université
Ludovic A
 
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMCRetour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
Ludovic A
 
Esupdays 21: Point sur le projet ESUP cas_toolbox
Esupdays 21: Point sur le projet ESUP cas_toolboxEsupdays 21: Point sur le projet ESUP cas_toolbox
Esupdays 21: Point sur le projet ESUP cas_toolbox
Ludovic A
 
Esupdays 20 : Etat d'avancement du projet esup-CAS v4
Esupdays 20 : Etat d'avancement du projet esup-CAS v4Esupdays 20 : Etat d'avancement du projet esup-CAS v4
Esupdays 20 : Etat d'avancement du projet esup-CAS v4
Ludovic A
 
"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
"Esup CAS Packaging" : Deploy and customize easily a CAS4 server"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
Ludovic A
 
Esupdays 19 : Packaging Esup Cas
Esupdays 19 : Packaging Esup Cas Esupdays 19 : Packaging Esup Cas
Esupdays 19 : Packaging Esup Cas
Ludovic A
 
Happy birthday "monUPMC": 9 years of Portal at UPMC
Happy birthday "monUPMC": 9 years of Portal at UPMCHappy birthday "monUPMC": 9 years of Portal at UPMC
Happy birthday "monUPMC": 9 years of Portal at UPMC
Ludovic A
 

Plus de Ludovic A (7)

ESUPDAYS 26 : CAS 5.2 - Retour d'expérience Sorbonne Université
ESUPDAYS 26 : CAS 5.2 - Retour d'expérience Sorbonne UniversitéESUPDAYS 26 : CAS 5.2 - Retour d'expérience Sorbonne Université
ESUPDAYS 26 : CAS 5.2 - Retour d'expérience Sorbonne Université
 
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMCRetour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
Retour d’expérience sur le déploiement d’uPortal 4.2+ responsive à l’UPMC
 
Esupdays 21: Point sur le projet ESUP cas_toolbox
Esupdays 21: Point sur le projet ESUP cas_toolboxEsupdays 21: Point sur le projet ESUP cas_toolbox
Esupdays 21: Point sur le projet ESUP cas_toolbox
 
Esupdays 20 : Etat d'avancement du projet esup-CAS v4
Esupdays 20 : Etat d'avancement du projet esup-CAS v4Esupdays 20 : Etat d'avancement du projet esup-CAS v4
Esupdays 20 : Etat d'avancement du projet esup-CAS v4
 
"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
"Esup CAS Packaging" : Deploy and customize easily a CAS4 server"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
"Esup CAS Packaging" : Deploy and customize easily a CAS4 server
 
Esupdays 19 : Packaging Esup Cas
Esupdays 19 : Packaging Esup Cas Esupdays 19 : Packaging Esup Cas
Esupdays 19 : Packaging Esup Cas
 
Happy birthday "monUPMC": 9 years of Portal at UPMC
Happy birthday "monUPMC": 9 years of Portal at UPMCHappy birthday "monUPMC": 9 years of Portal at UPMC
Happy birthday "monUPMC": 9 years of Portal at UPMC
 

10 ans après : une nouvelle plateforme de captation et diffusion en direct et en différé de vidéos de cours

  • 1. Ludovic AUXEPAULES Stéphane MICHEL DSI de l’UPMC 10 ans après : une nouvelle plateforme de captation et diffusion en direct et en différé de vidéos de cours
  • 2. Plan de la présentation Contexte et historique de la chaîne de captation à la FMPMC Présentation générale des solutions techniques Extron SMP 351 Opencast, « le maître d’orchestre » Serveur vidéo Wowza et développements associés Intégration dans Moodle Exemple d’utilisation de la nouvelle chaine et statistiques 210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 3. Contexte et historique Depuis 2006, la faculté de Médecine de l’UPMC propose un système de diffusion de vidéo interne  700 étudiants  2300 étudiants (48 groupes de TD)  Diffusion des cours magistraux dans plusieurs amphithéâtres et salles simultanément  Diffusion en direct (live) et en différé des cours filmés Premier projet lancé en mai 2006 et mis en production en septembre 2006 (présenté aux JRES 2007)  Amphi maitre, serveurs de streaming Helix, Real Media  Intégration dans l’ENF uPortal 2.5 (puis l’ENT uPortal 2.6) sous forme de deux canaux VideoLive et VideoArchives  + Un forum Questions/réponses pour chaque cours 310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 4. Services VideoLive et VideoArchives dans l’ENT monUPMC de 2006 à 2016 410 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 5. Contexte actuel 2015 : Lancement d’un grand chantier de modernisation par la faculté de Médecine Objectifs et demandes  Vidéos de meilleure qualité (en HD)  Formats lisibles sur tout dispositifs (bureau, tablette, mobile)  Simplification du pilotage de la chaine pour déléguer la programmation et la publication idéalement au métier  Intégration des vidéos directement dans les espaces de cours sur le LMS Moodle dédié aux étudiants de PACES 510 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 6. Contexte actuel Rénovation complète des amphithéâtres en 2015  Nouvelle infrastructure A/V acquise (marché public)  Intégration des Extron SMP 351 pour un usage local Projet de nouvelle chaine de diffusion relancé en juin 2016 et mis en production en septembre 2016 La PACES en 2016/2017  2353 étudiants inscrits répartis en 48 groupes de TD  4 amphithéâtres : 1 x 300 places + 3 x 200 places  Un 1er cours le matin pour la moitié et un 2nd l’après-midi  Semestre 1 : 170 h de cours en 4 UE  Semestre 2 : 124 h de cours en 4 UE, 80 h en UE spécifiques 610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 7. Infrastructure, vue synoptique 710 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 8. 10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours Infrastructure, vue technique 8
  • 9. Extron SMP 351 910 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 10. Extron SMP 351 Produit intégré et complet « prêt à utiliser » Équipe déjà l’ensemble des 9 amphis principaux de la FMPMC Interopérable avec OpenCast 1010 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 11. Extron SMP 351 Configurations & réglages Optimisation de la taille du flux A/V  Travail visuel de paramétrage Qualité vs Taille => Codage H264 (High profile – level 4.1) - HD 720p (1280x720) – 15 fps – Bitrate : 750 Kbps 1110 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 12. Extron SMP 351 Interface Adaptation de l’habillage et de l’incrustation caméra 1210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 13. Extron SMP 351 Interface Calendrier des programmations récupéré automatiquement via la liaison avec Opencast 1310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 14. Opencast, le « maître d’orchestre » 1410 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 15. Opencast d’Apereo Une solution automatisée d’enregistrement et de distribution de vidéos open-source (ex Matterhorn)  Automatisée, flexible, personnalisable et évolutive Fonctionnalités principales  Programmation / Planification des évènements  Processus / Workflow de traitement séquentiel • Ré-encodage, détection des silences, OCR… • Distribution / Publication des vidéos  Interfaces de gestion et de lecture intégrée des vidéos Standards gérés  iCal, RSS, ATOM, OAI-PMH, MPEG-7, Dublin Core, LTI, REST 1510 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 16. Opencast d’Apereo Intégration possible avec de nombreux systèmes  Extron, Galicaster, Current, Wowza, LMS (Moodle, Sakai) avec LTI, Kaltura, YouTube, iTunes U, Piwik, ORI-OAI… Communauté très active fournissant du support et de nouvelles fonctionnalités Déploiement sur un ou plusieurs serveurs Linux  “Tout en un” vs Déploiement distribué  Installation pouvant évoluée en fonction des besoins de l’établissement 1610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 17. Opencast Exemple d’aide et de test des API REST Un ensemble complet d’API REST et web-services pour pouvoir développer facilement ses propres intégrations 1710 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 18. Opencast Agents de capture Chaque SMP 351 présent dans les amphis correspond à un agent de capture dont on peut suivre le statut (en attente, en cours d’enregistrement…) 1810 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 19. Opencast Agents de capture (vue SMP 351) 1910 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 20. Opencast Les séries Une série par UE nommée PAES_YYYY_Sx_UEz 2010 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 21. Opencast Métadonnées d’un enregistrement (1/3) 2110 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours Localisation Date, heure et durée Titre Enseignant Série
  • 22. Opencast Métadonnées d’un enregistrement (2/3) Configuration des noms des fichiers en fonction des métadonnées dans le SMP 351 Exemple de fichier produit par le SMP 351 PAES_2016_S2_Informations_g_n_ral_20170104_135100_S1R1.mp4 Série _ Titre évènement _ Date _ Heure _ 2210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 23. Opencast Métadonnées d’un enregistrement (3/3) Extrait des métadonnées d’un enregistrement au format Dublin Core dans Opencast 2310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 24. Opencast Workflow de traitement des enregistrements Un flux de traitement Opencast est une liste séquentielle d’opérations décrite dans un fichier xml  Pas de limite dans le nombre d’opérations ou sur leurs répétitions  Possibilité d’interrompre le workflow pour demander une action à l’utilisateur (suppression des silences par exemple) Dans note cas, création d’un workflow « HD 720p »  Encodage en plusieurs qualités de l’enregistrement  Publication sur le NAS pour Wowza 2410 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 25. Opencast Configuration du workflow « HD 720p » 25 Sélection du workflow 10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 26. Opencast Extrait du workflow « HD 720p » executé 2610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 27. Opencast Interface d’administration des enregistrements 27 Vérification du traitement de la vidéo et de sa publication S é r i e L i e u 10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours Actions : Détails, Supprimer, Editeur
  • 28. Opencast Editeur d’enregistrement (« découpe ») 28 Détection automatique des silences 10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 29. Serveur vidéo Wowza 2910 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 30. Wowza Streaming Engine  Licence Propriétaire  Connu comme un produit fiable et performant  Modulable (plugins)  Adaptable (API REST)  Interopérable 30 Serveur(s) Physique(s) dédié(s)  Demande un paramétrage fin pour optimiser les performances (Tutoriels et préconisations fournis par Wowza)  Besoin d’un réseau performant (équilibrage de charge), dimensionné en fonction du nombre d’utilisateurs attendus et du débit de diffusion 10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 31. Wowza Streaming Engine Transcodage à la volée Conditionné par la puissance CPU et GPU disponible 3110 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 32. Wowza Streaming Engine Application, url et matriçage  Création d’une « chaine » (application) pour chaque canal de diffusion  Automatisation du matriçage des flux d’entrée via script local et métadonnées Opencast  Ce fonctionnement permet d’obtenir une url de sortie unique pour chaque canal : rtmp://@IP-du-serveur:1935/Nom-d’application/Nom-du-flux_Format-du-transcodeur exemple : rtmp://134.157.xxx.yyy:1935/Live_PAES/PAES_480p  Avantage : L’URL unique simplifie la configuration des lecteurs 3210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 33. Wowza Streaming Engine LoopUntilLive & Scripts PilWoz.sh LoopUntilLive (Plugins Wowza)  Permet la diffusion automatique d’une boucle (ou playlist) vidéo lorsqu’il n’y a pas de direct.  Avantages • Informe l’utilisateur • Évite de la perte de flux et les messages erreurs coté frontal/lecteurs 3310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 34. Wowza Streaming Engine LoopUntilLive & Scripts PilWoz.sh 34 REST API Opencast Crontab 3Min REST API Wowza Wowza Application1 (Chaine 1) Loop Until Live (plugin) Stream_A Stream_B Stream_X Application2 (Chaine 2) Opencast ICAL ParseOpencastIcs.sh function ParseDateIN() { # parse les donnees d'heure de debut function ParseDateOUT() { # parse les donnees d'heure de fin function ParseLOC() { # parse le nom de l'encodeur (Stream) function ParseSERIE() { # parse le nom de la serie (Application) function HourGMT () { # assure la conversion en heure GMT+x ### forge du fichier cron PilWoz.sh Conn/Deconn : nom_de_l'appli nom_du_Stream 10 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 35. Wowza Test de charge et bande passante Utilisation de « Wowza load testing tool » Test conduits depuis de deux sites distants 1 G (2200 connexions simulées sur 4 h) 3510 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 36. Moodle 3610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 37. Moodle 4 espaces dédiés 3710 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 38. Moodle Intégration du flux live 3810 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours  Génération du lien vers la bonne application live Wowza  Affichage de la page web contenant le lecteur
  • 39. Moodle Intégration du flux VOD  Lecture du fichier .smil correspondant à la vidéo  Récupération des chemins vers les qualités vidéo disponibles  Génération des liens la bonne application VOD de Wowza  Affichage de la page web contenant le lecteur 3910 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 40. Moodle Liste de lecture vod Récupération des informations sur les listes de lecture  Lancement d’un cron interrogeant les web-services d’Opencast (API REST)  Stockage des données dans des fichiers .json tampons Affichage des listes de lectures par l’application  Mise en forme des données contenues dans le .json concerné (Titre, date…, ID)  Affichage sous forme de liens vers le lecteur VOD 4010 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 41. Exemple d’utilisation de la nouvelle chaine automatisée (1/2) 1. Un enregistrement est programmé dans Opencast 2. Les SMP 351 récupèrent automatiquement la programmation des enregistrements en interrogeant Opencast 3. Le flux direct est diffusé en RTSP par le SMP 351 et relayé par Wowza directement en plusieurs qualités et dans plusieurs protocoles Crontab Wowza : Le jeu de scripts installés programme le matriçage des flux sur la chaine de diffusion Wowza lors d’un cours en direct sinon une boucle vidéo d’attente est diffusée (plugin Wowza). Les étudiants visualisent le cours en direct dans l’ENT ou Moodle. 4110 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 42. VideoLive dans l’ENT monUPMC depuis septembre 2016 4210 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 43. Exemple d’utilisation de la nouvelle chaine automatisée (2/2) 4. A la fin du cours en direct, le SMP 351 crée un dossier qu’il stocke localement conformément aux métadonnées programmées. Opencast vient récupérer le fichier mp4 5. Opencast traite le fichier reçu et suit le workflow HD 720p : il le réencode en différentes qualités, l’indexe et met l’ensemble à disposition dans un montage NAS partagé. Il crée une liste de lecture smil compatible avec Wowza Le script cron-rest : Interrogation régulière d’Opencast pour créer des listes de lecture dans chacune des UE(s) de Moodle Les étudiants parcourent les cours en différé dans Moodle et ouvrent le lecteur flowplayer (lisant les flux en HLS de Wowza) 4310 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 44. Statistiques d’utilisation du live De septembre 2016 à avril 2017 4410 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 45. Statistiques d’utilisation de la vod De septembre 2016 à avril 2017 4510 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours
  • 46. Quelques perspectives Ouverture de la chaîne de diffusion à d’autres départements d’enseignement  Depuis septembre 2017, ouverture du système aux IFSI (Institut de formation en soins infirmiers) – cours en VOD uniquement Répartition de charge sur plusieurs serveurs Wowza  2 serveurs en répartition de charge sur une VIP F5 Renforcer l’infrastructure liée à Opencast  Séparer l’interface d’administration des différents serveurs dédiés au traitement des vidéos  Étudier la vidéothèque intégrée d’Opencast et le module LTI Amélioration des lecteurs (Utilisation de VideoJS ?, Paella ?)  Gestion de nouveaux formats (MPEG-DASH), chapitrage, sous-titrage  Création d’un module respectant les normes LTI 4610 ans après : une nouvelle plateforme de captation et diffusion de vidéos de cours