VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER

La page est créée Théo Dupuis
 
CONTINUER À LIRE
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
VideoLAN Streaming Howto

       Alexis de Lattre
         Johan Bilien
         Anil Daoud
      Clément Sténac
       Antoine Cellerier
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
VideoLAN Streaming Howto
by Alexis de Lattre, Johan Bilien, Anil Daoud, Clément Sténac, and Antoine Cellerier

Copyright © 2002-2004 Projet VideoLAN

Ce document explique comment diffuser, transcoder et sauver des flux en utilisant la solution VideoLAN

Vous avez la permission de copier, distribuer et/ou modifier ce document selon les termes de la licence GNU General Public License, telle qu’elle est publiée par la
Free Software Foundation; soit dans la version 2 de la licence, ou (si vous le souhaitez) toute version ultérieure. Le texte complet de la licence peut Ãa tre trouvé (en
anglais) en appendice. nGNU General Public License.
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
Table of Contents
    1. Diffusions, muxeurs et codecs............................................................................................................................................1
             Introduction .....................................................................................................................................................................1
             Muxers et codecs.............................................................................................................................................................3
    2. Diffusion facile ....................................................................................................................................................................5
             Intro .................................................................................................................................................................................5
             Diffuser en utilisant l’Assistant.......................................................................................................................................5
             Diffusion en mode graphique........................................................................................................................................13
    3. Utilisation avancée du flux de sortie en ligne de commande.....................................................................................20
             Structure du flux de sortie .............................................................................................................................................20
             Description des modules ...............................................................................................................................................20
             Exemples .......................................................................................................................................................................32
    4. Exemples d’utilisation avancée de diffusion avec VLC (transcodage, diffusion multiple, etc...) ..........................33
             Transcodage ..................................................................................................................................................................33
             Diffusion multiple .........................................................................................................................................................33
             Transcodage et diffusion multiple.................................................................................................................................33
             Diffusion HTTP ............................................................................................................................................................34
             Diffusion RTP ...............................................................................................................................................................34
             RTSP .............................................................................................................................................................................35
             diffusion MMS / MMSH vers Windows Media Player.................................................................................................35
             Utiliser le module es .....................................................................................................................................................35
    5. VLM - Diffusions multiples et Vidéo à la demande .................................................................................................36
             VLM..............................................................................................................................................................................36
             Exemples .......................................................................................................................................................................39
    6. Recevoir et enregistrer un flux.........................................................................................................................................41
             Recevoir un flux avec VLC ...........................................................................................................................................41
             Enregistrer un flux avec VLC........................................................................................................................................41
             Recevoir un flux avec une set-top-box ..........................................................................................................................42
    7. Diffuser un fichier .............................................................................................................................................................43
             Diffuser un fichier avec VLC ........................................................................................................................................43
    8. Diffuser un DVD ...............................................................................................................................................................44
             Diffuser un DVD avec VLC..........................................................................................................................................44
    9. Diffuser une chaine DVB (Satellite ou TNT)..................................................................................................................45
             Installer les drivers DVB ...............................................................................................................................................45
             Diffuser avec VLC ........................................................................................................................................................45
             Diffuser avec VLC ........................................................................................................................................................45
    10. Diffuser depuis une carte d’encodage ou d’autres périphériques d’acquisition ..............................................47
             Cartes d’encodage matériel.......................................................................................................................................47
             Cartes et encodage logiciel ...........................................................................................................................................48
             Diffuser avec Directshow ..............................................................................................................................................50
    11. Diffusion sur IPv6 ...........................................................................................................................................................52
             Diffusion sur IPv6 .........................................................................................................................................................52
    A. GNU General Public License ..........................................................................................................................................55
             Preamble........................................................................................................................................................................55
             TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION .....................................55
             How to Apply These Terms to Your New Programs.....................................................................................................59

                                                                                                                                                                                                 iii
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
Chapter 1. Diffusions, muxeurs et codecs

