Chapter 1. Introduction

Table of Contents

Qu'est ce que le projet VideoLAN ?
Qu'est-ce qu'un codec ?
Utilisation de VideoLAN ?
Utilisation de la ligne de commande

Qu'est ce que le projet VideoLAN ?

Aperçu

VideoLAN est une solution logicielle complète de diffusion vidéo, développée par des étudiants de l'Ecole Centrale Paris et des développeurs du monde entier, sous licnese GNU General Public License (GPL). VideoLAN est conçu pour diffuser des vidéos MPEG sur des réseauxhaut déit.

La solution VideoLAN comprend :

  • VLS (VideoLAN Server), qui est capable de diffuser des fichiers MPEG-1, MPEG-2 et MPEG-4, des DVDs, des canaux satellite numériques, des chaînes de télévision numérique terrestre, et de la vidéo en temps réel sur un réseau en unicast ou multicast,

  • VLC (à l'origine, VideoLAN Client), qui peut être utilisé en tant que serveur, pour diffuser des fichiers MPEG-1, MPEG-2 et MPEG-4, des DVDs, ou de la vidéo en temps réel sur un réseau en unicast ou multicast ; ou utilisé en temps que client pour recevoir, décoder et afficher des flux vidéo sous de nombreux systèmes d'exploitation.

Voici le schéma global de la solution VideoLAN complète :

Figure 1.1.  La solution VideoLAN globale

La solution VideoLAN globale

De plus amples détails sur le projet peuvent être trouvés sur le Site web de VideoLAN.

Logiciels VideoLAN

VLC

VLC fonctionne sur de nombreuses plateformes : Linux, Windows, Mac OS X, BeOS, *BSD, Solaris, Familiar Linux, Yopy/Linupy et QNX. Il est capable de lire :

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

  • Des DVDs et VCDs,

  • depuis une carte satellite (DVB-S),

  • Des flux MPEG-1, MPEG-2 et MPEG-4 envoyés sur le réseau par un VLS ou un VLC.

VLC peut également être employé en tant 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 à dire à une addresse IP) : ceci est appelé unicast,

  • Un groupe dynamique de machines que les clients rejoignent ou quittent (une addresse IP multicast): ceci est appelé multicast,

en IPv4 ou en IPv6 .

Pour la liste complète des fonctionnalités de VLC pour chaque plateforme, regardez la page des fonctionnalités (en anglais).

Note

VLC ne fonctionna pas sous Mac OS 9, et ne fonctionnera probablement jamais sur cette plateforme.

VLS

VLS est capable de diffuser:

  • des fichiers MPEG-1, MPEG-2 ou MPEG-4 stockés sur un disque dur, un CD, ...,

  • un DVD dans un lecteur local ou copié sur un disque dur,

  • une carte satellite (DVB-S) ou une carte de télévision numérique terrestre (DVB-T) ,

  • une carte d'encodage MPEG ;

