view DOCS/xml/pl/mencoder.xml @ 33263:5f527a9a9521

Add an exit function. This function will allow performing clean-up operations. (MPlayer calls guiDone() before exiting, but only if the GUI has been initialized, i.e. if guiInit() has been called successfully. Any exit_player()/exit_player_with_rc() after GUI's cfg_read() until guiInit(), or any exit_player() during guiInit() itself will end the GUI without calling guiDone(). This exit function will at least handle abortions during guiInit() itself. It will be called twice in case of an guiExit() after GUI initialization - first directly, next by guiDone() via MPlayer's exit_player_with_rc().)
author ib
date Tue, 03 May 2011 12:19:22 +0000
parents 1bd408cc4143
children
line wrap: on
line source

<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r21748 -->
<!-- Opiekun: Qba -->
<chapter id="mencoder">
<title>Podstawy używania <application>MEncodera</application></title>

<para>
Pełna lista dostępnych opcji <application>MEncodera</application> oraz
przykłady znajdują się na stronie man. W pliku
<ulink url="../../tech/encoding-tips.txt">encoding-tips</ulink>
znajduje się dużo przykładów i przewodników skompletowanych z wielu wątków
listy dyskusyjnej MPlayer-users.
W <ulink url="http://mplayerhq.hu/pipermail/mplayer-users/">archiwum</ulink>
znajdziesz mnóstwo dyskusji o aspektach i problemach związanych z kodowaniem
przy pomocy <application>MEncodera</application>.
</para>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="menc-feat-selecting-codec">
<title>Wybieranie kodeka i formatu</title>

<para>
Kodeki audio i video stosowane przy kodowaniu są wybierane odpowiednio
opcjami <option>-oac</option> i <option>-ovc</option>.
Napisz na przykład:
<screen>mencoder -ovc help</screen>
by uzyskać listę wszystkich kodeków video obsługiwanych przez
<application>MEncodera</application> na Twoim komputerze.
Dostępne są następujące:
</para>

<para>
Kodeki audio:
<informaltable frame="all">
<tgroup cols="2">
<thead>
<row><entry>Nazwa kodeka audio</entry><entry>Opis</entry></row>
</thead>
<tbody>
<row>
  <entry>mp3lame</entry>
  <entry>kodowanie na MP3 VBR, ABR lub przy użyciu LAME</entry>
</row>
<row>
  <entry>lavc</entry>
  <entry>używa jednego z <link linkend="menc-feat-enc-libavcodec-audio-codecs">kodeków audio z <systemitem class="library">libavcodec</systemitem></link></entry>
</row>
<row>
  <entry>faac</entry>
  <entry>koder audio FAAC AAC</entry>
</row>
<row>
  <entry>toolame</entry>
  <entry>koder MPEG Audio Layer 2</entry>
</row>
<row>
  <entry>twolame</entry>
  <entry>koder MPEG Audio Layer 2 encoder oparty na tooLAME</entry>
</row>
<row>
  <entry>pcm</entry>
  <entry>nieskompresowany dźwięk PCM</entry>
</row>
<row>
  <entry>copy</entry>
  <entry>nie przekodowywuj, tylko przekopiuj zakodowane ramki</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>

<para>
Kodeki video:
<informaltable frame="all">
<tgroup cols="2">
<thead>
<row><entry>Nazwa kodeka video</entry><entry>Opis</entry></row>
</thead>
<tbody>
<row>
  <entry>lavc</entry>
  <entry>używa jednego z <link linkend="menc-feat-enc-libavcodec-video-codecs">kodeków video z <systemitem class="library">libavcodec</systemitem></link></entry>
</row>
<row>
  <entry>xvid</entry>
  <entry>Xvid, kodek MPEG-4 Advanced Simple Profile (ASP)</entry>
</row>
<row>
  <entry>x264</entry>
  <entry>x264, MPEG-4 Advanced Video Coding (AVC), zwany kodekiem H.264</entry>
</row>
<row>
  <entry>nuv</entry>
  <entry>nuppel video, używany przez niektóre aplikacje czasu rzeczywistego</entry>
</row>
<row>
  <entry>raw</entry>
  <entry>nieskompresowane klatki video</entry>
</row>
<row>
  <entry>copy</entry>
  <entry>nie przekodowywuj, tylko przekopiuj zakodowane ramki</entry>
