creative commons
Convertir une vidéo avec VLC
icone audio-video
Signature :
Linux Pratique
Sommaire de l'article :

Retrouvez cet article dans : Linux Pratique 42

Pour manipuler des vidéos, on parle surtout d'outils comme FFmpeg et Mencoder. Savez-vous que VLC, le lecteur multimédia à tout faire, est également capable de capturer, transcoder et diffuser des sons et des vidéos ? Les possibilités de VLC sont tellement nombreuses qu'il faudrait écrire un livre à son sujet. Je me limiterai ici aux aspects relatifs à la conversion de format, d'abord avec l'assistant intégré, puis avec les options de ligne de commande. Vous pourrez trouver davantage de détails sur le site officiel : http://www.videolan.org/doc/

VLC ?

VLC était initialement limité à la lecture de vidéos diffusées en réseau et s'appelait en fait " VideoLAN client ". Aujourd'hui " VLC media player " est à la fois un lecteur, un convertisseur et un serveur de diffusion multimédia. VLC est disponible sur le site officiel http://www.videolan.org pour à peu près tous les systèmes courants. Il est également distribué dans toutes les grandes distributions Linux. En fait, VLC est capable de lire à peu près tout (sauf les formats vraiment fermés) et d'en faire à peu près n'importe quoi : le transformer, puis l'afficher ou encore l'enregistrer ou le diffuser.

/img-articles/lp/42/art-cc-vlc/fig-1.jpg Fig. 1 : Le célèbre cône de VideoLAN

L'assistant de diffusion

Si vous voulez juste convertir une vidéo d'un format vers un autre, c'est encore la méthode la plus simple. Cet assistant se trouve dans le menu Fichier -> Assistant de diffusion. Choisissez l'option " Transcoder/Sauvegarder ". À l'étape suivante, vous choisissez le fichier à transcoder. Ensuite, vous accédez aux options de transcodage, regroupées en deux catégories : transcoder la vidéo et transcoder l'audio. Si vous ne cochez rien, aucun transcodage ne sera fait : votre fichier sera laissé dans son format d'origine. En activant le transcodage vidéo, vous pouvez choisir le format et le débit vidéo, par exemple du DivX à 2048 kbit/s. De la même façon, en activant le transcodage audio, vous pouvez choisir le format et le débit audio. Lorsque vous choisissez un format vidéo ou audio, une description de ce format s'affiche en dessous de la zone de choix.

/img-articles/lp/42/art-cc-vlc/fig-2.jpg Fig. 2 : L'assistant de diffusion et de transcodage

Enfin, on vous demande de choisir un format d'encapsulation. La liste de choix est plus ou moins restreinte, selon les formats vidéo et audio que vous avez choisis : en effet, tous les conteneurs ne sont pas compatibles avec tous les formats... Dernière étape, on vous demande le nom du fichier à enregistrer, après quoi vous pouvez lancer la conversion.

Le dialogue d'ouverture de fichier

Par le menu Fichier -> Ouvrir un fichier (avancé), vous avez accès à toutes les possibilités offertes par VLC.

  • Dans la zone " Ouvrir ", vous pouvez choisir un fichier.
  • Dans les " Options avancées ", en bas, vous pouvez choisir de transcoder ce fichier.
  • Dans les paramètres, vous pouvez choisir ce que vous voulez faire du fichier créé : dans le cas présent, vous voulez l'enregistrer sur votre disque dur, cochez l'option " Fichier " ; vous pouvez ensuite régler l'encapsulation et les formats vidéo et audio comme avec l'assistant précédent.

/img-articles/lp/42/art-cc-vlc/fig-3.jpg

 

Les options de ligne de commande

Vous pouvez parfaitement vous en tenir à l'assistant ou au dialogue d'ouverture de fichier. Mais, pour certaines utilisations, la ligne de commande reste plus souple. En outre, cela permet mieux d'apprendre comment procède VLC lorsqu'on lui demande de convertir une vidéo.

 

Des modules

VLC manipule des flux composés de flux élémentaires vidéo, audio et sous-titres. Chaque opération que l'on peut faire subir à ce flux correspond à un module de VLC. Voici les modules qui nous intéressent :
  • standard sert à enregistrer le flux ou à le diffuser ;
  • transcode permet de convertir l'audio, la vidéo et les sous-titres vers un autre format que celui d'origine.

La syntaxe

En général, la syntaxe de VLC ressemble à ceci :
vlc fichier_entree --sout \
    "#module{option=valeur,option=valeur...}:module{option=valeur...}..."
Dans le cas particulier d'un transcodage, cela donne :
vlc fichier_entree --sout \
    "#transcode{vcodec=div3,acodec=vorb}:standard{access=file,dst='fichier_sortie',mux=ogg}"
On voit ici qu'on utilise :
  •  le module transcode pour convertir :
    •  le codec vidéo div3 ;
    •  le codec audio vorb.
  •  le module standard pour enregistrer le flux ainsi transcodé dans un fichier (c'est l'objet de l'option access, qui permet également d'envoyer le flux par HTTP, par exemple), nommé fichier_sortie, en encapsulant les données dans un conteneur ogg.

Les options de transcodage