vers:

  • une machine (c'est à dire à une addresse IP) : ceci est appelé unicast,

  • Un groupe dynamique de machines que les clients rejoignent ou quittent (une addresse IP multicast): ceci est appelé multicast,

en IPv4 ou en IPv6.

Une machine à base de Pentium 100 MHz munie de 32 Mo de mémoire devrait suffire pour diffuser un flux sur un réseau. Si vous diffusez de nombreuses vidéos, stockées sur un disque dur, la vraie limitation ne vient pas du processeur mais du disque dur et de la connexion réseau.

VLS fonctionne sous Linux et Windows. Pour la liste complète des possibilités de VLS sur chaque plateforme, référez-vous à la page des fonctionnalités de diffusion.

Mini-SAP-server

Vous pouvez ajouter un service de découverte de services utilisant le standard SAP/SDP sur la solution VideoLAN. Le mini-SAP-server envoie des annonces indiquant les programmes multicast sur le réseau en IPv4 ou en IPv6 et les VLCs reçoivent ces annonces et ajoutent automatiquement les programmes annoncés à leur liste de lecture.

Le mini-SAP-server fonctionne sous Linux et Mac OS X.

Qu'est-ce qu'un codec ?

Afin de bien comprendre le fonctionnement de la solution VideoLAN, vous devez connaître la différence entre un codec et un format conteneur

  • Un codec est un algorithme de compression, utilisé afin de réduire la taille du flux. Il existe des codecs audio et vidéo. MPEG-1, MPEG-2, MPEG-4, Vorbis, DivX, ... sont des codecs

  • Un format conteneur contient un ou plusieurs flux déjà encodés. Très souvent, il y a un flux audio et un flux vidéo. AVI, Ogg, MOV, ASF,... sont des formats conteneurs. Les flux contenus peuvent utiliser différents codecs. Si tout était parfait, n'importe quel codec pourrait être mis dans n'importe quel format conteneur, mais il existe des incompatibilités. Vous trouverez une matrice des codecs et formats conteneurs possible sur la page des fonctionnalités

Pour décoder un flux, VLC commence par le démultiplexer. Celà signifie qu'il lit le format conteneur, et sépare l'audio, la vidéo, et éventuellement les sous-titres. Ensuite, chacun de ces flux séparés est envoyé aux décodeurs qui vont effectuer le processus mathématique de décompression .

MPEG est un cas particulier:

  • MPEG est un codec. Il en existe plusieurs versions, appelées MPEG-1, MPEG-2, MPEG-4, ...

  • MPEG est également un format de conteneur, parfois appellé MPEG System. Il en existe plusieurs types: ES, PS, et TS

    Quand vous jouez une vidéo MPEG depuis un DVD, par exemple, le flux MPEG est en fait composé de plusieurs flux (appelés flux élémentaires, ES): un flux vidéo, un flux audio, les sous-titres, ... Tous ces flux sont multiplexés dans nu seul flux Program Stream (PS). Ainsi, les fichiers .VOB du DVD sont en fait des fichiers MPEG-PS. Mais ce format PS n'est pas adapté pour la diffusion sur un réseau ou par un satellite, par exemple. Un autre format, appelé Transport Stream, ou TS, fut conçu pour la diffusion de vidéo MPEG.

Utilisation de VideoLAN ?

Documentation

La documentation utilisateur de VideoLAN comporte 4 documents :

  • le VideoLAN HOWTO. Ce document est le guide complet de la solution de streaming VideoLAN. Ses exemples concrets vous aideront à mettre en place votre solution de diffusion.

  • Le VLC user guide. Ce document est le guide complet de VLC

  • Le VLS user guide. Ce document est le guide complet de VLS.

  • La FAQ de VideoLAN. Ce document contient la Foire Aux Questions de VideoLAN

La denière version de ces documents se trouve sur la page documentation.

Support aux utilisateurs

Si vous éprouvez des difficultés pour utiliser VideoLAN et que vous ne trouvez pas la réponse à vos problèmes dans la documentation, merci de regarder dans l' archive en-ligne des mailing-lists. Il existe deux listes anglophones pour les utilisateurs :

  • vlc@videolan.org pour les questions relatives à VLC ,

  • streaming@videolan.org pour les questions relatives à VLS, au mini-SAP-server, et au réseau .

Pour vous inscrire ou vous désinscrire de ces mailing-lists, merci de voir la page mailing-lists.

Vous pouvez également parler aux utilisateurs et développeurs VideoLAN sur IRC, sur le serveur irc.freenode.net, et le channel #videolan.

Si vous découvrez un bug, merci de bien vouloir suivre les instructions de la page report de bug .

Utilisation de la ligne de commande

  • VLC possède un certain nombre d'interfaces graphiques différentes, qui sont organisées de façon assez diverses, de façon à s'harmoniser avec le style de chaque système d'exploitation. Documenter l'utilisation de chaque interface graphique serait très long et certaines fonctionnalités ne sont accessibles que depuis l'interface en ligne de commande. C'est pourquoi nous avons décidé de ne documenter que l'interface en ligne de commande, mais dans la plupart des cas, il devrait être assez facile de deviner comment utiliser l'interface graphique pour le même usage !

  • VLS est doté d'une interface en ligne de commande, et d'une interface Telnet, mais n'a pas d'interface graphique !

Toutes les commandes que vous voyez dans ce document doivent être tapées dans un terminal.

Ouvrez un terminal

Windows

Cliquez sur Démarrer, Exécuter and tapez :

  • cmd Enter (Windows 2000 / XP),

  • command Enter (Windows 95 / 98 / ME).

Le terminal apparait

Figure 1.2. Windows terminal

Windows terminal

Note

Sous Windows, vous devez vous situer dans le dossier où le programme est installé pour le lancer

Linux / Unix

Ouvrez un terminal :

Figure 1.3. Linux X terminal

Linux X terminal

Dans la documentation, nous adoptons les conventions suivantes pour les commandes Unix :

  • Les commandes devant être lancées en tant que root commencent par un # :

    # 
    
    
    commande_a_lancer_en_root
    
  • Les commandes devant être lancées en tant qu'utilisateur normal commencent par un % :

    % 
    
    
    commande_a_lancer_en_tant_qu_utilisateur
    

Mac OS X

Allez dans Applications, ouvrez le dossier Utilitaires et double-cliquez sur Terminal :

Figure 1.4. Mac OS X terminal

Mac OS X terminal

Note

Sous Max OS X, vous devez vous situer dans le dossier où le programme est installé pour le lancer, et le lancer avec ./ .

BeOS

Dans la barre de bureau, allez à Application et sur Terminal :

Figure 1.5. BeOS terminal

BeOS terminal

Note

Sous BeOS, vous devez vous situer dans le dossier où le programme est installé pour le lancer, et le lancer avec ./.