</row>
<row>
  <entry>frameno</entry>
  <entry>używany do kodowania trójprzebiegowego (nie zalecane)</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>

<para>
Format wyjściowy wybiera się opcją <option>-of</option>.
Napisz:
<screen>mencoder -of help</screen>
by otrzymać listę wszystkich formatów obsługiwanych przez
<application>MEncodera</application> na Twoim komputerze.
</para>

<para>
Formaty przechowywania:
<informaltable frame="all">
<tgroup cols="2">
<thead>
<row><entry>Nazwa formatu</entry><entry>Opis</entry></row>
</thead>
<tbody>
<row>
  <entry>lavf</entry>
  <entry>jeden z formatów obsługiwanych przez
  <systemitem class="library">libavformat</systemitem></entry>
</row>
<row>
  <entry>avi</entry>
  <entry>Audio-Video Interleaved (Przeplecione Audio-Video)</entry>
</row>
<row>
  <entry>mpeg</entry>
  <entry>MPEG-1 i MPEG-2 PS</entry>
</row>
<row>
  <entry>rawvideo</entry>
  <entry>surowy strumień video (bez muxowania - tylko jeden strumień video)</entry>
</row>
<row>
  <entry>rawaudio</entry>
  <entry>surowy strumień audio (bez muxowania - tylko jeden strumień audio)</entry>
</row>
</tbody>
</tgroup>
</informaltable>
Format AVI jest podstawowym formatem <application>MEncodera</application>,
co oznacza że jest najlepiej obsługiwany i że
<application>MEncoder</application> był projektowany z myślą o nim.
Jak napisano wcześniej, można używać innych formatów, ale możesz napotkać
przy tym problemy.
</para>

<para>
Formaty z <systemitem class="library">libavformat</systemitem>:
</para>

<para>
Jeśli chcesz żeby <systemitem class="library">libavformat</systemitem>
dokonywał muksowania zbioru wyjściowego (przy użyciu opcji
<option>-of lavf</option>), stosowny format zostanie ustalony na podstawie
rozszerzenia pliku wyjściowego.
Możesz wymusić konkretny format opcją <option>format</option> biblioteki
<systemitem class="library">libavformat</systemitem>.

<informaltable frame="all">
<tgroup cols="2">
<thead><row>
  <entry>nazwa formatu <systemitem class="library">libavformat</systemitem></entry>
  <entry>Opis</entry>
</row></thead>
<tbody>
<row>
  <entry>mpg</entry>
  <entry>MPEG-1 i MPEG-2 PS</entry>
</row>
<row>
  <entry>asf</entry>
  <entry>Advanced Streaming Format (Zaawansowany format strumieniowy)</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>otwarty format NUT (eksperymentalny i jeszcze bez specyfikacji)</entry>
</row>
<row>
  <entry>mov</entry>
  <entry>QuickTime</entry>
</row>
<row>
  <entry>mp4</entry>
  <entry>MPEG-4 format</entry>
</row>
<row>
  <entry>dv</entry>
  <entry>format Sony Digital Video</entry>
</row>
</tbody>
</tgroup>
</informaltable>
Jak widzisz, <systemitem class="library">libavformat</systemitem> pozwala
<application>MEncoderowi</application> tworzyć sporą ilość różnych formatów.
Niestety, ponieważ <application>MEncoder</application> nie był tworzony
z myślą o innych formatach niż AVI, powinieneś mieć paranoidalne podejście do
wynikowych plików.
Dokładnie sprawdź czy jest prawidłowa synchronizacja audio/video i czy plik
może zostać prawidłowo odtworzony przez odtwarzacze inne niż
<application>MPlayer</application>.
</para>

<example id="encode_to_macromedia_flash_format">
<title>kodowanie do formatu Macromedia Flash</title>
<para>
Tworzenie zbioru Macromedia Flash video, nadającego się do odtwarzania
w przeglądarce sieciowej z wtyczką Macromedia Flash:
<screen>
mencoder <replaceable>wejście.avi</replaceable> -o <replaceable>wyjście.flv</replaceable> -of lavf \
    -oac mp3lame -lameopts abr:br=56 -srate 22050 -ovc lavc \
    -lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3
</screen>
</para>
</example>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="menc-feat-selecting-input">
<title>Wybieranie źródłowego zbioru lub urządzenia</title>

