[ Présentation | Installation des bibliothèques de base ( madlibdvdcss , libdvdread , libdvdplay , libdvdnav , libdvbpsi , live555 ) |  Les lecteurs DVD ( totem , kaffeine ) | Les lecteurs multi formats ( présentation , vlcxine MPlayer  ) | Streaming vidéo ( présentation , diffuser vers un poste, streaming sur le réseau ,  vidéo à la demande ) ]

Dernière modification 21 décembre 2011

Les lecteurs vidéo sous Linux


(ce document est disponible au format pdf dans la rubrique téléchargement)

Présentation

Sur cette page sont présentés les lecteurs vidéo les plus courant sous linux, ils vous permettront de lire à peu près tous les types de formats vidéo (conteneur et codec) y compris les DVD.

On suppose que vous êtes passé par les pages outils de base pour la vidéo et conteneur vidéo.

[Retour haut de la page ]

Installation des bibliothèques de base

Installation de mad

MAD est un décodeur audio haute qualité MPEG. L'URL officiel est www.underbit.com/products/mad/ vous y trouverez la dernière archive que vous décompressez en tapant :

tar xvfz libmad-0.15.1b.tar.gz

Cela donne le répertoire mad-0.15.1b dans lequel on tape successivement

./configure
make

si vous rencontrez l'erreur suivante

cc1: erreur: option "-fforce-mem" de la ligne de commande non reconnue

Editez le fichier configure et supprimez fforce-mem

optimize="$optimize -fforce-mem"

relancez configure et make puis en tant que root

make install
ldconfig

[Retour haut de la page ]

Installation de libdvdcss

Libdvdcss est une bibliothèque offrant des outils pour lire du flux MPEG2 d'un disque dur ou d'un DVD. Il permet aussi de lire les DVD cryptés. L'URL est   http://www.videolan.org/developers/libdvdcss.html on y récupère l'archive qu'on décompresse en tant

tar xvfz libdvdcss-1.2.11.tar.gz


Cela donne le répertoire libdvdcss-1.2.11 dans lequel on tape

./configure
make


Puis en tant que root

make install

[Retour haut de la page ]

Installation de libdvdread

Cette bibliothèque offre des outils pour lire les DVD, elle se base sur la biblio libdvdcss. L'URL est  http://www.mplayerhq.hu/MPlayer/releases/dvdnav-old/ où on récupérera l'archive qu'on décompresse en tapant

tar xvfj ibdvdread-4.1.3.tar.bz2

Cela donne le répertoire libdvdread-4.1.3 dans lequel on tape

./configure2
make


Puis en tant que root

make install

[Retour haut de la page ]

Installation de libdvdplay

libdvdplay est une biblio de fonctions qui se situent juste au dessus de celles de libdvdplay. Il permet la lecture, mais aussi la recherche de piste (chapitre) pour les DVD. Elle offre aussi d'autres fonctions pour les lecteurs DVD de haut niveau (sous titrage, titres, ...). L'URL officiel est http://www.videolan.org/developers/libdvdplay.html on y récupère l'archive qu'on décompresse en tapant

tar xvfz libdvdplay-1.0.1.tar.gz

Cela donne le répertoire libdvdplay-1.0.1 dans lequel on tape

./configure
make


Puis en tant que root

make install

[Retour haut de la page ]

Installation de libdvdnav

Cette bibliothèque de fonctions fournit des outils pour pouvoir "naviguer" dans un DVD, c'est à dire pouvoir utiliser les menus interactifs proposés dans la plupart des DVD. L'URL est http://www.mplayerhq.hu/MPlayer/releases/dvdnav-old/ on y récupère l'archive qu'on décompresse en tapant

tar xvfj libdvdnav-4.1.3.tar.bz2

Cela donne le répertoire libdvdnav-4.1.3 dans lequel on tape

./configure
make


Puis en tant que root

make install

[Retour haut de la page ]

Installation de libdvbpsi

libdvbpsi dont le site est http://www.videolan.org/developers/libdvbpsi.html permet la diffusion de flux MPEG2, on y récupère l'archive qu'on décompresse en tapant

