Stéphane Bortzmeyer est venu animer une conférence sur IPv6 à l’Université de Technologie de Belfort-Montbéliard. Retour sur l’organisation et le déroulement de la conférence, le tout agrémenté de quelques chiffres.
Pour mettre en place la conférence, il est nécessaire de :
Le premier point a été fait dès début Octobre. La convention obtenue donne l’autorisation d’utiliser la salle jusqu’à 22h.
Concernant le matériel, cela a été fait début Octobre également. Le prêt comprenait le matériel nécessaire pour le son et la vidéo, ainsi que l’ensemble permettant le stream.
Tout allait pour le mieux… jusqu’à trois jours avant la conférence, où j’ai pu apprendre indirectement qu’il allait falloir se débrouiller par soi-même, l’accord obtenu début Octobre ayant été oublié, le prêt de matériel devenant soudainement impossible, et impossible d’obtenir des informations non contradictoires : du bon matériel pourtant disponible (micro..) qu’on devait malgré tout me prêter n’existait soudainement plus, puis qu’il fallait s’adresser à plusieurs personnes se renvoyant la balle (moi en l’occurence :) ) jusqu’à me faire comprendre d’utiliser mes propres moyens.
Enfin, comme autre point de cafouillage à souligner : le gardien n’a apparemment pas été informé de l’existence de la convention… et ça aurait pu poser problème si une personne de la DSI (qu’elle en soit remerciée !) n’était pas sortie au milieu de la conférence lui expliquer la situation.
La conférence a commencé avec 10/15 minutes de retard du fait de la mise en place capricieuse du streaming.
Entre 50 et 60 personnes étaient présentes, et la majorité était constitutée d’étudiants. Des profs du département Informatique et du personnel de l’équipe technique de l’UTBM étaient également présents, ainsi que plusieurs personnes extérieures, ce qui est vraiment positif… même s’il restait des places dans l’amphitéâtre (mais deux autres évènements de l’Association des Étudiants étant organisés au même moment - ça a probablement empêché quelques personnes de venir ?).
Au bout d’une heure et demie, la séance de questions a succédé à la conférence. L’échange a duré un peu moins d’une heure.
Suite au faux-bond de l’UTBM sur ce sujet, j’ai essayé d’utiliser le boîtier d’acquisition (Pinnacle MovieBox DV) de l’Association des Étudiants afin de récupérer la sortie composite de la caméra. Sans succès : le boîtier n’a apparemment pas été utilisé depuis trop longtemps, il ne s’allume plus.
Au vu du délai très court pour trouver une solution, le système qui a été utilisé se compose de :
Comment articuler tout ça ?
Les deux micros arrivent sur la console son, qui redispatche ensuite sur les deux enceintes, sur la caméra, et sur le PC. La caméra enregistre le tout sur sa carte SD, utilisée pour monter la vidéo a posteriori.
Avec VLC, on récupère le flux audio des micros et vidéo de la webcam. Le tout est capturé dans un fichier OGG (Theora+Vorbis) et stocké localement.
On possède ainsi une copie locale du flux. Il s’agit maintenant de le diffuser. Malheureusement, “eduroam” n’étant pas stable dans l’amphitéâtre et le wifi visiteurs possédant un meilleur débit en upload (curieux, mais c’est comme ça..), le choix du réseau s’est orienté sur ce dernier point d’accès.
Problème : peu de ports sont ouverts, et celui nécessaire pour communiquer avec le serveur Icecast distant ne l’est pas. C’est ici qu’OpenVPN rentre en jeu : on crée un tunnel via le port 80, ouvert, afin d’éviter les différents blocages, dont celui du port 8000 nécessaire pour parler à Icecast (une autre solution aurait été de faire écouter Icecast sur le port 80 directement, mais un service web que je ne pouvais pas déplacer y était déjà présent).
Une fois le canal ouvert, il suffit d’envoyer le flux :
cat bortzmeyer.ogg | oggfwd stream.fr33tux.org 8000 mot_de_passe /bortzmeyer.ogg
Oui, ce n’est pas propre du tout !
Malheureusement, je n’ai pas réussi à ce que VLC diffuse le flux à un serveur distant de lui-même, ffmpeg/avconv non plus.. À situation désespérée, solution désespérée !
Et ça a plutôt bien fonctionné d’après les différents retours : l’image était correcte, pas/peu de coupures… Seul bémol, le son un peu capricieux pour les utilisateurs de VLC. Les clients ayant rencontré le moins de problème étaient MPlayer, Chrom(e-ium) et Firefox.
Ayant la main sur le serveur, voici quelques chiffres tirés du log Icecast passé à la moulinette AwStats. Les graphs ont ensuite été générés via LibreOffice.
Au total, le stream a représenté un peu plus de 20 Go de données, répartis parmis les 210 personnes connectées. Au pic de fréquentation (aux alentours de 20h30), 58 personnes ont suivi simultanément le stream.
Point intéressant, la majorité des clients étaient sous une distribution Linux. S’ensuit Windows, puis des clients inconnus (probablement des lecteurs tels que VLC ou MPlayer), et enfin Macintosh.
Chose assez surprenante au vu des soucis d’absence de son avec le stream consulté sous ce navigateur, Firefox l’emporte assez largement, suivi un peu plus loin par Chrome.
Assez logiquement cette fois, la plupart des visiteurs venaient de France. D’autres pays sont aussi présents (ce qui s’explique notamment par la présence d’étudiants en stage ou en semestre à l’étranger… :) ).
Coup d’oeil sur la répartition des données de chaque heure. Le pic de fréquentation ayant eu lieu sur le créneau 20h-21h, la quantité de données diffusée par le serveur à cet instant est le plus important avec presque 10 Go.
La solution de streaming avec Icecast a été plutôt satisfaisante, de même que le doublage avec la seconde caméra pour traiter la vidéo a posteriori et l’avoir de meilleure qualité.
J’ai été vraiment déçu de ne pas pouvoir compter sur l’école (excepté les personnes citées ci-dessus) pour l’organisation, le prêt de matériel… malgré le fait d’avoir planifié les besoins plus de deux mois en avance. Il convient de s’en souvenir pour ne pas se faire avoir une nouvelle fois…
En vrac :
Les multiples retours que j’ai pu avoir ont été vraiment positifs, et les discussions étaient enthousiastes. C’était un réel plaisir d’accueillir Stéphane Bortzmeyer ici, un grand merci à lui d’avoir accepté l’invitation !