<para>
<application>MEncoder</application> może kodoważ ze zbiorów lub bezpośrednio
z dysku DVD lub VCD.
Po prostu podaj nazwę zbioru w wierszu poleceń żeby kodować ze zbioru, albo
<option>dvd://</option><replaceable>numertytułu</replaceable> lub
<option>vcd://</option><replaceable>numerścieżki</replaceable> by nagrywać
z tytułu DVD albo ścieżki VCD.
Jeśli już skopiowałeś DVD na twardy dysk (możesz na przykład użyć narzędzia
takiego jak <application>dvdbackup</application>, dostępnego na większości
systemów), wciąż powinieneś używać składni <option>dvd://</option>, razem
z opcją <option>-dvd-device</option> po której następuje ścieżka do
skopiowanego DVD.

Opcji <option>-dvd-device</option> i <option>-cdrom-device</option> możesz
też używać by podać własne ścieżki do węzłów urządzeń, jeśli domyślne
<filename>/dev/dvd</filename> i <filename>/dev/cdrom</filename> nie są
właściwe w Twoim systemie.
</para>

<para>
Przy kodowaniu z DVD, często pożądanym jest wybranie do kodowania rozdziału
lub zasięgu rozdziałów.
Możesz w tym celu użyć opcji <option>-chapters</option>, na przykład
<option>-chapters</option> <replaceable>1-4</replaceable> zakoduje z DVD
tylko rozdziały od 1 do 4.
Jest to zwłaszcza użyteczne gdy robisz kodowanie do wielkości 1400 MB,
przeznaczone na 2 CD, ponieważ możesz się upewnić że przerwa nastąpi
dokładnie na granicy rozdziałów a nie w środku sceny.
</para>

<para>
Jeśli masz obsługiwaną kartę przechwytywania TV, możesz też kodować z jej
urządzenia wejściowego.
Użyj opcji <option>tv://</option><replaceable>numerkanału</replaceable> jako
nazwy pliku, a opcją <option>-tv</option> skonfiguruj rozmaite ustawienia
przechwytywania.
Podobnie działa wejście z DVB.
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="menc-feat-mpeg4">
<title>Kodowanie dwuprzebiegowe MPEG-4 ("DivX")</title>

<para>
Nazwa związana jest z faktem, iż przy użyciu tej metody plik kodowany jest
<emphasis>dwa razy</emphasis>.
Pierwsze kodowanie (dubbed pass) tworzy pliki tymczasowe
(<filename>*.log</filename>) o rozmiarze kilku megabajtów, nie kasuj ich od
razu (możesz natomiast skasować plik AVI a jeszcze lepiej nie tworzyć go
w ogóle poprzez zapisywanie w <filename>/dev/null</filename>).
W drugim przebiegu przy pomocy danych o bitrate z plików tymczasowych tworzony
jest plik wyjściowy drugiego przebiegu. Plik końcowy będzie miał o wiele lepszą
jakość w porównaniu ze standardowym 1-przebiegowym kodowaniem.
Jeżeli pierwszy raz o tym słyszysz, powinieneś zajrzeć do któregoś z wielu
przewodników dostępnych w sieci.
</para>

<example id="copy_audio_track">
<title>kopiowanie ścieżki dźwiękowej</title>
<para>
Dwuprzebiegowe kodowanie DVD do MPEG-4 ("DivX") AVI z kopiowaniem ścieżki dźwiękowej.
<screen>
mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o /dev/null
mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:vpass=2 \
    -oac copy -o <replaceable>output.avi</replaceable>
</screen>
</para>
</example>

<example id="encode_audio_track">
<title>kodowanie ścieżki dźwiękowej</title>
<para>
Dwuprzebiegowe kodowanie DVD do MPEG-4 ("DivX") AVI z kodowaniem ścieżki dźwiękowej do MP3.
Uważaj stosując tę metodę, ponieważ w niektórych przypadkach może zaowocować
desynchronizacją audio/video.
<screen>
mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 \
    -oac mp3lame -lameopts vbr=3 -o /dev/null
mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:vpass=2 \
    -oac mp3lame -lameopts vbr=3 -o <replaceable>output.avi</replaceable>
</screen>
</para>
</example>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="menc-feat-handheld-psp">
<title>Kodowanie do formatu video Sony PSP</title>