tar xvfj libdvbpsi-0.2.2.tar.bz2

Cela donne le répertoire libdvbpsi-0.2.2 dans lequel on tape

./configure
make

puis en tant que root

make install

cette bibliothèque est nécessaire à vlc pour faire du streaming vidéo.

[Retour haut de la page ]

Installation de live555

live555 dont le site http://www.live555.com/liveMedia/public/ permet de faire du streaming et de la réception vidéo, il est nécessaire à vlc. On décompresse l'archive en tapant

tar xvfz live.2011.12.20.tar.gz 

Cela donne le répertoire live dans lequel on tape ensuite

./genMakefiles linux

Sous plateforme 64bits, il faudra éditer l'ensemble des Makefile et modifier comme suit les lignes suivantes

C_COMPILER =            cc -fPIC

CPLUSPLUS_COMPILER =    c++ -fPIC

on tape ensuite

make

pour le rendre disponible pour d'autres applications notamment MPlayer on tape en tant que root

ln -s /usr/local/linux/multimedia/live/ /usr/local/lib
ln -s /usr/local/linux/multimedia/live/liveMedia/include/ /usr/local/lib/live

vous devez bien évidemment mettre votre chemin absolu de live
[Retour haut de la page ]

Les lecteurs DVD

Présentation

Ces lecteurs permettent de lire les DVD tout en ayant accès au menu interactif qu'on peut trouver sur la plupart des DVD. Ces outils requièrent l'installation d'un certain nombres d'outils. Il est à noter que MPlayer et xine présentés plus bas lisent très bien les DVD.

[Retour haut de la page ]

Totem

Totem est le nouveau lecteur DVD qu'on peut trouver sur la Mandriva. Il est prévu pour l'environnement Gnome il faudra donc installer des packages de développement pour Gnome, à savoir  (libgnomeui-2.0 >= 2.3.3 libglade-2.0 gnome-vfs-2.0 >= 2.9.92 gnome-vfs-module-2.0 >= 2.9.92 gnome-desktop-2.0 >= 2.1.5 gnome-icon-theme >= 2.9.3) et toutes leurs dépendances (urpmi). Il requiert également l'installation d'une version récente de xine-lib (voir plus bas), du package nautilus-cd-burner d'une version supérieur à 2.8 que vous devrez installer si vous voulez passer par une installation par les sources. Autant dire que c'est un peu la galère pour l'installer avec les sources.

Le site officiel est http://www.hadess.net/totem.php3 pour ceux qu'ils veulent tenter une installation par les sources sinon pour une Mandriva on peut se contenter de taper pour l'installation

urpmi totem

ou bien pour une (k)ubuntu

apt-get install totem

On le lance simplement en tapant totem cela donne



Son fonctionnement est très intuitif et il dispose de toutes les fonctionnalités utiles à un lecteur de DVD (navigation dans les chapitres, choix des langues, sous-titres, plein écran, ...).

[Retour haut de la page ]

Kaffeine

