Retrouvez cet article dans : Linux Pratique 42
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.
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.
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.

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 :standardsert à enregistrer le flux ou à le diffuser ;transcodepermet 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
transcodepour convertir :-  le codec vidéo div3 ;
-  le codec audio vorb.
-  le module
standardpour enregistrer le flux ainsi transcodé dans un fichier (c'est l'objet de l'optionaccess, 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 modulevcodec: 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 ;widthetheight: 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 :
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 -Idummy fichier_entree --sout "..." vlc://quit





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=?