<para>
<application>MEncoder</application> obsługuje kodowanie do formatu video Sony
PSP, ale, w zależności od wersji oprogramowania PSP, wymaga różnych
ograniczeń.
Powinieneś byś bezpieczny, jeśli respektujesz poniższe ograniczenia:
<itemizedlist>
<listitem><para>
  <emphasis role="bold">Bitrate</emphasis>: nie powinno przekraczać 1500kbps,
  jednakże poprzednie wersje obsługiwały praktycznie dowolny bitrate jeśli
  tylko nagłówek twierdził że nie jest za wysokie.
</para></listitem>
<listitem><para>
  <emphasis role="bold">Wymiary</emphasis>: wysokość i szerokość filmu PSP
  powinny być wielokrotnościami 16, a iloczyn szerokość * wysokość musi być
  &lt;= 64000.
  W niektórych okolicznościach może być możliwe że PSP odtworzy wyższe
  rozdzielczości.
</para></listitem>
<listitem><para>
  <emphasis role="bold">Audio</emphasis>: powinno mieć częstotliwość
  próbkowania 24kHz dla MPEG-4 i 48kHz dla H.264.
</para></listitem>
</itemizedlist>
</para>

<example id="encode_for_psp">
<title>kodowanie dla PSP</title>
<para>
<screen>
mencoder -ofps 30000/1001 -af lavcresample=24000 -vf harddup -oac lavc \
    -ovc lavc -lavcopts aglobal=1:vglobal=1:vcodec=mpeg4:acodec=libfaac \
    -of lavf -lavfopts format=psp \
    <replaceable>wejściowe.video</replaceable> -o <replaceable>wyjście.psp</replaceable>
</screen>
Możesz też ustawić tytuł filmu dzięki
<option>-info name=<replaceable>TytułFilmu</replaceable></option>.
</para>
</example>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="menc-feat-mpeg">
<title>Kodowanie do formatu MPEG</title>

<para>
<application>MEncoder</application> może tworzyć pliki formatu MPEG (MPEG-PS).
Zazwyczaj, jeśli używasz filmu MPEG-1 albo MPEG-2, to jest tak ponieważ
kodujesz na ograniczony format, taki jak SVCD, VCD albo DVD.
Specyficzne ograniczenia tych formatów są wyjaśnione w
<link linkend="menc-feat-vcd-dvd">przewodniku tworzenia VCD i DVD</link>.
</para>

<para>
Aby zmienić wyjściowy format plików <application>MEncodera</application>, użyj opcji <option>-of mpeg</option>.
</para>

<informalexample>
<para>
Przykład:
<screen>
mencoder <replaceable>wejscie.avi</replaceable> -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video \
    -oac copy <replaceable>inne_opcje</replaceable> -o <replaceable>wyjście.mpg</replaceable>
</screen>
Tworzenie pliku MPEG-1, który można odtworzyć na systemach z minimalną obsługą
multimedialną, taką jak domyślne instalacje Windows:
<screen>
mencoder <replaceable>wejscie.avi</replaceable> -of mpeg -mpegopts format=mpeg1:tsaf:muxrate=2000 \
    -o <replaceable>wyjście.mpg</replaceable> -oac lavc -lavcopts acodec=mp2:abitrate=224 -ovc lavc \
    -lavcopts vcodec=mpeg1video:vbitrate=1152:keyint=15:mbd=2:aspect=4/3
</screen>
To samo, ale używając muxera MPEG z <systemitem class="library">libavformat</systemitem>:
<screen>
mencoder <replaceable>wejście.avi</replaceable> -o <replaceable>VCD.mpg</replaceable> -ofps 25 -vf scale=352:288,harddup -of lavf \
    -lavfopts format=mpg:i_certify_that_my_video_stream_does_not_use_b_frames \
    -oac lavc -lavcopts acodec=mp2:abitrate=224 -ovc lavc \
    -lavcopts vcodec=mpeg1video:vrc_buf_size=327:keyint=15:vrc_maxrate=1152:vbitrate=1152:vmax_b_frames=0
</screen>
</para>
</informalexample>

<note><title>Wskazówka:</title>
<para>
Jeżeli z jakiegoś powodu nie satysfakcjonuje Cię jakość video
z drugiego przebiegu, możesz ponownie uruchomić kodowanie
swojego video z inną docelową szybkością transmisji (bitrate),
zakładając, że zapisałeś statystyki pliku z poprzedniego przebiegu.
Jest to możliwe, ponieważ głównym celem pliku ze statystykami jest
zapamiętanie złożoności każdej z ramek, co nie zależy zbyt mocno
od szybkości transmisji. Weź jednak pod uwagę, że uzyskasz najlepsze
wyniki, jeżeli wszystkie przebiegi będą uruchomione z nieróżniącymi
się za bardzo docelowymi szybkościami transmisji.
</para>
</note>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="menc-feat-rescale">
<title>Przeskalowywanie filmów</title>