kaffeine est le lecteur DVD par défaut installé pour KDE, le site officiel est http://kaffeine.sourceforge.net/ à noter qu'il a besoin de l'installation de xine.
Pour une Mandriva un simple urpmi kaffeine devrait suffire (de toute façon généralement il est de base dans l'installation).



Il dispose de toutes les fonctionnalités propres à la lecture des DVD (menu, sous titre, chapitre et j'en passe). Comme totem il est plutôt sympa et très intuitif.
[Retour haut de la page ]

Les lecteurs multiformats

Présentation

Je vous présente ici les lecteurs les plus courants à savoir xine, MPlayer et aviplay. Ces différents players sont capables de lire les avi classiques (du style divx/xvid mp3) mais aussi les ogm et les matroska (sauf pour aviplay qui ne reconnait pas ces deux derniers conteneurs vidéo).

[Retour haut de la page ]

VLC

Installation

VLC est un player vidéo particulièrement puissant, le site officiel est http://www.videolan.org on y récupère l'archive qu'on décompresse en tapant

tar xvfj vlc-1.1.11.tar.bz2

cela donne le répertoire vlc-1.1.11. On installera éventuellement les packages qt4-devel, fribidi, fribidi-devel, libgcrypt-devel, lua-devel et libSDL_image-devel (sous ubuntu libsdl-image1.2-dev)
Pour les versions 64bits de mandriva, il faudra rajouter 64 juste après lib (exemple lib64SDL_image-devel) sinon il va vous installer la version 32 bits.
Sous ubuntu en plus, sous /usr/include il faut créer le lien suivant

ln -s postproc libpostproc

On revient dans vlc-1.1.11 on y tape

./configure  --enable-live555 --with-live555-tree=/usr/local/linux/multimedia/live

les options permettent d'activer les fonctions de streaming, pour la dernière option vous devez indiquer le répertoire en absolu de live555
puis on tape

make

et en tant que root

make install

ldconfig

[Retour haut de la page ]

Utilisation

Il suffit de taper vlc, l'interface est particulièrement riche (nettement plus que xine ou mplayer qui sont basiques à côté).




[Retour haut de la page ]

Xine

Installation

xine est disponible sur la Mandriva. Dans ce paragraphe je détaille l'installation de la version tarball disponible sur le site officiel. Avant d'aller plus loin on pourra installer les packages suivants

libalsa2-devel

Pour une (k)ubuntu

libsdl1.2-dev

On  récupérera xine à l'URL xine.sourceforge.net. On décompresse la première archive en tapant

tar xvfz xine-lib-1.1.20.tar.gz

Cela donne le répertoire xine-lib-1.1.20 dans lequel on tape

./configure

Voici le résultat

xine-lib summary:
----------------
 * input plugins:
   - file          - net
   - stdin_fifo    - rtp
   - http          - mms
   - pnm           - rtsp
   - dvb
   - dvd (internal libs)
   - vcd (internal libs)
   - vcdo
   - cdda
   - v4l
   - v4l2

 * demultiplexer plugins:
   - avi           - mpeg
   - mpeg_block    - mpeg_audio
   - mpeg_elem     - mpeg_pes
   - mpeg_ts       - qt/mpeg-4
   - film          - roq
   - fli           - smjpeg
   - idcin         - wav
   - wc3 mve       - voc
   - vqa           - aiff
   - cdda          - snd/au
   - yuv4mpeg2     - real/realaudio
   - ea wve        - raw dv
   - interplay mve - psx str
   - ws aud        - pva
   - vox
   - nsv           - 4xm
   - FLAC          - aac
   - iff           - matroska
   - vmd           - flv
   - nsf
   - ogg
   - FLAC (with libFLAC)
   - ac3 (internal library)

 * video decoder plugins:
   - MPEG 1,2         - Amiga Bitplane
   - Raw RGB          - Raw YUV
   - ffmpeg (external library):
     - MPEG-4 (ISO, Microsoft, DivX*, XviD)
     - Creative YUV    - Motion JPEG
     - Cinepak         - MS Video-1
     - FLI/FLC         - MS RLE
     - Id RoQ          - Id Cin
     - Apple Graphics  - Apple Video
     - Apple Animation - Interplay Video
     - Westwood VQA    - Origin Xan
     - H.263           - Intel Indeo 3
     - SVQ1            - SVQ3
     - Real Video 1.0  - Real Video 2.0
     - 4X Video        - Sierra Video
     - Asus v1/v2      - HuffYUV
     - On2 VP3         - DV
     - 8BPS            - Duck TrueMotion v1
     - ATI VCR1        - Flash Video
     - ZLIB            - MSZH
   - dxr3_video
   - gdk-pixbuf
   - theora

 * audio decoder plugins:
   - GSM 06.10       - linear PCM
   - ffmpeg (external library):
     - Windows Media Audio v1/v2/Pro
     - Windows Media Audio v1/v2/Pro
     - DV            - logarithmic PCM
     - 14k4          - 28k8
     - MS ADPCM      - IMA ADPCM
     - XA ADPCM      - Game DPCM/ADPCM
     - Mace 3:13     - Mace 6:1
     - FLAC
     - E-AC-3
     - AAC LATM
   - Nosefart (NSF)
   - FLAC (with libFLAC)
   - vorbis
   - MAD (MPG 1/2/3) (internal library)
   - DTS (internal library)
   - A52/ra-dnet (internal library)
   - MusePack (internal library)

 * subtitle decoder plugins:
   - spu             - spucc
   - spucmml         - sputext
   - spudvb
   - dxr3_spu

 * post effect plugins:
  * planar video effects:
   - invert          - expand
   - eq              - eq2
   - boxblur         - denoise3d
   - unsharp         - tvtime
  * SFX:
   - goom            - oscope
   - fftscope        - mosaico

 * video driver plugins:
   - XShm (X11 shared memory)
   - SyncFB (for Matrox G200/G400 cards)
   - Xv (XVideo *shared*)
   - XxMC (XVideo extended motion compensation)
   - XvMC (XVideo motion compensation)
   - OpenGL
   - xcb-shm (X shared memory using XCB)
   - xcb-xv (XVideo using XCB)
   - aa (Ascii ART)
   - fb (Linux framebuffer device)
   - sdl (Simple DirectMedia Layer)
   - dxr3 (Hollywood+ and Creative dxr3, mpeg video only)

 * audio driver plugins:
   - oss (Open Sound System)
   - alsa
   - pulseaudio sound server
---

On tape ensuite

make

puis en tant que root

make install

Dans le fichier /etc/ld.so.conf on rajoute les lignes

/usr/local/lib/xine/plugins/1.30
/usr/local/lib/xine/plugins/1.30/vidix
/usr/local/lib/xine/plugins/1.30/post

On tape alors, toujours en tant que root

ldconfig

Maintenant on décompresse la deuxième archive en tapant

tar xvfz xine-ui-0.99.6.tar.gz

Cela donne le répertoire xine-ui-0.99.6 dans lequel on tape successivement

./configure --disable-lirc
make

Puis en tant que root

make install

[Retour haut de la page ]

Utilisation

On lance xine en tapant simplement

xine

Voilà le résultat avec le skin CelomaChrome


Xine a le look d'un lecteur de DVD de salon



Vous trouverez d'autres skins à cet endroit http://www.xinehq.de/index.php/skins il suffit de les décompresser sous /usr/local/share/xine/skins. Un petit exemple d'installation

cp Bambino-Blue.tar.gz /usr/local/share/xine/skins
cd /usr/local/share/xine/skins
tar xvfz Bambino-Blue.tar.gz

chown -R root:root Bambino-Blue
chmod 755 Bambino-Blue

voilà le résultat



Malheureusement le site semble down et je n'ai pas d'alternative à vous proposer pour le moment si ce n'est un package de skins sous forme de package rpm.

xine
est capable de lire les fichiers vidéo utilisant les codes compatibles MPEG1 (VCD) ou MPEG2 (SVCD) et même MPEG4 (xvid ou DivX). Il lit les DVD dès lors que vous avez installé libdvdcss il n'est plus nécessaire d'installer un quelconque plugin (xine-dvdnav, d4d, d5d, ...) tout est inclus dans xine-lib.

[Retour haut de la page ]

MPlayer

Le site officiel est http://www.mplayerhq.hu/design7/news.html
On récupérera MPlayer en téléchargeant la dernière version svn en tapant

svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer

Cela donne le répertoire mplayer. Auparavant on va décompresser les codecs windows qu'on récupérera dans la section download du site. On crée d'abord le répertoire d'accueil:

mkdir /usr/local/lib/win32

Dans lequel on copie les codecs

cp essential-20071007.tar.bz2  /usr/local/lib/win32/

Qu'on décompresse après s'être placé sous /usr/local/lib/win32/

tar xvfj essential-20071007.tar.bz2 

Dans le répertoire essential-20071007 ainsi obtenu on tape

mv * ..

Vous pouvez supprimer maintenant le répertoire /usr/local/lib/win32/essential-20071007.
Revenons dans le répertoire mplayer, on tape alors

./configure --language=fr --enable-gui
No FFmpeg checkout, press enter to download one with git or CTRL+C to abort

il faut taper enter ensuite

En fin de ./configure on a les principales options qui seront utilisées pour la compilation de MPlayer.

Config files successfully generated by ./configure --language=fr --enable-gui !

  Install prefix: /usr/local
  Data directory: /usr/local/share/mplayer
  Config direct.: /usr/local/etc/mplayer

  Byte order: little-endian
  Optimizing for: native

  Languages:
    Messages/GUI: fr
    Manual pages:  fr
    Documentation:  fr

  Enabled optional drivers:
    Input: dvdnav(internal) ftp pvr tv-v4l2 tv-v4l tv live555 libdvdcss(internal) dvdread(internal) vcd dvb networking
    Codecs: x264 xvid libdv ffmpeg(internal) real xanim faad2 faac libmpeg2(internal) liba52 mp3lib(internal) libtheora tremor(internal) libmad liblzo gif
    Audio output: alsa pulse oss v4l2 sdl mpegpes(dvb)
    Video output: v4l2 matrixview opengl sdl gif89a pnm jpeg mpegpes(dvb) fbdev aa ggi xvidix cvidix dga xv x11 xover directfb dfbmga yuv4mpeg md5sum tga

  Disabled optional drivers:
    Input: vstream radio tv-dshow librtmp nemesi cddb cdda bluray smb
    Codecs: libvpx libschroedinger libdirac crystalhd libopencore_amrwb libopencore_amrnb qtx win32 musepack libdca mpg123 libgsm speex toolame twolame OpenJPEG
    Audio output: sun openal jack nas esd arts ivtv dxr2
    Video output: zr zr2 ivtv dxr3 dxr2 vesa mng svga caca winvidix 3dfx xmga vdpau xvmc bl xvr100 tdfx_vid wii s3fb tdfxfb mga

On peut taper make puis make install en tant que root. 

A présent on peut récupérer les thèmes dont le thème par défaut s'appelle Blue. On le copiera sous /usr/local/share/mplayer/skins

cp Blue-1.8.tar.bz2 /usr/local/share/mplayer/skins

Dans ce répertoire on tape ensuite successivement

cd /usr/local/share/mplayer/skins
tar xvfj Blue-1.8.tar.bz2
mv Blue default

C'est fini on peut taper MPlayer en tapant

gmplayer

Et voilà le résultat


La vidéo apparaît dans une fenêtre séparée et non pas dans la petite fenêtre. Autre vu de MPlayer en utilisant un skin copiant lecteur bien connu...


MPlayer est capable de lire à peu près tous les formats (MPEG1, MPEG2, MPEG4, ...), y compris le format DV brut ! Pour lire les DVD dans le menu (clique bouton droit de la souris sur la fenêtre d'affichage) DVD->Ouvrir un disque, puis DVD->Langues audio->French. Il reconnait également les conteneurs ogm et les matroska.

Ca n'a pas grand chose à voir avec la vidéo, mais MPlayer permet de pouvoir écouter la radio ! Avec la commande suivante on écoute France Inter

mplayer -afm acm  
http://viphttp.yacast.net/V4/radiofrance/franceinter_hd.m3u

Comment connaître les adresses mms qui pointent vers des stations radio en ligne ? il suffit d'aller sur le site un question ouvrir le lien pour écouter la radio dans une nouvelle fenêtre, de noter l'URL mms et de la passer en argument à mplayer. Voilà un site qui répertorie des radios en ligne http://wiki.linux-aide.org/index.php?n=Logiciels.Radios

Pour visionner une chaine de la freebox vous pouvez taper

gmplayer rtsp://mafreebox.freebox.fr/freeboxtv/stream?id=202

comment connaître la liste des chaînes ? En uploadant la playlist comme ceci

wget -c http://mafreebox.freebox.fr/freeboxtv/playlist.m3u

dans le fichier on retrouve par exemple

#EXTINF:0,2 - France 2
rtsp://mafreebox.freebox.fr/freeboxtv/stream?id=201
#EXTINF:0,3 - France 3 national
rtsp://mafreebox.freebox.fr/freeboxtv/stream?id=202
#EXTINF:0,5 - France 5
rtsp://mafreebox.freebox.fr/freeboxtv/stream?id=203
#EXTINF:0,6 - M6

Si vous avez des problèmes de bloquage de mplayer au lancement sous KDE avec l'erreur suivante:

audio_setup: Can't open audio device /dev/dsp: Device or resource busy
alsa-init: got device=0, subdevice=0
alsa-init: 1 soundcard found, using: default

Il suffit de lancer mplayer avec l'option -ao arts. Pour ne pas à avoir à la taper à chaque fois dans votre fichier ~/.mplayer/config il suffit de rajouter

ao=arts

par ailleurs si vous les messages d'erreur à répétition du style

[AO_ALSA] Impossible de trouver un contrôle simple 'PCM',0..1% 21 0

il faut aller dans Préférences->Audio et cocher Activer mixeur logiciel
[Retour haut de la page ]

Streaming vidéo

Présentation

Nous allons nous servir de vlc

Diffuser une vidéo vers un poste en particulier

Il suffit de taper la commande

vlc video.avi --sout '#std{access=udp,mux=ts,dst=192.168.26.50:1234}'

192.168.26.50 est l'adresse IP du poste client et 1234 le port de diffusion, sur le poste client pour recevoir le flux, il suffit de taper

vlc udp://@:1234

[Retour haut de la page ]

Faire du streaming sur un réseau

Le streaming permet la réception sur plusieurs postes clients d'un réseau

vlc video.avi --sout '#std{access=mmsh,dst=:1234}'

pour la réception de n'importe quel poste client, il suffit de taper

vlc mmsh://serveurdiffusion:1234

serveurdiffusion étant le nom du serveur de diffusion et 1234 le port de diffusion.

pour transcoder puis diffuser en UDP multicast à l'adresse 224.1.0.200 on tapera

vlc video.avi --sout '#transcode{vcode=mp4v,acodec=mpga,vb=800,ab=128,deinterlace}
:standard{access=udp,mux=ts,dst=224.1.0.200,sap,name="monflux"}
'

pour diffuser simplement en UDP multicast à l'adresse 224.1.0.200 on tapera

vlc video.avi --sout '#duplicate{dst=standard{access=udp,mux=ts,dst=224.1.0.200,sap,name="monflux"}}'

pour lire le fichier il suffit de taper

vlc udp:@224.1.0.200

le flux multicast pouvant être stoppé par les routeurs on pourra rajouter à la commande de diffusion l'option --ttl X avec X qui correspond au nombre de routeur.
[Retour haut de la page ]

Vidéo à la demande (VoD)

Il faut lancer le serveur manager de video à la demande accessible sur le serveur de diffusion par telnet

vlc --extraintf telnet --telnet-password videolan  --rtsp-host 192.168.1.11:1234 

le mot de passe au serveur de diffusion sera videolan, son adresse 192.168.1.11 et le port de diffusion 1234, on va maintenant rajouter des vidéos. On se connecte sur le serveur par telnet, le port par défaut étant 4212

telnet 192.168.1.11 4212
Trying 192.168.1.11...
Connected to 192.168.1.11.
Escape character is '^]'.
Password:
Welcome, Master
>

pour rajouter une vidéo après le prompt on tape

> new canal1 vod enabled setup canal1 input "/maurice/video/perso/tahiti/danses/danses-marquisiennes-xvid.avi"

pour en rajouter une deuxième

> new canal2 vod enabled setup canal2 input "/maurice/video/perso/tahiti/dansesmangareva.avi"

Maintenant d'un poste client pour lire le canal1 on va taper

vlc rstp://192.168.1.11:1234/canal1

 
[Retour page d'accueil FUNIX]