Pour avoir la liste complète des options disponibles de MEncoder et des exemples, voir la page de man.
Encodage 2-passes: le nom vient du fait que cette méthode encode le fichier deux fois. Le premier encodage (passe doublée) créé quelques fichiers temporaires (*.log) avec une taille de quelques méga-octets, ne les détruisez pas tout de suite (vous pouvez effacer l'AVI). Dans la seconde passe, la fichier de sortie 2-passes est créé, en utilisant les données bitrate des fichiers temporaires. Le fichier résultant aura une image de bien meilleur qualité. Si c'est la première fois que vous entendez parler de ça, vous devriez consulter les guides disponibles sur le Net.
Cet exemple montre comment encoder un DVD en AVI DIVX4 2-passes. Seulement
deux commandes sont requises:
rm frameno.avi
- enlevez ce fichier, qui peut
provenir d'un encodage 3-passes précédent (il interfère avec l'actuel)
mencoder -dvd 2 -ovc lavc -lavcopts
vcodec=mpeg4:vpass=1:plus_d_options -oac copy -o film.avi
mencoder -dvd 2 -ovc lavc -lavcopts
vcodec=mpeg4:vpass=2:plus_d_options -oac copy -o film.avi
Encodage 3-passes: c'est une extension de l'encodage 2-passes, où l'encodage audio prends place dans une passe séparée. Cette méthode permet l'estimation du bitrate vidéo recommandé de façon à tenir sur un CD. De plus, l'audio n'est encodé qu'une fois, au contraire du mode 2-passes. Le principe:
rm frameno.avi
mencoder <fichier/DVD> -ovc frameno -oac mp3lame -lameopts vbr=3:more_options -o frameno.avi
Un fichier avi en lecture seule sera créé, contenant uniquement
le flux audio demandé. N'oubliez pas -lameopts
,
si vous en avez besoin. Si vous encodez un long film, MEncoder
affiche le bitrate recommandé pour les tailles 650Mo, 700Mo, et 800Mo,
après la fin de cette passe.
mencoder <fichier/DVD> -oac copy
-ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=<bitrate>
Faites un alias de la première passe de l'encodage DivX4. Éventuellement spécifiez le bitrate vidéo que MEncoder à affiché à la fin de la passe précédente.
mencoder <fichier/DVD> -oac copy
-ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=<bitrate>
Faites un alias de la seconde passe de l'encodage DivX4.
Éventuellement spécifiez le bitrate vidéo que MEncoder à affiché à la
fin de la passe précédente. Dans cette passe, l'audio de frameno.avi
sera inséré dans le fichier de destination.. et c'est tout prêt!
rm frameno.avi
- enlevez ce fichier, qui peut
provenir d'un encodage 3-passes précédent (il interfère avec l'actuel)
mencoder -dvd 2 -ovc frameno
-o frameno.avi -oac mp3lame -lameopts vbr=3:plus_d_options
mencoder -dvd 2 -ovc lavc
-lavcopts vcodec=mpeg4:vpass=1:more_options -oac copy -o film.avi
mencoder -dvd 2 -ovc lavc
-lavcopts vcodec=mpeg4:vpass=2:plus_d_options -oac copy -o film.avi
Encodage 2 ou 3 passes en utilisant le controlleur interne libavcodec: Vous pouvez éventuellement utiliser le mode interne 2 ou 3-passes de libavcodec, il peut vous donner un débit plus précis que l'externe, un contrôleur de débit 2-passes inspiré de DivX4.
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 (audio-options) -o
film.avi
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 (audio-options) -o
film.avi
rm -f frameno.avi
mencoder -dvd 2 -ovc frameno (audio-options) -o frameno.avi
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o
film.avi
mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o
film.avi
Souvent le besoin de redimmensionner les images d'un film se fait sentir. Les raisons peuvent être multiples: diminuer la taille du fichier, la bande-passante du réseau, etc. La plupart des gens redimmensionnent même en convertissant des DVDs ou SVCDs en AVI DivX. C'est mauvais. Plutôt que faire ça, lisez la section Préserver l'aspect ratio.
Le processus de zoom est géré par le filtre vidéo 'scale':
-vop scale=largeur:hauteur
. Ca qualité peut être réglée avec l'option
-sws
. Si elle n'est pas spécifiée, MEncoder utilisera 0:
fast bilinear.
mencoder entree.mpg -ovc lavc -lavcopts
vcodec=mpeg4:plus_d_options -vop scale=640:480 -oac copy -o
sortie.avi
MEncoder peut gérer les flux entrant de deux façons: les encoder ou les copier. Cette section parle de la copie.
-ovc copy
): on peut faire
des choses sympa :)-oac copy
): très simple.
Il est possible de prendre un fichier audio externe (MP3, Vorbis) et de le
muxer dans le flux sortant. Utilisez l'option -audiofile <nomfichier>
pour cela.Facile. Nous copions simplement les flux vidéo et audio, et
MEncoder génère l'index. Bien sûr cela ne peut pas réparer les bogues possibles
dans les flux vidéo et/ou audio. Il répare également les fichiers avec un
entrelacement endommagé, ainsi l'option -ni
ne sera plus requise.
Commande: mencoder -idx entree.avi -ovc copy -oac copy -o sortie.avi
libavcodec permet un encodage simple dans plein formats audio et vidéo intéressants (actuellement ses codecs audio ne sont pas supportés). Vous pouvez encoder avec les codecs suivants:
La première colonne contient le nom du codec qui devrait être passé après la
config vcodec
, comme: -lavcopts vcodec=msmpeg4
Un exemple, avec compression MJPEG:
mencoder -dvd 2 -o titre2.avi -ovc lavc
-lavcopts vcodec=mjpeg -oac copy
MEncoder est capable de créer des fichiers à partir de un ou plusieurs fichiers JPEG, PNG ou TGA. Avec une simple copie de trame il peut créer des fichiers MJPEG (Motion JPEG), MPNG (Motion PNG) ou MTGA (Motion TGA).
Explication du processus:libjpeg
(pour encoder des PNGs, il utilisera libpng).Une explication de l'option -mf
peut être trouvée dans la page de man.
Créer un fichier DivX4 à partir de tous les fichiers JPEG du rép courant:
mencoder \*.jpg -mf on:w=800:h=600:fps=25 -ovc divx4
-oac copy -o sortie.avi
Créer un fichier DivX4 à partir de quelques fichiers JPEG du rép courant:
mencoder trame001.jpg,trame002.jpg -mf on:w=800:h=600:fps=25
-ovc divx4 -oac copy -o sortie.avi
Créer un fichier Motion JPEG (MJPEG) à partir de tous les fichiers JPEG du rép courant:
mencoder \*.jpg -mf on:w=800:h=600:fps=25 -ovc copy
-oac copy -o sortie.avi
Créer un fichier non-compressé à partir de tous les fichiers PNG du rép courant:
mencoder \*.png -mf on:w=800:h=600:fps=25:type=png -ovc raw
-oac copy -o sortie.avi
Créer un fichier Motion PNG (MPNG) à partir de tous les fichiers PNG du rép courant:
mencoder \*.png -mf on:w=800:h=600:fps=25:type=png -ovc copy
-oac copy -o sortie.avi
Créer un fichier Motion TGA (MTGA) à partir de tous les fichiers TGA du rép courant:
mencoder \*.tga -mf on:w=800:h=600:fps=25:type=tga -ovc copy
-oac copy -o sortie.avi
MEncoder est capable d'extraire les sous-titres d'un DVD dans des fichiers au format
VobSub. Ils consistent en une paire de fichiers terminant par .idx
et
.sub
et sont généralement compressés dans une seule archive .rar
.
Mplayer peut les lire avec les options -vobsub
et -vobsubid
.
Vous spécifiez le nom de base (c-a-d sans l'extension .idx
ou
.sub
) des fichiers de sortie avec -vobsubout
et
l'index pour ces sous-titres dans le fichier final avec -vobsuboutindex
.
Si l'entrée n'est pas un DVD vous pouvez utiliser -ifo
pour
indiquer le fichier .ifo
requis pour construire le fichier
.idx
final.
Si l'entrée n'est pas un DVD et que vous n'avez pas de fichier .ifo
vous aurez besoin d'utiliser l'option -vobsubid
pour lui permettre
de savoir quel id langue placer dans le fichier .idx
.
Chaque étape ajoutera les sous-titres actifs dans les fichiers .idx
et .sub
dans les fichiers déjà existants. Vous devrez donc les
enlever avant de commencer.
Copier deux sous-titres d'un DVD pendant l'encodage 3-passes
rm soustitres.idx soustitres.sub
mencoder -dvd 1 -vobsubout soustitres -vobsuboutindex 0
-sid 2 -o frameno.avi -ovc frameno -oac mp3lame -lameopts vbr=3
mencoder -dvd 1 -oac copy -ovc divx4 -divx4opts pass=1
mencoder -dvd 1 -oac copy -ovc divx4 -divx4opts pass=2 -vobsubout
sous-titres -vobsuboutindex 1 -sid 5
Copier les sous-titres français depuis un fichier MPEG
rm soustitres.idx soustitres.sub
mencoder film.mpg -ifo film.ifo -vobsubout soustitres
-vobsuboutindex 0 -vobsuboutid fr -sid 1
Les fichiers des DVDs et des SVCDs (c-a-d MPEG1/2) contiennent une valeur d'aspect ratio, qui décrit comment le lecteur devrait dimensionner le flux vidéo, pour que les humains n'aient pas des têtes d'oeuf (ex. 480x480 + 4:3 = 640x480). De toute façon, quand vous encodez un fichier AVI (DivX), vous devez être conscients que les entêtes AVI ne stockent pas cette valeur. Redimmensionner le film est dégouttant et coûteux en temps, il doit y avoir une meilleur fonction!
Il y en a une.
MPEG4 a une fonction unique: le flux vidéo peut contenir l'aspect ratio requis. Oui, tout comme les fichiers MPEG1/2 (DVD, SVCD). Malheureusement, il n'y a pas de lecteurs vidéo au dehors qui supportent cet attribut. Excepté Mplayer.
Cette fonction ne peut être utilisé qu'avec le codec mpeg4
de libavcodec. Gardez à l'esprit: bien que MPlayer lise correctement
le fichier créé, les autres lecteurs utiliseront un mauvais aspect ratio.
Vous devriez sérieusement couper les bandes noires au dessus et en dessous de l'image.
Voir la page de man pour l'utilisation des filtres cropdetect
et
crop
.
$ mencoder sample-svcd.mpg -ovc lavc -lavcopts
vcodec=mpeg4:aspect=16.0/9.0 -vop crop=714:548:0:14 -oac copy -o sortie.avi