Voici les différentes options utiles du module transcode :
  • vcodec : le codec utilisé pour encoder la vidéo, à choisir parmi mp1v (MPEG1), mp2v (MPEG2), mp4v (MPEG4), WMV1, WMV2, MJPG (MJPEG), theo (Theora, en stade alpha...), DIV1 (DivX1), DIV2 (DivX2) et DIV3 (DivX3) pour les plus connus ;
  • vb : le débit vidéo moyen, en kbit/s ;
  • acodec : le codec utilisé pour encoder l'audio, à choisir parmi mpga (MPEG audio), mp3, mp4a (MPEG4), vorb (Vorbis), spx (Speex) et flac ;
  • width et height : la hauteur et la largeur de la vidéo de sortie (optionnel) ;
  • ab : le débit audio moyen, en kbit/s ;
  • scodec : le codec utilisé pour enregistrer les sous-titres éventuels, dont DVBS...

Les options d'enregistrement

Voici les options du module standard :
  • access : le type de sortie (file pour écrire dans un fichier, mais également udp ou encore http pour diffuser sur le réseau...) ;
  • dst : la destination, c'est-à-dire le fichier de sortie, dans le cas de l'accès file ;
  • mux : l'encapsulation, à choisir parmi ts, ps, ogg et avi pour les plus importants.

 

Astuces

Visualiser la vidéo que l'on encode

On peut pour cela utiliser un module supplémentaire : duplicate, qui permet de... dupliquer le flux, pour le diriger vers le transcodage et vers l'affichage. Ce qui donne :

 

vlc fichier_entree --sout \
    "#duplicate{dst=display,dst=\"transcode{vcodec=div3,acodec=vorb}:\
                 standard{access=file,dst='fichier_sortie',mux=ogg}\""

Ce module accepte plusieurs options dst, qui prennent comme argument une chaîne de sortie. Donc, pour afficher, on utilise une sortie display, et pour transcoder et écrire dans un fichier, une sortie transcode:standard. Cette dernière chaîne doit être encadrée de guillemets, que l'on a dû échapper par \", puisque nous sommes déjà dans des guillemets.

 

Adapter VLC à une utilisation en script

Si vous souhaitez convertir de multiples fichiers, quelques adaptations sont nécessaires. Ainsi, l'interface graphique de VLC est plutôt gênante. Nous allons donc demander une interface dummy (c'est-à-dire pas d'interface) à la place de la wxwidget habituelle :
vlc -Idummy fichier_entree --sout "..."
Il serait bon que VLC se ferme lorsqu'il a fini. Pour cela, nous ajoutons un élément à la playlist : la commande de fermeture, soit vlc://quit :
vlc -Idummy fichier_entree --sout "..." vlc://quit

Autres utilisations

Même si les fonctions principales de VLC sont la lecture et la diffusion réseau, on voit que VLC peut rendre de nombreux services. J'aimerais mentionner par exemple la capture d'écran : en précisant comme fichier d'entrée screen://, vous pouvez enregistrer ce qui se passe sur votre bureau, ce qui est utile en ce printemps qui voit fleurir les bureaux en 3D... :-)
Il y a : 1 commentaire(s)
  • 25 mai 2011
    pfrkl

    Le problème a disparu en passant de la Freebox
    V5 a V6. Etonnant, non?
    Par contre, la conversion de format avec les paramètres indiqués donne une vidéo de très mauvaise qualité. Est-il possible d’améliorer,
    autrement qu’avec height=?

    Donnez votre avis

    Vous devez avoir ouvert une session pour écrire un commentaire.

    Brèves
    Édito : Linux Pratique Essentiel N°24
    Édito : Linux Pratique HS N°23
    Édito : GNU/Linux Magazine 146
    Édito : GNU/Linux Magazine HS N°58
    Édito : Open Silicium N°5
    Communication
    Linux Pratique HS 23 – Communiqué de presse
    Linux Pratique Essentiel N°24 – Communiqué de presse
    Gnu/Linux Magazine sponsor et partenaire de PROLOGIN
    Linux Essentiel partenaire des Rencontres du Libre de Lion sur Mer (Normandie)
    GNU/Linux Magazine HS 58 – Communiqué de presse
    prochainement moteur de recherches des articles
     
    :
    :
    Jours heures minutes secondes
    En kiosque
    Le tout nouveau Linux Pratique Essentiel est disponible dès maintenant chez votre marchand de journaux et sur notre site...

    Lire la suite...

    Le tout nouveau Linux Pratique est disponible dès maintenant chez votre marchand de journaux et sur notre site...

    Lire la suite...

    Le tout nouveau GNU/Linux Magazine est disponible dès maintenant chez votre marchand de journaux et sur notre site...

    Lire la suite...

    Le tout nouveau GNU/Linux Magazine HS est disponible dès maintenant chez votre marchand de journaux et sur notre site...

    Lire la suite...

    Le tout nouveau Open Silicium est disponible dès maintenant chez votre marchand de journaux et sur notre site...

    Lire la suite...

    Le tout nouveau Linux Pratique est disponible dès maintenant chez votre marchand de journaux et sur notre site...

    Lire la suite...

    Le tout nouveau Misc est disponible dès maintenant chez votre marchand de journaux et sur notre site...

    Lire la suite...

    Le tout nouveau GNU/Linux Magazine est disponible dès maintenant chez votre marchand de journaux et sur notre site...

    Lire la suite...