Mercurial > mplayer.hg
view DOCS/xml/fr/mencoder.xml @ 19394:70cb301e94f0
H.261 through QuickTime DLL
author | diego |
---|---|
date | Mon, 14 Aug 2006 21:22:49 +0000 |
parents | 0ad54685963c |
children | c3dc9a93f56e |
line wrap: on
line source
<?xml version="1.0" encoding="iso-8859-1"?> <!-- synced with 1.100 --> <chapter id="mencoder"> <title>Utilisation basique de <application>MEncoder</application></title> <para> Pour avoir la liste complète des options disponibles de <application>MEncoder</application> et des exemples, voir la page du man. Pour une série d'exemples pratiques et de guides détaillés sur l'utilisation des nombreux paramètres d'encodage, lisez les <ulink url="../../tech/encoding-tips.txt">encoding-tips</ulink> (en anglais) qui ont été collectés d'après de nombreux sujets de la liste de diffusion mplayer-users. Cherchez dans les <ulink url="http://mplayerhq.hu/pipermail/mplayer-users/">archives</ulink> pour trouver les discussions à propos de tous les aspects et problèmes relatifs à l'encodage avec <application>MEncoder</application>. </para> <sect1 id="menc-feat-selecting-codec"> <title>Sélection des codecs et du format du container</title> <para> Les codecs sonores et vidéos sont sélectionnés respectivement avec l'option <option>-oac</option> et l'option <option>-ovc</option>. Par exemple : <screen>mencoder -ovc help</screen> permettra de lister tous les codecs vidéo supportés par la version de <application>MEncoder</application> sur votre machine. Les choix disponibles sont : </para> <para> Codecs Audio: <informaltable frame="all"> <tgroup cols="2"> <thead> <row><entry>Noms des codecs Audio</entry><entry>Description</entry></row> </thead> <tbody> <row> <entry>mp3lame</entry> <entry>Encode en VBR, ABR ou CBR MP3 avec LAME</entry> </row> <row> <entry>lavc</entry> <entry>Utilise un des <link linkend="menc-feat-enc-libavcodec-audio-codecs">codecs audio <systemitem class="library">libavcodec</systemitem></link>. </entry> </row> <row> <entry>faac</entry> <entry>L'encodeur audio ACC FAAC</entry> </row> <row> <entry>toolame</entry> <entry>Encoder Audio MPEG Layer 2 </entry> </row> <row> <entry>twolame</entry> <entry>L'encodeur Audio MPEG Layer 2 basé sur tooLAME</entry> </row> <row> <entry>pcm</entry> <entry>Format PCM audio non compressé</entry> </row> <row> <entry>copy</entry> <entry>Ne réencode pas, il compresse juste les frames</entry> </row> </tbody> </tgroup> </informaltable> </para> <para> Codecs Vidéo : <informaltable frame="all"> <tgroup cols="2"> <thead> <row><entry>Noms des codecs Vidéo</entry><entry>Description</entry></row> </thead> <tbody> <row> <entry>lavc</entry> <entry>Utilise un des <link linkend="menc-feat-enc-libavcodec-video-codecs">codecs vidéo <systemitem class="library">libavcodec</systemitem></link>. </entry> </row> <row> <entry>xvid</entry> <entry>Le XviD, un codec ASP MPEG-4 (Advanced Simple Profile)</entry> </row> <row> <entry>x264</entry> <entry>Le x264, un codec MPEG-4 AVC (Advanced Video Coding), le AKA H.264</entry> </row> <row> <entry>nuv</entry> <entry>Le format vidéo nuppel, utilisé pour certaines applications temps réel.</entry> </row> <row> <entry>raw</entry> <entry>Frames vidéos non compressées</entry> </row> <row> <entry>copy</entry> <entry>Ne réencode pas, il compresse juste les frames</entry> </row> <row> <entry>frameno</entry> <entry>Utilisé pour l'encodage en 3 passes, (not recommended)</entry> </row> </tbody> </tgroup> </informaltable> </para> <para> Les options de sorties pour le type de container sont sélectionnées grâce à l'option <option>-of</option>. Type: <screen>mencoder -of help</screen> permettra de lister tous les codecs vidéo supportés par la version de <application>MEncoder</application> sur votre machine. Les choix disponibles sont : </para> <para> Container formats: <informaltable frame="all"> <tgroup cols="2"> <thead> <row><entry>Nom du format du Container</entry><entry>Description</entry></row> </thead> <tbody> <row> <entry>lavf</entry> <entry>Un des containers supporté par <systemitem class="library">libavformat</systemitem>.</entry> </row> <row> <entry>avi</entry> <entry>Audio-Vidéo Interleaved</entry> </row> <row> <entry>mpeg</entry> <entry>MPEG-1 and MPEG-2 PS</entry> </row> <row> <entry>rawvideo</entry> <entry>Flux vidéo en raw (un seul flux vidéo, pas de multiplexage)</entry> </row> <row> <entry>rawaudio</entry> <entry>Flux audio en raw (un seul flux audio, pas de multiplexage)</entry> </row> </tbody> </tgroup> </informaltable> Le container AVI est le container natif de <application>MEncoder</application>, ce qui veut dire que c'est le mieux supporté et que <application>MEncoder</application> a été crée pour cela. Malgré ceci, d'autres formats de containers sont utilisables, mais vous risquez d'avoir certains problèmes à les utiliser. </para> <para> Containers <systemitem class="library">libavformat</systemitem> : </para> <para> Si vous avez sélectionné If you selected <systemitem class="library">libavformat</systemitem> pour le multiplexage du fichier de sortie (en utilisant l'option <option>-of lavf</option>), le choix du format du container sera déterminé en fonction de l'extention du fichier de sortie. Mais vous pouvez toujours forcer le format du container avec les options du <option>format</option> de <systemitem class="library">libavformat</systemitem>. <informaltable frame="all"> <tgroup cols="2"> <thead> <row><entry>Container <systemitem class="library">libavformat</systemitem> name</entry><entry>Description</entry></row> </thead> <tbody> <row> <entry>mpg</entry> <entry>MPEG-1 and MPEG-2 PS</entry> </row> <row> <entry>asf</entry> <entry>Advanced Streaming Format : Format évolué pour le streaming</entry> </row> <row> <entry>avi</entry> <entry>Audio-Video Interleaved</entry> </row> <row> <entry>wav</entry> <entry>Pour l'Audio</entry> </row> <row> <entry>swf</entry> <entry>Macromedia Flash</entry> </row> <row> <entry>flv</entry> <entry>vidéo Macromedia Flash</entry> </row> <row> <entry>rm</entry> <entry>RealMedia</entry> </row> <row> <entry>au</entry> <entry>SUN AU</entry> </row> <row> <entry>nut</entry> <entry>le container libre NUT (expérimental et ne respectant pas encore les spécifications)</entry> </row> <row> <entry>mov</entry> <entry>QuickTime</entry> </row> <row> <entry>mp4</entry> <entry>Format MPEG-4</entry> </row> <row> <entry>dv</entry> <entry>Container numérique des vidéos Sony</entry> </row> </tbody> </tgroup> </informaltable> Comme vous pouvez le voir, le <systemitem class="library">libavformat</systemitem> permet à <application>MEncoder</application> de multiplexer un grand nombre de containers différents. Malheureusement, comme <application>MEncoder</application> n'a pas été originalement crée pour le support de format de containers autre que l'AVI, vous devez vérifier à deux fois que le résultat est correct. Pensez ben à vérifier la synchronisation de l'audio avec la vidéo et que le fichier est lisible par un autre lecteur que <application>MPlayer</application>. </para> <informalexample> <para>Exemple :</para> <para> Création d'une vidéo Macromedia Flash afin de la lire dans un navigateur internet ayant le plugin Macromedia Flash : <screen> mencoder <replaceable>input.avi</replaceable> -o <replaceable>output.flv</replaceable> -of lavf -oac mp3lame -lameopts abr:br=56 -ovc lavc \ -lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 \ -srate 22050 </screen> </para> </informalexample> </sect1> <sect1 id="menc-feat-selecting-input"> <title>Sélection d'un fichier d'entrée ou un périphérique</title> <para> <application>MEncoder</application> peut encoder depuis un fichier ou directement depuis un DVD ou VCD. Il suffit simplement d'inclure le nom du fichier dans la ligne de commande pour encoder depuis un fichier ou avec l'option <option>dvd://</option><replaceable>numerochapitre</replaceable> ou <option>vcd://</option><replaceable>numéropiste</replaceable> pour encoder depuis un chapitre DVD ou une piste VCD. Si vous avez déjà copié le DVD sur votre disque dur (en utilisant par exemple un logiciel comme <application>dvdbackup</application>, généralement disponible sur les systèmes), et que vous souhaitez encoder depuis cette copie, vous devrez quand même utiliser la syntaxe <option>dvd://</option>, avec l'option <option>-dvd-device</option> pointant vers la racine du répertoire où se trouve le DVD copié Les options <option>-dvd-device</option> et <option>-cdrom-device</option> peuvent être aussi utilisées pour forcer le chemin vers le périphérique utilisé (ceux utilisés par défaut sont <filename>/dev/dvd</filename> et <filename>/dev/cdrom</filename>). </para> <para> Pour un encodage depuis un DVD, il est souvent préférable de selectionner un ou plusieurs chapitres à encoder. Vous pouvez utiliser l'option <option>-chapter</option> prévu à cet effet. Par exemple, <option>-chapter</option> <replaceable>1-4</replaceable> encodera seulement les chapitres 1 à 4 du DVD. Ceci est particulièrement utile si vous voulez faire un encodage sur 2 Cds soit 1400Mo. Ceci permettant de couper votre film sur un chapitre et non au milieu d'une scène. </para> <para> Si vous disposez d'un carte pouvant acquérir le signal Télé, vous pouvez sans soucis encoder le signal d'entrée. Utilisez l'option <option>tv://</option><replaceable>NuméroChaine</replaceable> comme nom de fichier et l'option <option>-tv</option> afin de configurer les nombreux paramètres de captures. Les entrés DVB marchent sur le même principe. </para> </sect1> <sect1 id="menc-feat-mpeg4"> <title>Encodage MPEG-4 deux passes ("DivX")</title> <para> Le nom vient du fait que cette méthode encode le fichier <emphasis>deux fois</emphasis>. Le premier encodage (du mode deux passes) crée quelques fichiers temporaires (<filename>*.log</filename>) avec une taille de quelques méga-octets, ne les détruisez pas tout de suite (vous pouvez effacer l'AVI ou redirigez le flux vidéo vers <filename>/dev/null</filename>). Lors de la seconde passe, le fichier de sortie est créé, en utilisant les données bitrate des fichiers temporaires. Le fichier résultant aura une image de bien meilleure qualité. Si c'est la première fois que vous entendez parler de ça, vous devriez consulter les guides disponibles sur Internet. </para> <example> <title>Copie de la piste audio</title> <para> Encodage deux passes de second chapitre d'un DVD vers de l'AVI MPEG-4 ("DivX") avec la simple copie de la piste audio. <screen> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o <replaceable>film.avi</replaceable> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o <replaceable>film.avi</replaceable> </screen> </para> </example> <example> <title>Encodage de la piste audio</title> <para> Encodage deux passes d'un DVD en AVI MPEG-4 ("DivX") avec la conversion de la piste audio en MP3. <screen> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac mp3lame -lameopts vbr=3 -o <replaceable>film.avi</replaceable> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac mp3lame -lameopts vbr=3 -o <replaceable>film.avi</replaceable> </screen> </para> </example> </sect1> <sect1 id="menc-feat-mpeg"> <title>Encodage au format MPEG</title> <para> <application>MEncoder</application> peut créer des fichiers au format MPEG (MPEG-PS). Habituellement, vous utilisez des formations vidéos comme le MPEG-1 ou MPEG-2 pour l'encodage vers des formats contraints comme le SVCD, VCD, ou encore le DVD. Les exigences particulières de ces formats sont expliqués dans la section du <link linkend="menc-feat-vcd-dvd">guide de création d'un VCD ou DVD</link>. </para> <para> Pour changer le format du fichier final produit par <application>MEncoder</application> utilisez l'option <option>-of mpeg</option>. </para> <informalexample> <para> Exemple : <screen> mencoder <replaceable>input.avi</replaceable> -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video -oac copy <replaceable>autres_options</replaceable> -o <replaceable>output.mpg</replaceable> </screen> Création d'un fichier MPEG-1 lisible sur un système basique comme peu l'être un MS Windows fraîchement installé : <screen> mencoder <replaceable>input.avi</replaceable> -of mpeg -mpegopts format=mpeg1:tsaf:muxrate=2000 -o <replaceable>output.mpg</replaceable> -oac lavc -ovc lavc \ -lavcopts acodec=mp2:abitrate=224:vcodec=mpeg1video:vbitrate=1152:keyint=15:mbd=2:aspect=4/3 </screen> </para> </informalexample> </sect1> <sect1 id="menc-feat-rescale"> <title>Redimensionnement des films</title> <para> Souvent le besoin de redimensionner 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 redimensionnent même en convertissant des DVDs ou SVCDs en AVI DivX. Si vous désirez redimensionner, lisez la section <link linkend="aspect">Préserver le ratio d'aspect</link>. </para> <para> Le processus de zoom est géré par le filtre vidéo <literal>scale</literal>: <option>-vf scale=<replaceable>largeur</replaceable>:<replaceable>hauteur</replaceable></option>. Sa qualité peut être réglée avec l'option <option>-sws</option>. Si elle n'est pas spécifiée, <application>MEncoder</application> utilisera 2: bicubique. </para> <para> Utilisation : <screen> mencoder <replaceable>entrée.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4 -vf scale=640:480 -o <replaceable>sortie.avi</replaceable> </screen> </para> </sect1> <sect1 id="menc-feat-streamcopy"> <title>Copie de flux</title> <para> <application>MEncoder</application> peut gérer les flux entrant de deux façons: les <emphasis role="bold">encoder</emphasis> ou les <emphasis role="bold">copier</emphasis> Cette section parle de la <emphasis role="bold">copie</emphasis>. </para> <itemizedlist> <listitem><para> <emphasis role="bold">Flux vidéo</emphasis> (option <option>-ovc copy</option>) : on peut faire des choses sympa :) comme, placer (pas convertir) de la vidéo FLI ou VIVO ou MPEG1 dans un fichier AVI ! Bien sûr seul <application>MPlayer</application> peut lire de tels fichiers :) et ça n'a probablement aucun intérêt. Concrètement: copier des flux vidéos peut être utile par exemple quand seul le flux audio doit être encodé (comme du PCM non-compressé en MP3). </para></listitem> <listitem><para> <emphasis role="bold">Flux audio</emphasis> (option <option>-oac copy</option>): très simple. Il est possible de prendre un fichier audio externe (MP3, WAV) et de le multiplexer dans le flux sortant. Utilisez l'option <option>-audiofile <replaceable>nomfichier</replaceable></option> pour cela. </para></listitem> </itemizedlist> <para> En utilisant l'option <option>-oac copy</option> pour copier d'un format de container vers un autre format, il faudrait utiliser l'option <option>-fafmttag</option> pour préserver les marqueurs originaux du format du fichier audio. Par exemple, si vous convertissez un fichier NSV avec de l'audio en ACC vers un container AVI, le format du marqueur audio sera incorrect et devra être changé. Pour visualiser la liste des marqueurs des formats audio, jetez un coup d'oeil à <filename>codecs.conf</filename>. </para> <para> Exemple: <screen> mencoder <replaceable>input.nsv</replaceable> -oac copy -fafmttag 0x706D -ovc lavc -lavcopts vcodec=mpeg4 -o <replaceable>output.avi</replaceable> </screen> </para> </sect1> <sect1 id="menc-feat-enc-images"> <title>Encodage à partir de nombreux fichiers Image (JPEG, PNG, TGA, SGI)</title> <para> <application>MEncoder</application> 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). </para> <orderedlist> <title>Explication du fonctionnement :</title> <listitem><para> <application>MEncoder</application> <emphasis>décode</emphasis> le(s) image(s) d'origine(s) avec <systemitem class="library">libjpeg</systemitem> (pour décoder des PNGs, il utilisera <systemitem class="library">libpng</systemitem>). </para></listitem> <listitem><para> <application>MEncoder</application> envoie alors l'image décodée au compresseur vidéo choisi (DivX4, XviD, ffmpeg msmpeg4, etc.). </para></listitem> </orderedlist> <formalpara> <title>Exemples</title> <para> Une explication de l'option <option>-mf</option> peut être trouvée dans la page de man. <informalexample> <para> Créer un fichier Mpeg-4 à partir de tous les fichiers JPEG du répertoire courant: <screen> mencoder -mf://*.jpg -mf w=800:h=600:fps=25:type=jpg -ovc lavc -lavcopts vcodec=mpeg4 -oac copy -o <replaceable>sortie.avi</replaceable> </screen> </para> </informalexample> <informalexample> <para> Créer un fichier MPEG-4 à partir de quelques fichiers JPEG du répertoire courant: <screen> mencoder mf://<replaceable>trame001.jpg,trame002.jpg</replaceable> -mf w=800:h=600:fps=25:type=jpg -ovc lavc -lavcopts vcodec=mpeg4 -oac copy -o <replaceable>sortie.avi</replaceable> </screen> </para> </informalexample> <informalexample> <para> Créer un fichier Motion JPEG (MJPEG) à partir de tous les fichiers JPEG du répertoire courant: <screen> mencoder mf://*.jpg -mf w=800:h=600:fps=25:type=jpg -ovc copy -oac copy -o <replaceable>sortie.avi</replaceable> </screen> </para> </informalexample> <informalexample> <para> Créer un fichier non-compressé à partir de tous les fichiers PNG du répertoire courant: <screen> mencoder mf:// -mf w=800:h=600:fps=25:type=png -ovc raw -oac copy -o <replaceable>sortie.avi</replaceable> </screen> </para> </informalexample> <note><para> La largeur doit être un entier multiple de 4, c'est une limitation du format AVI RGB brut. </para></note> <informalexample> <para> Créer un fichier Motion PNG (MPNG) à partir de tous les fichiers PNG du répertoire courant: <screen> mencoder mf://*.png -mf w=800:h=600:fps=25:type=png -ovc copy -oac copy -o <replaceable>sortie.avi</replaceable> </screen> </para> </informalexample> <informalexample> <para> Créer un fichier Motion TGA (MTGA) à partir de tous les fichiers TGA du répertoire courant: <screen> mencoder mf://*.tga -mf w=800:h=600:fps=25:type=tga -ovc copy -oac copy -o <replaceable>sortie.avi</replaceable> </screen> </para> </informalexample> </para> </formalpara> </sect1> <sect1 id="menc-feat-extractsub"> <title>Extraction des sous-titres DVD depuis fichier Vobsub</title> <para> <application>MEncoder</application> est capable d'extraire les sous-titres d'un DVD dans des fichiers au format VOBsub. Ils se composent de quelques fichiers ayant pour extension <filename>.idx</filename> et <filename>.sub</filename> et sont généralement compressés dans une seule archive <filename>.rar</filename>. <application>MPlayer</application> peut les lire avec les options <option>-vobsub</option> et <option>-vobsubid</option>. </para> <para> Vous spécifiez le nom de base (c-à-d. sans extension <filename>.idx</filename> ou <filename>.sub</filename>) des fichiers de sortie avec <option>-vobsubout</option> et l'index pour ces sous-titres dans le fichier final avec <option>-vobsuboutindex</option>. </para> <para> Si l'entrée n'est pas un DVD vous pouvez utiliser <option>-ifo</option> pour indiquer le fichier <filename>.ifo</filename> requis pour construire le fichier <filename>.idx</filename> final. </para> <para> Si l'entrée n'est pas un DVD et que vous n'avez pas de fichier <filename>.ifo</filename> vous aurez besoin d'utiliser l'option <option>-vobsubid</option> pour lui permettre de savoir quelle langue placer dans le fichier <filename>.idx</filename>. </para> <para> Chaque étape ajoutera les sous-titres actifs dans les fichiers <filename>.idx</filename> et <filename>.sub</filename> déjà existants. Vous devrez donc les enlever tous avant de commencer. </para> <example> <title>Copier deux sous-titres d'un DVD pendant l'encodage deux passes</title> <screen> rm subtitles.idx subtitles.sub mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -vobsubout subtitles -vobsuboutindex 0 -sid 2 mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -vobsubout subtitles -vobsuboutindex 1 -sid 5 </screen> </example> <example> <title>Copier les sous-titres français depuis un fichier MPEG</title> <screen> rm soustitres.idx soustitres.sub mencoder <replaceable>film.mpg</replaceable> -ifo <replaceable>film.ifo</replaceable> -vobsubout soustitres -vobsuboutindex 0 -vobsuboutid fr -sid 1 </screen> </example> </sect1> <sect1 id="aspect"> <title>Préserver le ratio d'aspect</title> <para> Les fichiers des DVDs et des SVCDs (c-à-d MPEG1/2) contiennent une valeur de ratio d'aspect, qui décrit comment le lecteur devrait dimensionner le flux vidéo, pour que les personnages 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. Redimensionner le film est assez infâme et coûteux en temps, il doit y avoir une meilleur solution ! </para> <para>Il y en a une.</para> <para> MPEG-4 a une fonction spécifique: le flux vidéo peut contenir le ratio d'aspect requis. Oui, tout comme les fichiers MPEG-1/2 (DVD, SVCD) et H.263. Malheureusement, il n'y a <emphasis role="bold">aucun</emphasis> lecteur vidéo qui supporte cet attribut. Excepté <application>MPlayer</application>. </para> <para> Cette fonction ne peut être utilisée qu'avec le codec <systemitem>mpeg4</systemitem> de <emphasis role="bold"><systemitem class="library">libavcodec</systemitem></emphasis>. Gardez bien à l'esprit que même si <application>MPlayer</application> lit correctement le fichier créé, les autres lecteurs utiliseront un mauvais ratio. </para> <para> Vous devriez vraiment couper les bandes noires au dessus et en dessous de l'image. Voir la page de man pour l'utilisation des filtres <systemitem>cropdetect</systemitem> et <systemitem>crop</systemitem>. </para> <para> Utilisation <screen>mencoder <replaceable>échantillon-svcd.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4:autoaspect -vf crop=714:548:0:14 -oac copy -o <replaceable>sortie.avi</replaceable></screen> </para> </sect1> </chapter>