Multicast avec VLC
Configuration du serveur
Nous allons à présent décrire comment diffuser une vidéo en multicast. Nous verrons la configuration du serveur sous deux aspects : le mode console et le mode graphique.
Mode console
Exemple simple de diffusion d’un flux vidéo en multicast avec vlc :
vlc -vvv uneVideo.ext --sout udp:239.255.12.42 --ttl 3 --loop
Ou :
- -vvv définit le niveau de verbosité
- uneVideo.ext est le fichier que l’on souhaite diffuser
- --sout permet d’activer la diffusion
- --ttl permet de définir la durée de vie des paquets IP
- --loop permet de diffuser un fichier en boucle.
Exemple de diffusion d’un flux vidéo transcodé sur une adresse IP multicast :
vlc -vvv uneVideo.ext --sout '#transcode{vcodec=mp4v,acodec=mpga,vb=800,ab= 128, deinterlace}:standard{access=udp,mux=ts,url=239.255.12.42,sap,
name="unNom"}'
Cette ligne de commande aura pour effet de transcoder un flux vidéo en entrée et de l’envoyer vers une adresse multicast avec une annonce SAP.
Détails des paramètres :
- transcode permet de transcoder un flux et le diffuser
- vcodec permet de définir le codec vidéo avec lequel le flux d’entrée doit être transcodé
- acodec idem que vcodec mais pour le flux audio
- vb permet de régler le débit (en kbit/s) du flux vidéo transcodé
- ab idem que vb mais pour le flux audio
- standard permet d’envoyer un flux via un module de sortie (par exemple UDP, http, etc.)
- access permet de définir le module de sortie (ici UDP)
- mux nous permet de définir la méthode d’encapsulation du flux
- sap permet à VLC d’envoyer la liste des flux disponibles sur un serveur
- name permet de préciser le nom du flux à envoyer dans les annonces SAP
La liste complète des options est disponible ici.
Mode graphique
Voici la procédure pour diffuser un flux vidéo en multicast en mode graphique.
- Lancer vlc.
- Fichier -> Assistant de diffusion… (ou CTRL + W).
- Sélectionner le radio bouton « Diffuser vers un réseau ».
- Sélectionner le fichier que l’on souhaite diffuser en multicast.
- Nous pouvons réaliser une extraction partielle afin de lire uniquement une partie du flux, cochez "Activer" et choisissez un début et une fin (en secondes). Cette option ne doit être utilisée que dans le cas de flux que l’on peut contrôler, comme des fichiers, des disques, mais pas des flux réseaux ou des périphériques de capture.
- Ensuite nous devons configurer la façon dont le flux va être envoyé. Dans notre cas nous allons sélectionner le radio bouton UDP Multicast et entrer une adresse de diffusion multicast.
- Ensuite nous devons choisir la méthode d’encapsulation. Dans notre cas en UDP nous n’avons pas le choix car la diffusion UDP requiert une encapsulation MPEG TS.
- A présent il ne nous reste plus qu’à définir le TTL (Time To Live). Le TTL permet de définir le nombre de routeurs que votre flux peut traverser avant d’être supprimé. Par défaut en UDP Multicast la valeur du TTL est de 1, ce qui veut dire que le flux n’ira pas plus loin que le premier routeur. L’option « Annonce SAP » permet au serveur VLC de diffuser un message sur le réseau.