<para>
Często zachodzi potrzeba zmiany wielkości obrazu. Powodów tego może być wiele:
zmniejszenie rozmiaru pliku, przepustowość sieci, itd. Większość ludzi stosuje
przeskalowywanie nawet przy konwertowaniu płyt DVD, SVCD do DivX AVI. Jeżeli
chcesz przeskalowywać, przeczytaj sekcję o <link linkend="aspect">zachowywaniu proporcji obrazu</link>.
</para>

<para>
Proces skalowania obsługiwany jest przez filtr video <literal>scale</literal>:
<option>-vf scale=<replaceable>szerokość</replaceable>:<replaceable>wysokość</replaceable></option>.
Jego jakość może być ustawiona parametrem <option>-sws</option>.
Jeśli nie jest on podany <application>MEncoder</application> użyje wartości 2: bicubic.
</para>

<para>
Sposób użycia:
<screen>
mencoder <replaceable>wejscie.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell \
    -vf scale=640:480 -o <replaceable>wyjście.avi</replaceable>
</screen>
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="menc-feat-streamcopy">
<title>Kopiowanie strumieni</title>

<para>
<application>MEncoder</application> obsługuje strumienie wejściowe na dwa
sposoby: <emphasis role="bold">koduje</emphasis> lub
<emphasis role="bold">kopiuje</emphasis> je.
Ta sekcja jest o <emphasis role="bold">kopiowaniu</emphasis>.
</para>

<itemizedlist>
<listitem><para>
  <emphasis role="bold">Strumień video</emphasis> (opcja <option>-ovc copy</option>):
  ładne rzeczy można wyczyniać:) Jak wstawianie (nie konwertowanie) FLI, VIDO
  lub MPEG-1 video w plik AVI! Oczywiście tylko
  <application>MPlayer</application> potrafi odtwarzać takie pliki :)
  I prawdopodobnie nie ma dla tego żadnego sensownego zastosowania.
  Poważniej: kopiowanie strumieni video może być przydatne wtedy, gdy np. tylko
  strumień audio ma być zakodowany (np. nieskompresowane PCM do MP3).
</para></listitem>
<listitem><para>
  <emphasis role="bold">Strumień audio</emphasis> (opcja <option>-oac copy</option>):
  prosto i przystępnie. Możliwe jest wmiksowanie zewnętrznego źródła (MP3, WAV)
  do strumienia wyjściowego. Użyj w tym celu opcji
  <option>-audiofile <replaceable>nazwa_pliku</replaceable></option>.
</para></listitem>
</itemizedlist>

<para>
Używanie <option>-oac copy</option> do kopiowania z jednego formatu
przechowywania do innego może wymagać użycia <option>-fafmttag</option> żeby
utrzymać znacznik formatu audio z oryginalnego zbioru.
Na przykład jeśli konwertujesz zbiór NSV z audio zakodowanym AAC do formatu
AVI, to znacznik formatu audio będzie nieprawidłowy i musi zostać zmieniony.
Listę znaczników formatów audio znajdziesz w pliku
<filename>codecs.conf</filename>.
</para>

<para>
Przykład:
<screen>
mencoder <replaceable>wejście.nsv</replaceable> -oac copy -fafmttag 0x706D \
    -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell -o <replaceable>wyjście.avi</replaceable>
</screen>
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="menc-feat-enc-images">
<title>Kodowanie z wielu wejściowych plików obrazkowych
  (JPEG, PNG, TGA itp.)</title>

<para>
<application>MEncoder</application> jest w stanie stworzyć film z jednego
lub wielu plików JPEG, PNG, TGA albo innych obrazków.
Poprzez proste kopiowanie ramek może stworzyć pliki MJPEG
(Motion (ruchomy - przypis tłumacza) JPEG), MPNG (Motion PNG) lub MTGA (Motion TGA).
</para>