Introduction

     Apperçu
     VideoLAN est une solution complète pour la lecture et la diffusion de vidéo par réseau, développée par des
     étudiants de l’Ecole Centrale Paris (http://www.ecp.fr) et des développeurs du monde entier, sous licence GNU
     General Public License (http://www.gnu.org/copyleft/gpl.html) (GPL). VideoLAN est concu pour diffuser des vidéos
     MPEG sur des réseaux haut débit.
     La solution de diffusion VideoLAN comprend :

     •   VLS (VideoLAN Server), qui peut diffuser des fichiers MPEG-1, MPEG-2 et MPEG-4, des DVDs, des chaines
         numériques satellite, des chaines de télévision numérique terrestre et des flux vidéos réseau en unicast ou
         multicast.
     •   VLC (à l’origine dénomé VideoLAN Client), qui peut Ãa tre utilisé comme un serveur pour diffuser des fichiers
         MPEG-1, MPEG-é et MPEG-4, des DVDs et des flux vidéo réseau en unicast ou multicast ; ou comme un client
         pour recevoir, décoder et afficher des flux MPEG sous de nombreux systèmes d’exploitation.
     Voici une illustration de la solution de diffusion VideoLAN :

                                                                                                                         1
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
Chapter 1. Diffusions, muxeurs et codecs

Solution de diffusion VideoLAN

Pour plus de détails sur le projet, veuillez consulter le site web de VideoLAN (http://www.videolan.org).

Logiciels VideoLAN

VLC media player
VLC tourne sur de nombreux systèmes d’exploitation : Linux, Windows, Mac OS X, BeOS, *BSD, Solaris, Familiar
Linux, Yopy/Linupy et QNX. Il peut lire :

•   des fichiers MPEG-1, MPEG-2 et MPEG-4 / DivX depuis un disque dur, un lecteur de CD-ROM, ...

                                                                                                                       2
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
Chapter 1. Diffusions, muxeurs et codecs

     •   des DVDs et VCDs
     •   depuis des cartes d’acquisition satellite (DVB-S)
     •   des flux MPEG-1, MPEG-2 et MPEG-4 reçu par le réseau et diffusés par des VLC ou le stream output de VLC
     VLC peut aussi Ãa tre utilisé en temps que serveur pour diffuser :

     •   des fichiers MPEG-1, MPEG-2 et MPEG-4 / DivX
     •   des DVDs
     •   depuis une carte d’encodage MPEG
     vers :

     •   une machine (c’est a dire une addresse IP) : ceci est appelé unicast
     •   un groupe dynamique de machines que les clients peuvent joindre ou quitter (par exemple une adresse IP multicast) :
         ceci est appelé multicast
     en IPv4 ou IPv6
     Pour obtenir une liste complète des fonctionalités de VLC sur les différentes plateformes supportées, allez voir la
     VLC features page (http://www.videolan.org/vlc/features.html).

           Note: VLC ne fonctionne pas sous Mac OS 9.

     Mini-SAP-server
     You can add a channel information service based on the SAP/SDP standard to the VideoLAN solution. The
     mini-SAP-server sends announces about the multicast programs on the network in IPv4 or IPv6, and VLCs receive these
     annouces and automatically add the programs announced to their playlist.
     The mini-SAP-server works under Linux and Mac OS X.

Muxers et codecs

     Qu’est-ce qu’un codec ?
     Pour bien comprendre la solution VideoLAN, vous devez comprendre la différence entre un codec et un conteneur
     Un codec est un algorithme de compression utilisé pour réduire la taille d’un flux. Il y a des codecs audio et des
     codecs video. MPEG-1, MPEG-2, MPEG-4, Vorbis, DivX, etc. sont des codecs.

     Qu’est-ce qu’un conteneur ? (ou muxeur)
     Pour commencer, considérez un conteneur comme l’emballage d’un colis. Vous recevez un colis par la poste et vous
     pensez "Chouette ! qu’est-ce qu’il y a à l’interieur ?" Vous ne vous souciez pas vraiment de la boite elle mÃa me, vous
     vous interessez plutot à son contenu. Le problème ? Vous ne pouvez pas voir à l’interieur de la boite. Que faites vous
     donc ? Vous prenez une paire de ciseaux et vous l’ouvrez.

                                                                                                                               3
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
Chapter 1. Diffusions, muxeurs et codecs

Un conteneur se base sur cette idée. Il contient une ou plusieurs flux déjà encodés à l’aide de codecs.
Généralement, il y a un flux vidéo et un flux audio. AVI, Ogg, MOV, ASF, MP4 etc sont des conteneurs. Les flux
contenus peuvent Ãa tre encodés à l’aide de codecs différents. Dans un monde parfait, vous pourriez mettre
n’importe quel codec dans n’importe quel conteneur. Malheureusement il y a quelques incompatibilités. Vous pouvez
trouver une matrice des différents codecs et conteneurs possible sur la features page
(http://www.videolan.org/streaming/features.html).

Encoder une vidéo
C’est la première étape lorsque vous créez votre colis.
Vous devez tout d’abbord encoder votre fichier. Ceci veut dire qu’un fichier, que ce soit de l’audio ou de la vidéo, est
compressé sous un autre format qui prend moins de place que le format précédent. Mes codecs généralement
utilisés pour la vidéo sont DivX, MPEG-1, MPEG-2 et MPEG-4. Pour l’audio, il s’aggit de MP3 ou Vorbis.
Vous devez ensuite mutilplexer. En gros, il s’aggit de prendre les flux séparés et de les grouper dans un seul fichier.

Lire une vidéo
Maintenant que vous avez un colis, vous allez devoir l’ouvrir avant de pouvoir accéder à son contenu. C’est exactement
ce que VLC va faire. Pour décoder un flux, VLC va tout d’abbord le démuxer. Il lit donc le conteneur et sépare
l’audio, la vidéo et les sous-titres, s’ils existent. Démuxer des fichiers ne baisse pas la qualité de la vidéo ou de
l’audio. Ca ne change pas du tout ces flux de données. Ca ne fait que les sauvegarder dans des fichiersdifférents,
chacun contenant un élément du fichier original. Ensuite, chacun de ces flux sont passés à des décodeurs qui
font les calculs mathématiques permettant de décompresser le flux.
Il y a une particulatrité concernant MPEG :

•   MPEG est un codec. Il y a plusieurs versions de ce codec appelées MPEG-1, MPEG-2, MPEG-4 ...
•   MPEG est aussi un conteneur, parfois appelé MPEG System. Il y a plusieurs types de conteneurs MPEG : ES, PS et
    TS.
    Par exemple, quand vous lisez une vidéo MPEG sur un DVD, les flux MPEG sont en fait composés de plusieurs
    flux (appelés flux élémentaires, ES) : il y a un flux pour la vidéo, un pour l’audio, un autre pour les soustitres
    et ainsi de suite. Ces différents flux sont mélangés dans un seul Program Stream (PS). Ainsi, les fichiers .VOB
    que vous pouvez trouver sur un DVD sont en fait des fichiers MPEG-PS. Cependant, ce format PS n’est pas adapté
    à la diffusion de vidéo sur un réseau ou par satellite. Un autre format, appelé Transport Stream (TS) a donc
    été conçu pour diffuser du MPEG sur de tels dispositifs.

                                                                                                                             4
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
Chapter 2. Diffusion facile

Intro
        Le plus facile pour commencer à diffuser avec VLC consiste à utiliser l’une des interfaces graphiques utilisateur :
        wxwindows pour Windows et GNU/Linux, l’interface skinnable Windows et GNU/Linux ou l’interface native MacOS X.

Diffuser en utilisant l’Assistant
        L’Assistant de Diffusion/Tanscodage vous guide pas par pas pour diffuser votre média sur un réseau ou le sauvegarder
        sur votre disque dur. Cet Assistant fournit des menus simples à utiliser, mais les choix d’options sont restreints.

              Note: L’assistant est seulement disponible depuis l’interface wxWindows.

        Démarrer l’assistant
        Pour démarrer l’Assistant de diffusion/transcodage, ouvrez le menu "Fichier", et sélectionnez Assistant dans le menu.

        Démarrer l’assistant

        Champs à remplir dans l’assistant
        Pour commencer, sélectionnez le type de tâche :

        •   Diffuser vers un réseau : Choisissez cette option si vous voulez diffuser un média sur un réseau.
        •   Transcoder/Sauvegarder : Choisissez cette option si vous souhaitez changer le codec d’un fichier audio et/ou vidéo,
            son échantillonage et/ou sa méthode d’encapsulation.

                                                                                                                                   5
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
Chapter 2. Diffusion facile

Le boîte de dialogue de l’Assistant

Sélection de l’entrée
Choisissez un flux (tel qu’un fichier, un flux réseau, un disque, un périphérique de capture, ...) avec le bouton
Choisir, ou un élément existant de votre liste de lecture, en avec l’option Elément de la liste.
Extraction partielle : Pour lire uniquement une partie du flux, cochez "Activer" et choisissez un début et une fin (en
secondes). Cette option ne doit Ãa tre utilisée que dans le cas de flux que vous pouvez contrôler, comme des fichiers,
des disques, mais pas des flux réseaux ou des périphériques de capture.

                                                                                                                           6
VIDEOLAN STREAMING HOWTO - ALEXIS DE LATTRE JOHAN BILIEN ANIL DAOUD CLÃ MENT STÃ NAC ANTOINE CELLERIER
Chapter 2. Diffusion facile

Sélection de l’entrée par l’Assistant

                                                                   7
Chapter 2. Diffusion facile

Sélection de l’entrée depuis la liste de lecture par l’Assistant

Méthodes de diffusion
Si vous avez choisi l’option Diffuser vers un réseau, vous pouvez maintenant spécifier la méthode de diffusion. Les
méthodes de diffusion sont :

•   UDP Unicast : Diffuser vers un unique ordinateur. Entrez l’adresse IP du client (dans la plage 0.0.0.0 -
    223.255.255.255).
•   UDP Multicast : Diffuser un flux vers plusieurs utilisateurs en utilisant le multicast. Entrez l’adresse IP du groupe
    multicast (dans la plage 224.0.0.0 - 239.255.255.255).

                                                                                                                             8
Chapter 2. Diffusion facile

•   HTTP : Diffuser en utilisant le protocole HTTP. Si vous laissez le champ Destination vide, VLC va attendre les
    connextions sur toutes les interfaces réseaux du serveur sur le port 8080. Spécifiez une adresse, un port et un
    chemin pour les connexions en utilisant la syntaxe suivante [ip][:port][/path].
    Par exemple, 192.168.0.1:80/stream va faire écouter VLC sur l’interface portant l’adresse IP 192.168.0.1, sur le port
    TCP 80, dans le fichier virtuel /stream.

Méthode de diffusion par l’Assistant

Options de transcodage
Si vous avez choisi l’option Transcoder/Sauvegarder, vous pouvez spécifier les nouveaux codecs audio et vidéo, et
l’échantillonnage vers lesquels vous souhaitez convertir votre entrée.

                                                                                                                             9
Chapter 2. Diffusion facile

(Voir Diffusions, muxeurs et codecs)

Transcoder avec l’Assistant

Méthode d’encapsulation
Choisissez le format de méthode. La diffusion UDP requière une encapsulation MPEG TS. La diffusion par HTTP
peut-Ãa tre utilisée avec les encapsulations MPEG PS, MPEG TS, MPEG 1, OGG, RAW ou ASF. Sauvegarder un fichier
peut Ãa tre fait en utilisant n’importe quelle format d’encapsulation compatible avec les codecs choisis.
(Voir Diffusions, muxeurs et codecs)

                                                                                                              10
Chapter 2. Diffusion facile

Méthode d’encapsulation par l’Assistant

Options de diffusion
Si vous avez choisi de Diffuser vers un réseau, vous pouvez maintenant spécifier plusieurs options.

•   Time To Live (TTL) Ceci définit le nombre de routeurs que votre flux peut traverser avant d’Ãa tre supprimé, pour
    l’unicast UDP et les méthodes d’accès unicast. Si vous ne savez pas ce que cela signifie, vous devriez laisser la
    valeur par défaut.

        Note: Pour le multicast UDP, la valeur par défaut du TTL est 1, ce qui signifie que votre flux n’ira pas au-delà du
        premier routeur. Vous voudrez certainement augmenter ce nombre si vous souhaitez que votre flux multicast soit

                                                                                                                           11
Chapter 2. Diffusion facile

        routé.

•   Annonce SAP Pour annoncer votre flux sur le réseau quand vous utilisez une méthode de diffusion UDP, en utilisant
    le protocole SAP, entrez le nom du flux dans le champ de texte et cochez la case correspondante. Ceci N’EST PAS
    disponible pour la méthode de diffusion HTTP.

options de l’assistant de diffusion

                                                                                                                     12
Chapter 2. Diffusion facile

destination du fichier d’enregistrement
si vous avez choisi Tanscoder/Sauvegarder vous pouvez a présent spécifier le fichier dans lequel vous voulez
sauvegarder le flux.

Assistant de sauvegarde - interface wxWindows

Vous pouvez a présent cliquer sur Terminer pour commencer à diffuser/transcoder la source

                                                                                                                     13
Chapter 2. Diffusion facile

Diffusion en mode graphique

     Introduction
     Une deuxième facon de parametrer une instance de diffusion avec VLC est d’utiliser le menuFlux de sortie dans la boite
     de dialogue Ouvrir... de l’interface wxWindows (Windows / GNU Linux), skins (Windows / GNU Linux) et MacOS X. Les
     options et méthodes les plus courantes de diffusion sont accessibles dans ce menu
     pour diffuser le media ouvert, cochez "flux de sortie" dans la boite de dialogue "ouvrir un fichier/disque/flux
     reseau/périphérique de capture"et cliquez sur le bouton "paramètres"

     menu ouvrir un fichier - interface wxWindows

                                                                                                                               14
Chapter 2. Diffusion facile

menu ouvrir un fichier - Mac OS X

                                                            15
Chapter 2. Diffusion facile

la boite dialogue Flux de sortie

la boite dialogue Flux de sortie - interface wxWindows

                                                                                 16
Chapter 2. Diffusion facile

la boite dialogue Flux de sortie - interface wxWindows

MRL Flux de sortie
Dans l’interface wxWindows, un boite de dialogue affiche le MRL de flux de sortie (Media Ressource Locator). Elle est
mise a jour quand vous modifiez des options dans le menu Flux de sortie. Pour plus d’information sur comment editer le
MRL de flux de sortie, lisez Utilisation avancée du flux de sortie en ligne de commande.

                                                                                                                         17
Chapter 2. Diffusion facile

methodes de diffusion

•   Jouer en local: affiche la diffusion à l’écran. Cela permet d’afficher le flux que vous Ãa tes en train de diffuser. Les
    effets de transcodage, etc... peuvent Ãa tre surveillés en local avec cette fonction.
•   Fichier: Sauvegarder la diffusion dans un fichier. L’otion Dumper le flux brut permet d’enregistrer le flux d’entrée en
    mÃa me temps qu’il est lu par VLC, sans aucun traitement.
•   HTTP: Pour utiliser la methode de diffusion HTTP. Spécifiez l’adresse IP ainsi que le numero de port TCP
    à écouter
•   MMSH: Cette methode d’acces permet de diffuser vers Microsoft Windows Media Player. Spécifiez l’adresse IP ainsi
    que le numero de port TCP à écouter.

         Note: Cela fonctionnera seulement avec la methode d’encapsulation ASF

•   UDP: Diffusez en unicast en donnant une adresse dans la gamme 0.0.0.0 - 223.255.255.255 ou en multicast en donnant
    une adresse dans la gamme 224.0.0.0 - 239.255.255.255. Il est aussi possible de diffuser vers des adresses IPv6.

         Note: Cela fonctionnera seulement avec la methode d’encapsulation TS

•   RTP: pour utiliser le "Real-Time Transfer Protocol". Comme avec l’UDP, cela fonctionne avec des adresses unicast et
    multicast.

      Note: Les méthodes UDP, HTTP, MMSH et RTP necessitent de choisir l’option diffuser sur l’interface MacOS X.

(Voir Diffusions, muxeurs et codecs)

Méthode d’encapsulation
choisissez une méthode d’encapsulation qui corresponde aux methodes d’encodage et d’acces de votre diffusion, parmi
MPEG TS, MPEG PS, MPEG 1, OGG, Raw, ASF,AVI, MP4 et MOV. (voirDiffusions, muxeurs et codecs)

Options de transcodage
activez le transcodage video en cochant la case "Codec video". choisisses un codec dans la liste. Vous pouvez egalement
spécifier un debit et une echelle. (voirDiffusions, muxeurs et codecs)
activez le transcodage audio en cochant la case "Codec audio". choisisses un codec dans la liste. Vous pouvez egalement
spécifier un debit et le nombre de canaux audio a encoder (Voir Diffusions, muxeurs et codecs)

Option diverses
Choisissez la methode d’annonce de diffusion. Vous pouvez utiliser SAP (Service Announce Protocol) ou SLP (Service
Location Protocol). Vous devez alors spécifier un nom de chaine. L’interface MacOS X permet egalement d’exporter le
fichier de description (SDP) d’une session RTP en utilisant le serveur HTTP ou RTSP de VLC, ou bien un fichier. Cela

                                                                                                                            18
Chapter 2. Diffusion facile

peut Ãa tre fait en cochant les cases appropriées. La boite SDP URL permet de spécifier l’URL ou la destination ou le
fichier SDP sera disponible.

                                                                                                                     19
Chapter 3. Utilisation avancée du flux de sortie en
ligne de commande

Structure du flux de sortie
      Flux de sortie est le nom d’une fonctionnalité de VLC qui permet de diffuser sur le réseau, ou d’enregistrer, n’importe
      quel flux lu par VLC au lieu de l’afficher. Différents types de traitements peuvent Ãa tre appliqués au flux durant ce
      procédé (transcodage, redimensionnement, filtres, re-multiplexage...) Le flux de sortie peut inclure plusieurs modules,
      chacun d’eux possédant différentes fonctionnalités. Vous pouvez enchaîner les modules afin d’augmanter les
      possibilités.
      Voici la liste des modules actuellement disponibles :

      •   standard permet d’envoyer le flux via un module de sortie : par exemple, UDP, fichier, HTTP... Vous voudrez
          probablement utiliser ce module à la fin de vos chaînes.
      •   trascode est utilisé pour transcoder (décoder et ré-encoder le flux en utilisant un codec et/ou un débit
          différent) l’audio et la vidéo du flux d’entrée. Si les modules d’entrée ou de sortie ne permettent pas le
          contrôle du débit (réseau, périphériques d’acquisition), ceci est fait "à la volée", en temps réel. Ceci
          peut nécessiter un charge importante en CPU, en fonction des paramètres choisis. Les autres flux, tels que fichiers et
          disques, sont transcodés aussi rapidement que le permet le système.
      •   duplicate vous permet de créer une seconde chaîne, dans laquelle le flux sera traité d’une manière
          indépendante.
      •   display vous permet d’afficher le flux d’entrée, tel que VLC le ferait en temps normal. Utilisé de paire avec le
          modules duplicate, ceci vous permet de visualiser le flux durant le traitement.
      •   rtp diffuse sur RTP (un port UDP par flux élémentaire). Ce modules supporte aussi le RTSP.
      •   es vous permet de séparer les flux élémentaires (ES) d’un flux d’entrée. Ceci peut Ãa tre utilisé afin
          d’enregistrer les flux audio et vidéo dans des fichiers séparés, par exemple.
      Chacun de ces modules peut accepter des options. Voici la syntaxe que vous devez employer :

      % vlc flux_d’entrée --sout "#module1{option1=paramètre1{option-du-paramètre1},option2=paramètre2}:#module

            Note: Certaines des options des modules sont requises (option1 dans cet exemple), les autres sont optionnelles. Les
            paramètres des options (option-du-paramètre1 dans cet exemple) sont toujours optionnelles. Ces paramètres
            d’options sont souvent des réglages très avancés. Si vous ne comprenez pas leur description, vous n’en avez
            sûrement pas besoin.

      Vous pouvez aussi utiliser la syntaxe suivante :

      % vlc flux_d’entrée --sout-module1-option1=... --sout-module1-option2=... --sout-module2-option1=... --sout-

      Par exemple, pour transcoder un flux et le diffuser, utilisez :

      % vlc flux_d’entrée --sout ’#transcode{options}:standard{options}’

                                                                                                                               20
Chapter 3. Utilisation avancée du flux de sortie en ligne de commande

Description des modules

     standard (alias std)
     Ce module enregistre le flux dans un fichier ou le diffuse sur le réseau, après l’avoir multiplexé.
     Les options disponibles sont :

     access=
     Ces options permmettent de sélectionner le medium utilisé pour enregistrer ou diffuser le flux. Cette option est
     obligatoirement requise. Les choix possibles sont :

     •   file : enregistre le flux dans un fichier.
         Utilisez l’option append pour ajouter le flux à un fichier existant au lieu de le remplacer.
     •   udp : diffuse vers une adresse UPD unicast ou multicast.
         Les options sont : caching= pour définir le temps pendant lequel VLC devrait garder les données
         en tampon avant de les envoyer, ttl= pour définir le ttl des paquets UDP envoyés, group= pour envoyer les paquets par rafales plutôt que un par un, late= pour éliminer les paquets
         qui arrivent trop en retard à cette étape de la chaîne, raw si vous ne voulez pas attendre que le MTU soit rempli
         avant d’envoyer les paquets.
     •   http : diffuse par HTTP.
         Elément les options sont : user= pour activer l’authentification basique par HTTP et définir
         l’utilisateur, ^wd= pour définir le mot de passe mime= pour définir le type MIME
         retourné par le serveru.
     •   https : diffuse par HTTP, en utilisant une connexion sécurisée SSL
         Les options sont les mÃa me que pour http, plus : cert= pour définir le certificat à utiliser,
         key= pour définir la clef à utiliser ca= pour définir le certificat
         CA à utiliser dans le SSL, crl= pour définir le certificat de révocation à utiliser dans
         la connection SSL.
     •   mmsh : diffuse en utilisant le protocol Microsoft MMS. Ce protocole est utilisé comme méthode de transport par la
         plupart des logiciels Microsoft. Notez que seule une petite partie du protocole MMS est supportée (MMS
         encapsulé dans du HTTP).
         Les options sont les mÃa me que pour le module HTTP.
     •   rtp : diffuse par RTP. Notez que c’est un module assez vieux. Il ne permet pas le RTSP et peux uniquement Ãa tre
         utilisé pour diffuser des flux TS. Veuillez regarder le module de sortie rtp pour un support complet du RTP.
         Les options sont les mÃa mes que pour pour l’udp.

     mux=
     Cette option vous permet de choisir la méthode d’encapsulation utilisée dans le flux. Cette option est obligatoire.
     Les options disponibles sont :

     •   ts : le muxer MPEG2/TS. C’est le muxer standard utilisé pour diffuser du MPEG 2. Ce muxer peut Ãa tre utilisé
         avec n’importe quelle méthode d’accès. Les codecs supportés sont MPEG 1/2/4, MJPEG, H263, H264, I263,
         WMV 1/2 et theora pour la vidéo, l’audio MPEG, AAC et a52 pour le flux audio.

                                                                                                                                21
Chapter 3. Utilisation avancée du flux de sortie en ligne de commande

    Les options sont : pid-video= pour choisir le PID de la piste vidéo, pid-audio= pour choisir le PID de la
    piste audio, pid-spu= pour choisir le PID de la piste de sous-titres, pid-pmt= pour choisir le PID de la PMT
    (Program Map Table), tsid= pour choisir l’ID du flux TS, shaping= pour choisir
    l’intervalle minimum durant lequel le ébit du flux doit rester constant, pour les flux à débit variable,
     use-key-frames utiliser les images I comme limites de délai de formation, pcr= permet de
    choisir à quel intervalle le PCR (Program Clock References) doit Ãa treenvoyé, dts-delay= permet de
    retarder le PTS (Presentation Time Stamps) du DTS (Decoding Time Stamp) du delai indiqué, crypt-audio permet
    d’activer le chiffrement de la piste audio en utilisant l’algorithme CSA, csa-ck= permet de choisir la clef à utiliser pour le chiffrement CSA.
•   ps : le muxer MPEG2/PS. C’est le muxer standard pour fichiers MPEG 2 (.mpg). Il peut Ãa tre utilisé pour les
    méthodes de sortie file et http. Les codecs supportés sont MPEG 1/2 et MJPEG pour la vidéo, l’audio MPEG et
    a52 pour les flux audio.
    La seule option disponible est dst-delay= . Elle permet de contrôler le délai entre le PTS (Presentation
    Time Stamps) et le DTS (Decoding Time Stamp).
•   mpeg1 : le muxer MPEG1. Ce muxer devrait Ãa tre utilisé à la place du ps pour les flux vidéos MPEG 1, pour les
    méthodes de sortie file ou http. Les codecs supportés sont le MPEG 1 et l’audio MPEG.
    Les options sont les mÃa me que pour le muxer PS.
•   ogg : le muxer ogg. C’est le muxer du projet Xiph. Il peut Ãa tre utilisé avec les méthodes de sortie file et http. Les
    codecs supportés sont MEPG 1/2/4, MJPEG, WMV 1/2 et Theora pour la vidéo et vorbix, flac, speex, a52 et
    l’audio MPEG pour l’audio.
    Il n’y a pas d’option pour ce muxer.
•   asf : le muxer ASF de Microsoft. C’est le muxer standard utilisé pour la diffusion par les logiciels Microsoft. Il est
    aussi utilisé comme conteneur pour les fichiers WMA audio. Ce muxer peut Ãa tre utilisé par les méthodes de
    sortie file et http. Les codecs supportés sont MPEG 4, MJPEG, WMV 1/2 pour la vidéo, l’audio MPEG et a52 pour
    les flux audio.
    Le options disponibles sont : title=, autor=, copyright=,
    comment=, rating= allow you to set what will be displayed in the according field of the
    stream comments.
•   asfh : c’est une version spécial du muxer ASF, qui peut Ãa tre utilisée pour la diffusion MMSH. MMSH est la seule
    méthode de sortie supportée. Les codecs supportés sont les mÃa me que pour ASF.
    Les options sont les mÃa mes que pour ASF.
•   avi : le muxer AVI de Microsoft. C’est un format d’encapsulation très répendu pour les fichiers MPEG 4. La seule
    méthode de sortie est file. Les codecs supportés sont MPEG 1/2/4, H263, H264 et I263 pour la vidéo, l’audio
    MPEG et a52 pour les flux audio.
    Il n’y a pas d’option pour ce muxer.
•   mpjpeg : le muxer MJPEG. Ce format d’encapsulation est largement utilisé dans les caméras de télé-
    surveillance avec un serveur web. Ces flux sont généralement incrustés dans des pages web et visualisée par
    les navigateurs Internet standrad, puisqu’ ils ne sont autre qu’un succession d’images JPEG. La seule méthode de
    sortie supportée est http. Le seul codec est MJPEG. On ne peut pas y mettre de piste audio.
    Aucune option n’est disponible pour ce muxer.

url=
Cette option permet de donner les informations sur l’emplacement oÃ1 le flux doit Ãa tre enregistré ou envoyé.
Le sens de l’option url dépend du paramètre utilisé à l’option access.

                                                                                                                           22
Chapter 3. Utilisation avancée du flux de sortie en ligne de commande

•   Si la méthode de sortie est file, url est le chemin complet oÃ1 le fichier doit Ãa tre enregistré.
•   Si la méthode de sortie est udp ou rtp , url est l’adresse unicast ou multicast de destination, et éventuellement le
    port UDP, dans la forme adresse:port.
•   Si la méthode de sortie est http, https ou mmsh, url est l’adresse, le port, et le chemin réseau local sur lequel le
    server doit attendre des requètes. Si aucune adresse est donnée, VLC écoutera sur toutes les interfaces réseau.
    Cette information doit Ãa tre de la forme adresse:port/chemin .

sap
Utilisez cette option si vous souhaitez que VLC envoie des annonces SAP (Session Announcement Protocol). SAP est un
protocole de découverte de services, qui utilise une adresse multicast spécifique pour envoyer une liste des flux
disponibles sur un serveur.

      Note: Cette option peut Ãa tre activé dans la méthode de sortie udp .

group=
Cette option permet de renseigner le nom d’un éventuel groupe de flux. Un client sous VLC pourra utiliser de cham
pour classer les flux.

      Note: Cette option utilise une extension privée du protocole SAP. VLC sera le seul client capable de lire ce champ.
      Cette option peut uniquement Ãa tre utilisée lorsque l’option sap est activée.

sap-ipv6
Utilisez cette option si vous voulez que les annonces SAP soient envoyées en utilisant le protocole IPv6 au lieu de IPv4.

      Note: Cette option peut uniquement Ãa tre utilisée lorsque l’option sap est activée.

slp
SLP signifie Service Location Protocol. C’est une alternative au SAP pour annoncer des sessions. Utilisez cette option si
vous souhaitez utiliser le SLP.

name=
Utilisez cette option pour préciser le nom du flux à envoyer dans les annonces SAP et SLP.

      Note: Cette option peut uniquement Ãa tre utilisée lorsque les options sap ou slp sont activées.

                                                                                                                             23
Chapter 3. Utilisation avancée du flux de sortie en ligne de commande

display
Ce module est utilisé pour afficher le flux. C’est particulièrement utile dans une chaine duplicate, pour surveiller le flux
en train d’Ãa tre enregistré ou diffusé.
les options disponibles sont :

novideo
Vous pouvez utiliser cette option pour désactiver la vidéo dans le flux à l’affichage.

noaudio
Vous pouvez utiliser cette option pour désactiver le son dans le flux à l’affichage.

delay=
Vous pouvez utiliser cette option pour introduire un delai dans l’affichage du flux. Le délai est en ms.

rtp
Ce module peut Ãa tre utilisé pour envoyer un flux en utilisant le protocole RTP (Real Time Protocol) (voir RFC 3550).

      Note: MÃa me s’il est possible d’utiliser le RTSP dans ce module, vous ne pourrez pas faire de la Vidéo à la
      Demande. Veuillez vous reporter à la description du module VLC pour cela.

Les différentes options disponibes sont :

dst=
Cette option vous permet de donner l’adresse UDP de destination. Cela peut Ãa tre l’adresse d’un hote ou d’un group
multicast. Cette option doit Ãa tre renseignée, à moins que l’option sdp=rtsp:// le soit (voir plus bas). Dans le dernier
cas, le flux sera envoyé à l’hôte faisant la requÃa te RTSP.

port=
Cette option permet de régler le port UDP utilisé pour envoyer le premier flux élémentaire. Ce port doit Ãa tre
fourni. Les autres flux seront en utilisant les ports impairs juste au dessus.

port-video=
Cette option vous permet de définir le port UDP utilisé pour envoyer le premier flux élémentaire vidéo. Ce port
doit Ãa tre impair.

                                                                                                                           24
Chapter 3. Utilisation avancée du flux de sortie en ligne de commande

port-audio=
Cette option vous permet de définir le port UDP utilisé pour envoyer le premier flux élémentaire audio. Ce port
doit Ãa tre impair.

sdp=
Cette option vous permet de choisir la manière dont le fichier SDP (Session Description Protocol) correspondant au flux
doit Ãa tre disponible.
Le options sont :

•   file://, pour exporter le contenu SDP en tant que fichier local.
•   http://, pour rendre le fichier disponible en utilisant le serveur HTTP intégré au
    VLC.

         Note: L’argument interface locale IP est facultatif. S’il n’est pas fourni, VLC écoutera sur toutes les interfaces
         disponibles.

•   rtsp://, pour rendre le fichier SDP disponible en utilisant le protocole RTSP (voir RFC
    2326).

         Note: L’argument interface locale IP est facultatif. S’il n’est pas fourni, VLC écoutera sur toutes les interfaces
         disponibles.

•   sap, pour exporter le contenu SDP en utilisant le SAP (Session Announcement Protocol, voir RFC 2974).

ttl=
Cette option peut Ãa tre utilisée pour fixer le TTL (Time to Live) des paquets UDP envoyés.

mux=
Cette option vous permet de définir la méthode d’encapsulation pour envoyer le flux. Voir les options de mux= du
module standard pour une description des méthodes disponibles. Seuls ts et raw (pas d’encapsulation) sont des valeurs
possibles pour les flux RTP. La valeur par défaut est RAW.

name=
Cette option peut Ãa tre utilisée pour donner un nom qui sera affiché au client affichant le flux.

description=
Cette option peut Ãa tre utilisée pour donner une description supplémentaire du flux.

                                                                                                                               25
Chapter 3. Utilisation avancée du flux de sortie en ligne de commande

url=
Cette option permet de donner l’adresse d’un site web contenant des informations supplémentaires sur le flux.

email=
Cette option permet de donner une adresse e-mail de contact

es
Le module es peut Ãa tre utilisé pour séparer les différents flux élémentaires du flux principal, et enregistrer
chacun d’eux dans un fichier différent ou les envoyer vers d’autres destinations.
Les paramètres disponibles sont :

access-video=
Utilisez cette option pour donner le média utilisé pour enregistrer ou envoyer les flux élémentaires vidéo. Les
valeurs possibles sont les mÃa me que celles de l’option access du module standard (voir après).

access-audio=
Utiliser cette option pour régler le media choisi pour enregistrer ou envoyer le flux élémentaire audio. Les valeurs
possibles et les options sont les mÃa mes que celles de l’option access du module standard (voir précédemment).

access=
Cette option peut Ãa tre utilisée à  la place des 2 options access-video et access-audio, quand elles partagent le
mÃa me réglage.

mux-video=
Utiliser cette option pour régler la méthode d’encapsulation choisie pour le flux élémentaire video. Les valeurs
possibles et les options sont les mÃa mes que celles de l’option mux du module standard (voir précédemment).

mux-audio=
Utiliser cette option pour régler la méthode d’encapsulation choisie pour le flux élémentaire audio. Les valeurs
possibles et les options sont les mÃa mes que celles de l’option mux du module standard (voir précédemment).

mux=
Cette option peut Ãa tre utilisée à la place des 2 options mux-video et mux-audio, quand elles partagent le mÃa me
réglage.

                                                                                                                        26
Chapter 3. Utilisation avancée du flux de sortie en ligne de commande

dst-video=
Utiliser cette option pour régler le lieu dans lequel sera sauvé, envoyé ou rendu accessible le flux élémentaire
vidéo. La signification exacte de cette option dépend de la valeur de l’option access-video et est la mÃa me que
l’option url du module standard (voir précédemment).

     Note: Si vous utilisez la chaine de caractère %d dans le champ d’adresse (url), VLC la remplacera par le numéro
     de la piste audio ou vidéo en question. La chaine %c sera remplacée par le nom (FOURCC) du codec de la piste.

dst-audio=
Utiliser cette option pour régler le lieu dans lequel sera sauvé, envoyé ou rendu accessible le flux élémentaire
audio. La signification exacte de cette option dépend de la valeur de l’option access-audio et est la mÃa me que l’option
url du module standard (voir précédemment).

     Note: Si vous utilisez la chaine de caractère %d dans le champ d’adresse (url), VLC la remplacera par le numéro
     de la piste audio ou vidéo en question. La chaine %c sera remplacée par le nom (FOURCC) du codec de la piste.

dst=
Cette option peut Ãa tre utilisée à la place d’à la fois dst-video et dst-audio, quand elles partagent les mÃa mes
réglages.

transcoder
Vous pouvez utiliser ce module pour transcoder un flux, c’est-à -dire changer ses codecs ou ses débits d’encodage.
Quelques ajustements supplémentaires peuvent Ãa tre réalisés pendant cette phase, comme changer la taille,
désentrelacer, rééchantillonner, etc.

     Note: Selon le débit original du flux et les options choisies, transcoder peut Ãa tre une tache très intensive pour le
     processeur. En conséquence, la diffusion du flux transcodé en temps réel peut mener à des pertes de frame ou
     une mauvaise image dans certains cas, quand il manque des ressources.

Les options disponibles sont :

vcodec=
Cette option permet de choisir le codec des pistes vidéos dans lequel le flux d’entrée doit Ãa tre transcodé.
Une liste de codecs disponibles peut Ãa tre trouvée sur la page des fonctionnalités de diffusion
(/streaming/features.html)

vb=
Cette option permet de régler le débit flux video transcodé en kbit/s

                                                                                                                           27
Chapter 3. Utilisation avancée du flux de sortie en ligne de commande

venc=
Ceci permet de régler l’encodeur à utiliser pour encoder les vidéos. Les options disponibles sont :

•   ffmpeg : c’est le module d’encodage libavcodec. Il contient un grand nombre de codecs différents (la liste peut Ãa tre
    trouvée sur la page des fonctionnalités de diffusion (/streaming/features.html).
    Les options sont : keyint=>nombre de frames< permet de régler le nombre maximal de frames entre 2 frames clé,
    hurry-up permet à l’encodeur de diminuer la qualité du flux si le processeur ne peut soutenir le taux d’encodage,
    interlace permet d’améliorer la qualité de l’encodage d’une vidéo entrelacée, noise-reduction= active un algorithme de réduction du bruit (réduira le débit demandé au coût des
    détails dans l’image), vt= permet de régler la tolérance du débit de la
    vidéo de sortie, bframes= règle le nombre de B frames entre 2 frames clé,
    qmin= permet de régler l’échelle minimale des quantizers, qmax= permet de régler
    l’échelle maximale des quantizers,qscale= permet de régler une échelle fixe de quantizers pour des
    encodages VBR, i-quant-factor= permet de régler le facteur de quantization des I frames
    par rapport aux P frames, hq= permet de régler le niveau de qualité pour l’encodage des vecteurs de
    mouvement (les arguments sont simple, rd ou bits, par défaut simple), strict= permet de
    forcer un niveau strict de conformité (les valeurs possibles sont -1, 0, 1, par défaut 0), strict-rc active un algorithme
    de contrôle à taux strict, rc-buffer-size= permet de choisir la taille du buffer utilisé pour le
    contrôle du taux (une valeur élevée correspond à un contrôle plus efficace), rc-buffer-aggressivity= permet de régler l’aggressivité du taux de contrôle du buffer, pre-me permet
    d’activer l’estimation pre motion, mpeg4-matrix active l’utilisation de la matrice de quantification MPEG4 avec les flux
    MPEG2, améliorant la qualité tout en gardant la compatibilité avec les décodeurs MPEG2, trellis active la
    quantization trellis (meilleure qualité, mais traitement plus lent).
•   theora : l’encodeur theora Xiph.org. Ce module est utilisé pour produire des flux theora. Theora est un codec vidéo
    sans brevet et sans royalties.
    La seule option disponible est quality=. Cette option permet de créer un flux VBR,
    remplaçant le réglage vb, le nieau de qualité doit Ãa tre un entier entre 1 et 10. Le meilleur étant le plus
    élevé.
•   x264. x264 est un encodeur h264 libre et open-source. h264 (ou MPEG4-AVC) est un codec viddéo relativement
    récent de haute qualité.
    Les options sont : keyint= permet de régler le nombre maximal de framesentre 2 frames clé,
    idrint=permet de fixer le nombre maximal de frames entre 2 framesIDR, bframes= permetde régler le nombre de B frames entre une frame I et uneframe P, qp=permet de fixer une valeur fixe des quantizers (entre 1 et 51),qp-max= permet
    dedonner la valeur maximale des quantizers, qp-min= permet de régler la valeur
    minimaledes quantizers, cabac active l’algorithmeCABAC (Context-Adaptative Binary Arithmetic Coding) (plus
    lentmais améliore la qualité), loopfilteractive le filtre loop, analyse active le modeanalyze, frameref= permetde régler le nombre de frames utilisées comme prédicateurs,scenecut= permet de
    contrôler avecquelle aggressivité l’encodeur doit insérer des I-frame externes auchanegement de scène.

fps=
Cette option permet de régler le framerate d’une vidéo transcodée, en images par seconde, réduire le framerate
d’une vidéo peut aider à diminuer son débit.

deinterlace
Cette option permet d’activer le désentrelacement de vidéos entrelacées avant d’encoder.

                                                                                                                             28
Vous pouvez aussi lire