Mercurial > mplayer.hg
view DOCS/xml/cs/mencoder.xml @ 17013:3bfc7cbf4060
Makefile reorganized for better clarity and maintainability.
author | diego |
---|---|
date | Fri, 18 Nov 2005 14:55:37 +0000 |
parents | 372e938551a4 |
children | 5b8ab25eb7ec |
line wrap: on
line source
<?xml version="1.0" encoding="iso-8859-2"?> <!-- Synced with: 1.98 --> <chapter id="mencoder"> <title>Základní použití <application>MEncoder</application>u</title> <para> Úplný seznam dostupných voleb a příkladů pro <application>MEncoder</application> naleznete v man stránce. Řadu užitečných příkladů a podrobných návodů pro použití mnoha enkódovacích voleb naleznete v <ulink url="../../tech/encoding-tips.txt">tipech pro enkódování</ulink>, které byly získány z několika diskusí v konferenci MPlayer-users. Prohledejte <ulink url="http://mplayerhq.hu/pipermail/mplayer-users/">archivy</ulink>, chcete-li bohatost diskusí o všech aspektech a problémech vztažených k enkódování <application>MEncoder</application>em. </para> <sect1 id="menc-feat-selecting-codec"> <title>Výběr kodeků a nosných formátů</title> <para> Audio a video kodeky pro enkódování jsou vybírány příslušnými volbami <option>-oac</option> a <option>-ovc</option> options. Napište například: <screen>mencoder -ovc help</screen> pro seznam video kodeků podporovaných verzí programu <application>MEncoder</application> na vašem počítači. Dostupné jsou následující možnosti: </para> <para> Audio (zvukové) kodeky: <informaltable frame="all"> <tgroup cols="2"> <thead> <row><entry>Jméno audio kodeku</entry><entry>Popis</entry></row> </thead> <tbody> <row> <entry>mp3lame</entry> <entry>Enkóduje do VBR, ABR nebo CBR MP3 pomocí LAME</entry> </row> <row> <entry>lavc</entry> <entry>Použije se některý z <link linkend="menc-feat-enc-libavcodec-audio-codecs"> <systemitem class="library">libavcodec</systemitem> audio kodeků</link> </entry> </row> <row> <entry>faac</entry> <entry>FAAC AAC audio enkodér</entry> </row> <row> <entry>toolame</entry> <entry>Enkodér MPEG Audio Layer 2</entry> </row> <row> <entry>twolame</entry> <entry>Enkodér MPEG Audio Layer 2 založený na tooLAME</entry> </row> <row> <entry>pcm</entry> <entry>Nekomprimovaný PCM zvuk</entry> </row> <row> <entry>copy</entry> <entry>Nereenkóduje, pouze kopíruje komprimované vzorky</entry> </row> </tbody> </tgroup> </informaltable> </para> <para> Video kodeky: <informaltable frame="all"> <tgroup cols="2"> <thead> <row><entry>Jméno video kodeku</entry><entry>Popis</entry></row> </thead> <tbody> <row> <entry>lavc</entry> <entry>Použije se některý z <link linkend="menc-feat-enc-libavcodec-video-codecs"> <systemitem class="library">libavcodec</systemitem> video kodeků</link> </entry> </row> <row> <entry>xvid</entry> <entry>XviD, MPEG-4 Advanced Simple Profile (ASP) kodek</entry> </row> <row> <entry>x264</entry> <entry>x264, MPEG-4 Advanced Video Coding (AVC), alias H.264 kodek</entry> </row> <row> <entry>nuv</entry> <entry>nuppel video, používaný některými realtime aplikacemi</entry> </row> <row> <entry>raw</entry> <entry>Nekomprimované videosnímky</entry> </row> <row> <entry>copy</entry> <entry>Nereenkóduje, pouze kopíruje komprimované snímky</entry> </row> <row> <entry>frameno</entry> <entry>Použité pro 3-průchodové enkódování (nedoporučujeme)</entry> </row> </tbody> </tgroup> </informaltable> </para> <para> Výstupní nosný formát je vybírán volbou <option>-of</option>. Zadejte: <screen>mencoder -of help</screen> pro seznam všech nosných formátů podporovaných verzí programu <application>MEncoder</application> na vašem počítači. Dostupné jsou následující možnosti: </para> <para> Nosné formáty: <informaltable frame="all"> <tgroup cols="2"> <thead> <row><entry>Název nosného formátu</entry><entry>Popis</entry></row> </thead> <tbody> <row> <entry>lavf</entry> <entry>Jeden z nosných formátů podporovaných <systemitem class="library">libavformat</systemitem></entry> </row> <row> <entry>avi</entry> <entry>Audio-Video Interleaved (Prokládané audio s videem)</entry> </row> <row> <entry>mpeg</entry> <entry>MPEG-1 a MPEG-2 PS</entry> </row> <row> <entry>rawvideo</entry> <entry>surový (raw) video datový proud (žádný muxing – pouze jeden video proud)</entry> </row> <row> <entry>rawaudio</entry> <entry>surový (raw) audio datový proud (žádný muxing – pouze jeden audio proud)</entry> </row> </tbody> </tgroup> </informaltable> Nosný formát AVI je nativním nosným formátem <application>MEncoder</application>u, což znamená, že je tím, který je nejlépe zpracován a pro nějž byl <application>MEncoder</application> navržen. Jak bylo zmíněno, ostatní nosné formáty jsou použitelné, ale můžete při jejich použití narazit na problémy. </para> <para> Nosné formáty <systemitem class="library">libavformat</systemitem>: </para> <para> Pokud jste si zvolili <systemitem class="library">libavformat</systemitem> pro provádění muxování výstupního souboru (pomocí <option>-of lavf</option>), příslušný nosný formát bude určen z přípony výstupního souboru. Můžete vynutit určitý nosný formát pomocí parametru <option>format</option> knihovny <systemitem class="library">libavformat</systemitem>. <informaltable frame="all"> <tgroup cols="2"> <thead> <row><entry>Název <systemitem class="library">libavformat</systemitem> nosného formátu</entry><entry>Popis</entry></row> </thead> <tbody> <row> <entry>mpg</entry> <entry>MPEG-1 a MPEG-2 PS</entry> </row> <row> <entry>asf</entry> <entry>Advanced Streaming Format</entry> </row> <row> <entry>avi</entry> <entry>Audio-Video Interleaved</entry> </row> <row> <entry>wav</entry> <entry>Waveform Audio</entry> </row> <row> <entry>swf</entry> <entry>Macromedia Flash</entry> </row> <row> <entry>flv</entry> <entry>Macromedia Flash video</entry> </row> <row> <entry>rm</entry> <entry>RealMedia</entry> </row> <row> <entry>au</entry> <entry>SUN AU</entry> </row> <row> <entry>nut</entry> <entry>otevřený nosný formát NUT (experimentální a dosud neslučitelný se specifikací)</entry> </row> <row> <entry>mov</entry> <entry>QuickTime</entry> </row> <row> <entry>mp4</entry> <entry>formát MPEG-4</entry> </row> <row> <entry>dv</entry> <entry>Sony Digital Video</entry> </row> </tbody> </tgroup> </informaltable> Jak vidíte, <systemitem class="library">libavformat</systemitem> umožňuje <application>MEncoder</application>u muxovat do velkého množství nosných formátů. Naneštěstí, jelikož <application>MEncoder</application> nebyl od počátku navržen pro podporu jiných nosných formátů než AVI, měli byste být paranoidní ve vstahu k výstupnímu souboru. Ověřte si prosím pro jistotu, že audio/video synchronizace je OK a soubor lze správně přehrát i jinými přehrávači, než <application>MPlayer</application>. </para> <informalexample> <para>Příklad:</para> <para> Vytvoření Macromedia Flash videa vhodného pro přehrávání ve webovém prohlížeči pomocí Macromedia Flash pluginu: <screen> mencoder <replaceable>vstupní.avi</replaceable> -o <replaceable>výstupní.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>Výběr vstupního souboru nebo zařízení</title> <para> <application>MEncoder</application> umí enkódovat ze souborů nebo přímo z DVD či VCD disku. Vložte na příkazovém řádku jméno souboru pro enkódování souboru, nebo <option>dvd://</option><replaceable>číslo_titulu</replaceable> nebo <option>vcd://</option><replaceable>číslo_stopy</replaceable> pro enkódování DVD titulu či VCD stopy. Máte-li již zkopírováno DVD na hard disk (k tomu můžete použít nástroj jako <application>dvdbackup</application>, dostupný na mnoha systémech), a chcete enkódovat z kopie, měli byste i zde použít syntaxi <option>dvd://</option> ve spojení s volbou <option>-dvd-device</option> následovanou cestou do kořenového adresáře skopírovaného DVD. Volby <option>-dvd-device</option> a <option>-cdrom-device</option> lze rovněž použít k přenastavení cest k souborům zařízení pro přímé čtení disků, pokud výchozí <filename>/dev/dvd</filename> a <filename>/dev/cdrom</filename> na vašem systému nepracují. </para> <para> Enkódujete-li z DVD, je často vhodné vybrat kapitolu nebo rozsah kapitol k enkódování. Pro tento účel můžete použít volbu <option>-chapter</option>. Například s volbou <option>-chapter</option> <replaceable>1-4</replaceable> se budou z DVD enkódovat pouze kapitoly 1 až 4. To se zvlášť hodí, pokud budete enkódovat film na velikost 1400 MB určený pro dvě CD, jelikož budete mít jistotu, že zlom nastane přesně na hranici kapitol místo uprostřed scény. </para> <para> Pokud máte podporovanou TV zachytávací kartu, můžete rovněž enkódovat ze zařízení TV vstupu. Použijte <option>tv://</option><replaceable>číslo_kanálu</replaceable> jako jméno souboru a volbu <option>-tv</option> pro konfiguraci různých nastavení zachytávání. Vstup z DVB pracuje obdobně. </para> </sect1> <sect1 id="menc-feat-mpeg4"> <title>Dvouprůchodové enkódování MPEG-4 ("DivX")</title> <para> Název vychází z faktu, že soubor je enkódován <emphasis>dvakrát</emphasis>. První enkódování (dubbed pass) vytvoří dočasné soubory (<filename>*.log</filename>) velikosti několika megabajtů, které zatím nemažte (můžete smazat AVI, nebo raději žádné nevytvářejte a přesměrujte je do <filename>/dev/null</filename>). Ve druhém průchodu je vytvořen dvouprůchodový výstupní soubor s použitím řízení datového toku z dočasných souborů. Výsledný soubor bude mít lepší kvalitu obrazu. Pokud jste o tom teď slyšeli poprvé, měli byste si prostudovat některé návody dostupné na netu. </para> <example> <title>Kopírování zvukové stopy</title> <para> Dvouprůchodové enkódování druhé stopy z DVD do MPEG-4 ("DivX") AVI zatímco se zvuk pouze zkopíruje. <screen> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o <replaceable>/dev/null</replaceable> mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o <replaceable>film.avi</replaceable> </screen> </para> </example> <example> <title>Enkódování zvukové stopy</title> <para> Dvouprůchodové enkódování DVD do MPEG-4 ("DivX") AVI a současně enkódování zvukové stopy do MP3. Při této metodě buďte opatrní, jelikož v některých případech může vést k rozjetí zvuku s videem. <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>Enkódování do MPEG formátu</title> <para> <application>MEncoder</application> umí vytvořit výstupní soubor formátu MPEG (MPEG-PS). Pokud používáte MPEG-1 nebo MPEG-2 video, obvykle je to proto, že enkódujete pro omezený formát jako je SVCD, VCD nebo DVD. Konkrétní požadavky těchto formátů jsou objasněny v sekci <link linkend="menc-feat-vcd-dvd">návod pro vytvoření VCD a DVD</link>. </para> <para> Výstupní souborový formát <application>MEncoder</application>u změníte použitím volby <option>-of mpeg</option>. </para> <informalexample> <para> Příklad: <screen> mencoder -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video -oac copy <replaceable>další_volby</replaceable> <replaceable>media.avi</replaceable> -o <replaceable>výstup.mpg</replaceable> </screen> Vytvoření MPEG-1 souboru vhodného pro přehrávání na systémech s minimální podporou multimédií, jako je výchozí instalace Windows: <screen> mencoder -of mpeg -mpegopts format=mpeg1:tsaf:muxrate=2000 -o \ <replaceable>x.mpg</replaceable> -oac lavc -ovc lavc \ -lavcopts acodec=mp2:abitrate=224:vcodec=mpeg1video:vbitrate=1152:keyint=15:mbd=2:aspect=4/3 \ <replaceable>vstupní.avi</replaceable> </screen> </para> </informalexample> </sect1> <sect1 id="menc-feat-rescale"> <title>Škálování (změna velikosti) filmů</title> <para> Často potřebujeme změnit velikost obrázků ve filmu a to z mnoha důvodů: zmenšení souboru, zátěže sítě atd. Mnoho lidí dokonce mění velikost při převodu DVD nebo SVCD do DivX AVI. Pokud si přejete video přeškálovat, přečtěte si sekci <link linkend="aspect">Zachování poměru stran</link>. </para> <para> Samotný proces škálování je prováděn video filtrem <literal>scale</literal>: <option>-vf scale=<replaceable>šířka</replaceable>:<replaceable>výška</replaceable></option>. Jeho kvalita může být nastavena volbou <option>-sws</option>. Pokud ji neuvedete, <application>MEncoder</application> použije 2: bikubickou. </para> <para> Použití: <screen> mencoder <replaceable>vstup.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4 -vf scale=640:480 -o <replaceable>výstup.avi</replaceable> </screen> </para> </sect1> <sect1 id="menc-feat-streamcopy"> <title>Proudové kopírování</title> <para> <application>MEncoder</application> může zpracovat vstupní datové proudy dvěma způsoby: <emphasis role="bold">enkóduje</emphasis> je, nebo je <emphasis role="bold">kopíruje</emphasis>. Tato část je o <emphasis role="bold">kopírování</emphasis>. </para> <itemizedlist> <listitem><para> <emphasis role="bold">Video proud</emphasis> (volba <option>-ovc copy</option>): můžete dělat pěkné věci :) Jako umístění (nikoli konverze!) FLI nebo VIVO nebo MPEG-1 videa do AVI souboru! Samozřejmě takové soubory přehraje pouze <application>MPlayer</application> :) A proto to nejspíš nemá žádnou rozumnou hodnotu. A teď vážně: kopírování video proudu může být užitečné například tehdy, když má být enkódován pouze zvuk (např. nekomprimovaný PCM do MP3). </para></listitem> <listitem><para> <emphasis role="bold">Audio proud</emphasis> (volba <option>-oac copy</option>): jednoduché. Je možné vzít externí zvukový soubor (MP3, WAV) a namultiplexovat jej do výstupního proudu. K tomu použijte volbu <option>-audiofile <replaceable>soubor</replaceable></option>. </para></listitem> </itemizedlist> <para> Použití <option>-oac copy</option> pro kopírování z jednoho nosného fomátu do jiného může vyžadovat použití <option>-fafmttag</option> pro zachování příznaku formátu zvuku původního souboru. Například pokud konvertujete NSV soubor a AAC zvukem do nosného formátu AVI, bude příznak formátu zvuku nesprávný a bude jej nutno změnit. Seznam příznaků audio formátu naleznete v souboru <filename>codecs.conf</filename>. </para> <para> Example: <screen> mencoder <replaceable>vstupní.nsv</replaceable> -oac copy -fafmttag 0x706D -ovc lavc -lavcopts vcodec=mpeg4 -o <replaceable>výstupní.avi</replaceable> </screen> </para> </sect1> <sect1 id="menc-feat-enc-images"> <title>Enkódování z množství vstupních obrázkových souborů (JPEG, PNG, TGA, SGI)</title> <para> <application>MEncoder</application> je schopen vytvořit film z jednoho nebo více JPEG, PNG nebo TGA souborů. Pomocí jednoduchého snímkového kopírování může vytvořit MJPEG (Motion JPEG), MPNG (Motion PNG) nebo MTGA (Motion TGA) soubory. </para> <orderedlist> <title>Vysvětlení procesu:</title> <listitem><para> <application>MEncoder</application> <emphasis>dekóduje</emphasis> vstupní soubor(y) pomocí knihovny <systemitem class="library">libjpeg</systemitem> (když dekóduje PNG, použije <systemitem class="library">libpng</systemitem>). </para></listitem> <listitem><para> Potom <application>MEncoder</application> nakrmí dekódovaný snímek do zvoleného video kompresoru (DivX4, XviD, FFmpeg msmpeg4, atd). </para></listitem> </orderedlist> <formalpara> <title>Příklady</title> <para> Vysvětlení volby <option>-mf</option> je v man stránce. <informalexample> <para> Vytvoření MPEG-4 souboru ze všech JPEG souborů v aktuálním adresáři: <screen> mencoder mf://*.jpg -mf w=800:h=600:fps=25:type=jpg -ovc lavc -lavcopts vcodec=mpeg4 -oac copy -o <replaceable>výstup.avi</replaceable> </screen> </para> </informalexample> <informalexample> <para> Vytvoření MPEG-4 souboru z některých JPEG souborů v aktuálním adresáři: <screen> mencoder mf://<replaceable>snímek001.jpg,snímek002.jpg</replaceable> -mf w=800:h=600:fps=25:type=jpg -ovc lavc -lavcopts vcodec=mpeg4 -oac copy -o <replaceable>výstup.avi</replaceable> </screen> </para> </informalexample> <informalexample> <para> Vytvoření Motion JPEG (MJPEG) souboru ze všech JPEG souborů v aktuálním adresáři: <screen> mencoder mf://*.jpg -mf w=800:h=600:fps=25:type=jpg -ovc copy -oac copy -o <replaceable>výstup.avi</replaceable> </screen> </para> </informalexample> <informalexample> <para> Vytvoření nekomprimovaného souboru ze všech PNG souborů v aktuálním adresáři: <screen> mencoder mf:// -mf w=800:h=600:fps=25:type=png -ovc raw -oac copy -o <replaceable>výstup.avi</replaceable> </screen> </para> </informalexample> <note><para> Šířka musí být celé číslo násobek 4, to je dáno omezením RAW RGB AVI formátu. </para></note> <informalexample> <para> Vytvoření Motion PNG (MPNG) souboru ze všech PNG souborů v aktuálním adresáři: <screen> mencoder mf://*.png -mf w=800:h=600:fps=25:type=png -ovc copy -oac copy -o <replaceable>výstup.avi</replaceable> <!-- --></screen> </para> </informalexample> <informalexample> <para> Vytvoření Motion TGA (MTGA) souboru ze všech TGA souborů v aktuálním adresáři: <screen> mencoder mf://*.tga -mf w=800:h=600:fps=25:type=tga -ovc copy -oac copy -o <replaceable>výstup.avi</replaceable><!-- --></screen> </para> </informalexample> </para> </formalpara> </sect1> <sect1 id="menc-feat-extractsub"> <title>Extrakce DVD titulků do VOBsub souboru</title> <para> <application>MEncoder</application> je schopen vyextrahovat titulky z DVD do VOBsub formátovaných souborů. Ty sestávají ze dvou souborů zakončených <filename>.idx</filename> a <filename>.sub</filename> a jsou obvykle zabaleny v jediném <filename>.rar</filename> archivu. <application>MPlayer</application> je umí přehrávat s pomocí voleb <option>-vobsub</option> a <option>-vobsubid</option>. </para> <para> Zadejte základní jméno (čili bez přípony <filename>.idx</filename> nebo <filename>.sub</filename>) výstupních souborů pomocí volby <option>-vobsubout</option> a index pro tyto titulky ve zbývajících souborech pomocí <option>-vobsuboutindex</option>. </para> <para> Pokud není vstup z DVD, měli byste použít <option>-ifo</option> pro indikaci <filename>.ifo</filename> souboru nutného k vytvoření výsledného <filename>.idx</filename> souboru. </para> <para> Pokud vstup není z DVD a nemáte <filename>.ifo</filename> soubor, budete muset použít volbu <option>-vobsubid</option> k nastavení, pro které id jazyka se má vytvořit <filename>.idx</filename> soubor. </para> <para> Každým spuštěním se přidají běžící titulky pokud soubory <filename>.idx</filename> a <filename>.sub</filename> již existují. Takže byste je měli všechny odstranit dříve než začnete. </para> <example> <title>Kopírování dvojích titulků z DVD během dvouprůchodového enkódování</title> <screen> rm titulky.idx titulky.sub mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -vobsubout titulky -vobsuboutindex 0 -sid 2 mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -vobsubout titulky -vobsuboutindex 1 -sid 5<!-- --></screen> </example> <example> <title>Kopírování francouzských titulků z MPEG souboru</title> <screen> rm titulky.idx titulky.sub mencoder <replaceable>film.mpg</replaceable> -ifo <replaceable>film.ifo</replaceable> -vobsubout titulky -vobsuboutindex 0 -vobsuboutid fr -sid 1 -nosound -ovc copy </screen> </example> </sect1> <sect1 id="aspect"> <title>Zachování poměru stran</title> <para> DVD a SVCD (čili MPEG-1/2) soubory obsahují hodnotu poměru stran, popisující, jak by měl přehrávač škálovat video proud, takže lidé nebudou mít šišaté hlavy (př.: 480x480 + 4:3 = 640x480). Pokud ovšem enkódujeme do AVI (DivX) souborů, mějte na paměti, že AVI hlavičky neukládají tuto hodnotu. Přeškálování videa je odporné a časově náročné, takže musí být lepší způsob! </para> <para>A zde jej máte</para> <para> MPEG-4 má unikátní vlastnost: video proud může obsahovat svůj požadovaný poměr stran. Ano, přesně jako MPEG-1/2 (DVD, SVCD) a H.263 soubory. Naneštěstí, <emphasis role="bold">žádný</emphasis> video přehrávač nepodporuje tento atribut MPEG-4, s výjimkou <application>MPlayer</application>u. </para> <para> Tato vlastnost může být použita pouze s kodekem <systemitem>mpeg4</systemitem> z <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>u. Mějte na paměti: ačkoli <application>MPlayer</application> korektně přehraje vytvořený soubor, ostatní přehrávače použijí špatný poměr stran. </para> <para> Opravdu byste měli oříznout černé okraje nad a pod filmem. Nastudujte si použití filtrů <systemitem>cropdetect</systemitem> a <systemitem>crop</systemitem> v man stránce. </para> <para> Použití <screen>mencoder <replaceable>vzorové-svcd.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4:autoaspect -vf crop=714:548:0:14 -oac copy -o <replaceable>výstup.avi</replaceable></screen> </para> </sect1> </chapter>