<orderedlist>
<title>Jak to działa:</title>
<listitem><para>
  <application>MEncoder</application> <emphasis>dekoduje</emphasis> wejściowy
  obrazek/obrazki z pomocą biblioteki
  <systemitem class="library">libjpeg</systemitem> (w przypadku dekodowania
  PNG, skorzysta z <systemitem class="library">libpng</systemitem>).
</para></listitem>
<listitem><para>
  Potem <application>MEncoder</application> kompresuje zdekodowane pliki
  podanym kompresorem (DivX4, Xvid, FFmpeg msmpeg4, itd.).
</para></listitem>
</orderedlist>

<formalpara>
<title>Przykłady</title>
<para>
Opis i sposób działania funkcji <option>-mf</option> znajdują się na stronie man.

<informalexample>
<para>
Tworzenie pliku MPEG-4 ze wszystkich plików JPEG w aktualnym katalogu:
<screen>
mencoder mf://<replaceable>*.jpg</replaceable> -mf w=800:h=600:fps=25:type=jpg -ovc lavc\
    -lavcopts vcodec=mpeg4:mbd=2:trell -oac copy -o <replaceable>wyjście.avi</replaceable>
</screen>
</para>
</informalexample>

<informalexample>
<para>
Tworzenie pliku MPEG-4 z niektórych plików JPEG w aktualnym katalogu:
<screen>
mencoder mf://<replaceable>ramka001.jpg,ramka002.jpg</replaceable> -mf w=800:h=600:fps=25:type=jpg \
    -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell -oac copy -o <replaceable>wyjście.avi</replaceable>
</screen>
</para>
</informalexample>

<informalexample>
<para>
Tworzenie plików MPEG-4 z jawnie podanej listy plików JPEG (list.txt w aktualnym
katalogu, zawiera listę plików, które mają zostać użyte jako źródło, po jednym
w każdym wierszu):
<screen>
mencoder mf://<replaceable>@list.txt</replaceable> -mf w=800:h=600:fps=25:type=jpg \
    -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell -oac copy -o <replaceable>wyjście.avi</replaceable>
</screen>
</para>
</informalexample>

Możesz mieszać rózne typy obrazków, niezależnie od używanej metody
&mdash; wymieniane pliki, znaki globalne czy plik z listą &mdash; o ile
oczywiście wszystkie mają te same wymiary.
Możesz więc n.p. zrobić klatkę tytułową z obrazka PNG a potem umieścić pokaz
swoich zdjęć JPEG.

<informalexample>
<para>
Tworzenie pliku Motion JPEG (MJPEG) ze wszystkich plików JPEG w aktualnym katalogu:
<screen>
mencoder mf://*.jpg -mf w=800:h=600:fps=25:type=jpg -ovc copy -ovc copy -o <replaceable>wyjście.avi</replaceable>
</screen>
</para>
</informalexample>

<informalexample>
<para>
Tworzenie nieskompresowanego pliku ze wszystkich plików PNG w aktualnym katalogu:
<screen>
mencoder mf://*.png -mf w=800:h=600:fps=25:type=png -ovc raw -oac copy -o <replaceable>wyjście.avi</replaceable>
</screen>
</para>
</informalexample>

<note><title>Informacja:</title><para>
Szerokość musi być liczbą podzielną przez 4, takie są ograniczenia formatu RAW RGB AVI.
</para></note>

<informalexample>
<para>
Tworzenie pliku Motion PNG (MPNG) ze wszystkich plików PNG w aktualnym katalogu:
<screen>mencoder mf://*.png -mf w=800:h=600:fps=25:type=png -ovc copy -oac copy -o <replaceable>wyjście.avi</replaceable><!--
--></screen>
</para>
</informalexample>

<informalexample>
<para>
Tworzenie pliku Motion TGA (MTGA) ze wszystkich plików TGA w aktualnym katalogu:
<screen>
mencoder mf://*.tga -mf w=800:h=600:fps=25:type=tga -ovc copy -oac copy -o <replaceable>wyjście.avi</replaceable><!--
--></screen>
</para>
</informalexample>

</para>
</formalpara>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="menc-feat-extractsub">
<title>Wydobywanie napisów z DVD do pliku VOBsub</title>

<para>
<application>MEncoder</application> jest w stanie wyciągnąć napisy z DVD do
pliku w formacie VOBsub. Tworzy je para plików z rozszerzeniem
<filename>.idx</filename> i <filename>.sub</filename>, które są zazwyczaj
spakowane do pojedyńczego archiwum <filename>.rar</filename>.
<application>MPlayer</application> może je odtwarzać z opcjami
<option>-vobsub</option> i <option>-vobsubid</option>.
</para>

<para>
Podajesz nazwę bazową (tzn. bez rozszerzenia <filename>.idx</filename> lub
<filename>.sub</filename>) pliku wyjściowego opcją <option>-vobsubout</option>
oraz indeks dla tego pliku opcją <option>-vobsuboutindex</option>.
</para>

<para>
Jeżeli źródłem nie jest DVD powinieneś użyć opcji <option>-ifo</option>, aby
wskazać plik <filename>.ifo</filename> potrzebny do stworzenia pliku wynikowego
<filename>.idx</filename>.
</para>

<para>
Jeżeli źródłem nie jest DVD i nie masz pliku <filename>.ifo</filename>,
będziesz musiał użyć opcji <option>-vobsubid</option>, aby podać id języka,
które będzie umieszczone w pliku <filename>.idx</filename>.
</para>

<para>
Każde uruchomienie dołączy do istniejących napisów, jeżeli pliki
<filename>.idx</filename> i <filename>.sub</filename> istnieją.
Powinieneś więc usunąć je przed uruchomieniem.
</para>

<example id="copying_two_subtitles_from_a_dvd_while_doing_two_pass_encoding">
<title>Kopiowanie dwóch napisów z DVD podczas dwu-przebiegowego kodowania</title>
<screen>
rm <replaceable>napisy.idx</replaceable> <replaceable>napisy.sub</replaceable>
mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 \
    -vobsubout <replaceable>napisy</replaceable> -vobsuboutindex 0 -sid 2
mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:vpass=2 \
    -vobsubout <replaceable>napisy</replaceable> -vobsuboutindex 1 -sid 5<!--
--></screen>
</example>

<example id="copying_a_french_subtitle_from_an_mpeg_file">
<title>Kopiowanie francuskich napisów z pliku MPEG</title>
<screen>
rm <replaceable>napisy.idx</replaceable> <replaceable>napisy.sub</replaceable>
mencoder <replaceable>film.mpg</replaceable> -ifo <replaceable>film.ifo</replaceable> -vobsubout <replaceable>napisy</replaceable> -vobsuboutindex 0 \
    -vobsuboutid fr -sid 1 -nosound -ovc copy<!--
--></screen>
</example>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="aspect">
<title>Utrzymywanie proporcji obrazu (aspect ratio)</title>

<para>
Pliki DVD i SVCD (tzn. MPEG-1/2) zawierają informacje o proporcji obrazu, która
opisuje, jak odtwarzacz ma skalować strumień video, żeby ludzie nie byli
jajogłowi (np.: 480x480 + 4:3 = 640x480).
Jednak przy kodowaniu plików AVI (DivX) musisz być świadom, że nagłówek AVI nie
przechowuje tej wartości.
Przeskalowywanie jest obrzydliwe i czasochłonne, musi być jakiś lepszy sposób!
</para>

<para>Jest</para>

<para>
MPEG-4 posiada unikalną cechę: strumień video może posiadać swoją wartość
proporcji obrazu.  Tak, dokładnie jak pliki MPEG-1/2 (DVD, SVCD) i H.263.
Niestety, istnieje tylko kilka odtwarzaczy video, pomijając
<application>MPlayera</application>, które obsługują tę cechę MPEG-4.
</para>

<para>
Możliwość ta może być jedynie używana z kodekiem <systemitem>mpeg4</systemitem>
z biblioteki
<systemitem class="library">libavcodec</systemitem>.
Pamiętaj: chociaż <application>MPlayer</application> poprawnie odtworzy
stworzone pliki, inne odtwarzacze mogą użyć złych proporcji obrazu
(aspect ratio).
</para>

<para>
Z pewnością powinieneś wyciąć czarne pasy nad i pod obrazem.
Zobacz jak używać filtrów <systemitem>cropdetect</systemitem>
i <systemitem>crop</systemitem> na stronie man.
</para>

<para>
Sposób użycia:
<screen>
mencoder <replaceable>przykładowy-svcd.mpg</replaceable> -vf crop=714:548:0:14 -oac copy -ovc lavc \
    -lavcopts vcodec=mpeg4:mbd=2:trell:autoaspect -o <replaceable>wyjście.avi</replaceable>
</screen>
</para>
</sect1>

</chapter>