Mercurial > mplayer.hg
view DOCS/xml/pl/mencoder.xml @ 14286:da530c6064a0
Use subopt helper to parse arguments
author | reimar |
---|---|
date | Fri, 31 Dec 2004 14:58:49 +0000 (2004-12-31) |
parents | 6d42484e62bd |
children | 78ae40bba32c |
line wrap: on
line source
<?xml version="1.0" encoding="iso-8859-2"?> <!-- Synced with 1.34 --> <chapter id="mencoder"> <title>Kodowanie z <application>MEncoderem</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-mpeg4"> <title>Kodowanie 2-przebiegowe MPEG-4 ("DivX")</title> <para> Nazwa pochodzi od faktu, �e 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). W drugim przebiegu przy pomocy danych o bitrate'cie z plik�w tymczasowych tworzony jest plik wyj�ciowy 2-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> <title>kopiowanie �cie�ki d�wi�kowej</title> <para> 2-przebiegowe 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 <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>kodowanie �cie�ki dzwi�kowej</title> <para> 2-przebiegowe kodowanie DVD do MPEG-4 ("DivX") AVI z kodowaniem �cie�ki d�wi�kowej do 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>Kodowanie do formatu MPEG</title> <para> <application>MEncoder</application> mo�e tworzy� pliki formatu MPEG (MPEG-PS). Jest to prawdopodobnie u�yteczne tylko z kodekiem <emphasis>mpeg1video</emphasis> pochodz�cym z <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>, poniewa� odtwarzacze - za wyj�tkiem <application>MPlayera</application> - oczekuj� obrazu zakodowanego w MPEG-1 i strumienia d�wi�kowego w MPEG-1 warstwa (layer) 2 (MP2) w pliku MPEG. </para> <para> Mo�liwo倶 ta nie jest zbytnio przydatna w tej chwili, poza tym zawiera prawdopodobnie wiele b滑d�w, ale najwa�niejsze jest to, �e <application>MEncoder</application> w tej chwili nie mo�e kodowa� 2 warstwy MPEG-1 (MP2) audio kt�rej oczekuj� wszystkie odtwarzacze w plikach MPEG. </para> <para> Aby zmieni� wyj�ciowy format plik�w <application>MEncodera</application>, u�yj opcji <option>-of mpeg</option>. </para> <para> Przyk�ad: <screen> mencoder -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video -oac copy <replaceable>inne opcje</replaceable> <replaceable>media.avi </replaceable> -o <replaceable>wyjscie.mpg</replaceable> </screen> </para> </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 ponowne skalowanie 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> Przyk�ad: <screen> mencoder <replaceable>wejscie.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4 -vf scale=640:480 -o <replaceable>wyjscie.avi</replaceable> </screen> </para> </sect1> <sect1 id="menc-feat-streamcopy"> <title>Kopiowanie strumienia</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>): mo�na �adne rzeczy 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. 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 opcji <option>-audiofile <replaceable>nazwa_pliku</replaceable></option> do tego celu. </para></listitem> </itemizedlist> </sect1> <sect1 id="menc-feat-fix-avi"> <title>Naprawianie plik�w AVI ze zniszczonym indeksem lub przeplotem</title> <para> Najprostsza sprawa. Po prostu kopiujemy strumie� audio i video, a <application>MEncoder</application> generuje indeks. Oczywi�cie nie naprawi to mo�liwych b滑d�w w strumieniu video i/lub audio, ale za to, naprawi pliki z zepsutym przeplotem, tak wi�c opcja <option>-ni</option> nie b�dzie tu ju� potrzebna. </para> <para> Komenda: <screen> mencoder -idx <replaceable>wejscie.avi</replaceable> -ovc copy -oac copy -o <replaceable>wyjscie.avi</replaceable><!-- --></screen> </para> <sect2 id="menc-feat-appending"> <title>1cznie wielu plik�w AVI</title> <para> Efektem ubocznym funkcji naprawiania zepsutych plik�w AVI jest mo�liwo�ci 咳czenia 2 (lub wi�cej) plik�w AVI: </para> <para> Komenda: <screen>cat 1.avi 2.avi | mencoder -noidx -ovc copy -oac copy -o <replaceable>wyjscie.avi</replaceable> -</screen> </para> <note><para> Komenda ta oczekuje tego, �eby <filename>1.avi</filename> i <filename>2.avi</filename> u�ywa�y tego samego kodeka, rozdzielczo�ci, szybko�ci strumienia (stream rate), i przynajmniej <filename>1.avi</filename> nie mo�e by� zepsute. Mo�liwe, �e b�dziesz musia� naprawi� pliki wej�ciowe, jak by�o opisane <link linkend="menc-feat-fix-avi">powy�ej</link>. </para></note> </sect2> </sect1> <sect1 id="menc-feat-enc-libavcodec"> <title>Kodowanie przy pomocy rodziny kodek�w <systemitem class="library">libavcodec</systemitem></title> <para> <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link> umo�liwia proste kodowanie do wielu interesuj�cych format�w video i audio. Mo�esz kodowa� do nast�puj�cych kodek�w (mniej lub bardziej aktualne) <informaltable frame="all"> <tgroup cols="2"> <thead> <row><entry>Nazwa kodeka</entry><entry>Opis</entry></row> </thead> <tbody> <row><entry>mjpeg</entry><entry> Ruchomy JPEG </entry></row> <row><entry>ljpeg</entry><entry> Bezstratny JPEG </entry></row> <row><entry>h263</entry><entry> H.263 </entry></row> <row><entry>h263p</entry><entry> H263+ </entry></row> <row><entry>mpeg4</entry><entry> Standard ISO MPEG-4 (DivX 5, XVID kompatybilne) </entry></row> <row><entry>msmpeg4</entry><entry> pierwotny wariant MPEG-4 od MS, v3 (DivX3) </entry></row> <row><entry>msmpeg4v2</entry><entry> pierwotny wariant MPEG-4 od MS, v2 (u�ywany w starych plikach asf) </entry></row> <row><entry>wmv1</entry><entry> Windows Media Video, wersja 1 (WMV7) </entry></row> <row><entry>wmv2</entry><entry> Windows Media Video, wersja 2 (WMV8) </entry></row> <row><entry>rv10</entry><entry> Stary kodek RealVideo </entry></row> <row><entry>mpeg1video</entry><entry> MPEG-1 video </entry></row> <row><entry>mpeg2video</entry><entry> MPEG-2 video </entry></row> <row><entry>huffyuv</entry><entry> bezstratna kompresja </entry></row> <row><entry>asv1</entry><entry> ASUS Video v1 </entry></row> <row><entry>asv2</entry><entry> ASUS Video v2 </entry></row> <row><entry>ffv1</entry><entry> bezstratny kodek video FFmpeg </entry></row> </tbody> </tgroup> </informaltable> Pierwsza kolumna zawiera nazw� kodeka, kt�ra powinna by� podana za opcj� <literal>vcodec</literal>, np: <option>-lavcopts vcodec=msmpeg4</option> </para> <informalexample> <para> Przyk�ad z kompresj� MJPEG: <screen>mencoder dvd://2 -o <replaceable>title2.avi</replaceable> -ovc lavc -lavcopts vcodec=mjpeg -oac copy</screen> </para> </informalexample> </sect1> <sect1 id="menc-feat-enc-images"> <title>Kodowanie z wielu wej�ciowych plik�w obrazkowych (JPEG,PNG lub TGA)</title> <para> <application>MEncoder</application> jest w stanie stworzy� film z jednego lub wielu plik�w JPEG, PNG lub TGA. 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://*.jpg -mf w=800:h=600:fps=25:type=jpg -ovc lavc -lavcopts vcodec=mpeg4 -oac copy -o <replaceable>wyjscie.avi</replaceable> </screen> </para> </informalexample> <informalexample> <para> Tworzenie pliku MPEG-4 z wybranych plik�w JPEG w aktualnym katalogu: <screen> mencoder mf://*.jpg -mf type=jpg:w=800:h=600:fps=25 -ovc copy -oac copy -o <replaceable>wyjscie.avi</replaceable> </screen> </para> </informalexample> <informalexample> <para> Tworzenie pliku Motion JPEG (MJPEG) ze wszystkich plik�w JPEG w aktualnym katalogu: <screen> mencoder -mf on:w=800:h=600:fps=25 -ovc copy -o <replaceable>wyjscie.avi</replaceable> \*.jpg<!-- --></screen> </para> </informalexample> <informalexample> <para> Tworzenie nieskompresowanego pliku ze wszystkich plik�w PNG w aktualnym katalogu: <screen> mencoder -mf on:w=800:h=600:fps=25:type=png -ovc raw -o <replaceable>wyjscie.avi</replaceable> \*.png<!-- --></screen> </para> </informalexample> <note><para> Szeroko�ci 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>wyjscie.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>wyjscie.avi</replaceable><!-- --></screen> </para> </informalexample> </para> </formalpara> </sect1> <sect1 id="menc-feat-extractsub"> <title>Ekstraktowanie 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 z <option>-vobsubout</option> oraz indeks dla tego pliku przez <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�. Wi�c powiniene� je usun掩 przed uruchomieniem. </para> <example> <title>Kopiowanie dw�ch napis�w z DVD podczas 2-przebiegowego kodowania</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>Kopiowanie francuskich napis�w z pliku MPEG</title> <screen> rm napisy.idx napisy.sub mencoder <replaceable>film.mpg</replaceable> -ifo <replaceable>film.ifo</replaceable> -vobsubout napisy -vobsuboutindex 0 -vobsuboutid fr -sid 1<!-- --></screen> </example> </sect1> <sect1 id="aspect"> <title>Utrzymywanie proporcji obrazu (aspect ratio)</title> <para> Pliki DVD i SVCD (tzn. MPEG-1/2) zawieraj� warto倶 proporcji obrazu, kt�ra opisuje, jak odtwarzacz ma skalowa� strumie� video, wi�c ludzie nie b�d� si� m�czy� (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, nie ma <emphasis role="bold">�adnych</emphasis> odtwarzaczy video kt�re by to wykorzystywa�y, opr�cz <application>MPlayera</application>. </para> <para> Mo�liwo倶 ta mo�e by� jedynie u�ywana z kodekiem <systemitem>mpeg4</systemitem> z biblioteki <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>. Pami�taj: chocia� <application>MPlayer</application> poprawnie odtworzy stworzone pliki, inne odtwarzacze u�yj� 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�ad-svcd.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4:autoaspect -vf crop=714:548:0:14 -oac copy -o <replaceable>wyjscie.avi</replaceable> </screen> </para> </sect1> <sect1 id="custommatrices"><title>Dowolne inter/intra matryce</title> <para> Ta cecha <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link> pozwala ustawi� dowolne inter (I-ramki/ramki kluczowe) i intra (P-ramki/predicted frames) matryce. Funkcja ta jest obs�ugiwana przez wiele kodek�w: <systemitem>mpeg1video</systemitem> i <systemitem>mpeg2video</systemitem> zg�aszane s� jako dzia�aj�ce. </para> <para> Typowy spos�b u�ycia tej opcji to ustawienie matrycy na specyfikacje preferowane przez <ulink url="http://www.kvcd.net/">KVCD</ulink>. </para> <para> <emphasis role="bold">Matryca Kwantyzacji KVCD "Notch":</emphasis> </para> <para> Intra: <screen> 8 9 12 22 26 27 29 34 9 10 14 26 27 29 34 37 12 14 18 27 29 34 37 38 22 26 27 31 36 37 38 40 26 27 29 36 39 38 40 48 27 29 34 37 38 40 48 58 29 34 37 38 40 48 58 69 34 37 38 40 48 58 69 79 </screen> Inter: <screen> 16 18 20 22 24 26 28 30 18 20 22 24 26 28 30 32 20 22 24 26 28 30 32 34 22 24 26 30 32 32 34 36 24 26 28 32 34 34 36 38 26 28 30 32 34 36 38 40 28 30 32 34 36 38 42 42 30 32 34 36 38 40 42 44 </screen> </para> <para> Spos�b u�ycia: <screen> $ mencoder <replaceable>wejscie.avi</replaceable> -o <replaceable>wyjscie.avi</replaceable> -oac copy -ovc lavc -lavcopts inter_matrix=...:intra_matrix=... </screen> </para> <para> <screen> $ mencoder <replaceable>wejscie.avi</replaceable> -ovc lavc -lavcopts vcodec=mpeg2video:intra_matrix=8,9,12,22,26,27,29,34,9,10,14,26,27,29,34,37, 12,14,18,27,29,34,37,38,22,26,27,31,36,37,38,40,26,27,29,36,39,38,40,48,27, 29,34,37,38,40,48,58,29,34,37,38,40,48,58,69,34,37,38,40,48,58,69,79 :inter_matrix=16,18,20,22,24,26,28,30,18,20,22,24,26,28,30,32,20,22,24,26, 28,30,32,34,22,24,26,30,32,32,34,36,24,26,28,32,34,34,36,38,26,28,30,32,34, 36,38,40,28,30,32,34,36,38,42,42,30,32,34,36,38,40,42,44 -oac copy -o svcd.mpg </screen> </para> </sect1> <sect1 id="menc-feat-dvd-mpeg4"> <title>Rippowanie DVD do wysokiej jako�ci pliku MPEG-4 ("DivX")</title> <para> Jednym z najcz�sciej zadawanych pyta� jest "Jak zripowa� DVD do najwy�szej osi�galnej jako�ci? Nie interesuje mnie rozmiar pliku, chc� tylko najwy�sz� jako倶". </para> <para> To jest co najmniej �le sformu�owane. W ko�cu je�eli nie obchodzi Ci� rozmiar pliku, to czemu nie skopiowa� po prostu ca�ego strumienia video MPEG-2 z DVD? Pewnie, plik b�dzie mia� 5GB, jak chcesz to nie pakuj si� w to, ale je�eli chcesz najwy�szej jako�ci i nie martwi Ci� rozmiar pliku, to jest na pewno najlepsze rozwi�zanie. </para> <para> Tak na prawd�, powodem dla kt�rego chcesz przekodowa� DVD do pliku MPEG-4 jest w�a�nie to, �e <emphasis role="bold">zale�y</emphasis> Ci na rozmiarze pliku. </para> <para> Trudno jest poda� przepis krok-po-kroku jak stworzy� wysokiej jako�ci ripa DVD. Trzeba uwzgl�dni� kilka czynnik�w, musisz je zrozumie� �eby by� zadowolonym z rezultat�w jakie osi�gniesz. Poni�ej zbadamy kilka z tych czynnik�w i spojrzymy na przyk�ady. Zak�adamy, �e korzystasz z <systemitem class="library">libavcodec</systemitem> do kodowania video, teorii jednak mo�na u�ywa� przy innych kodekach. </para> <para> G鞄wnym za�o�eniem tego przewodnika jest to, i� nie masz konkretnego docelowego rozmiaru pliku i nie masz problemu w oddaniu kilku bit�w w zamian za popraw� jako�ci. Wiele informacji tutaj zawartych jest przydatnych w ka�dej sytuacji, ale niekt�re mog� dzia�a� na Twoj� niekorzy倶 je�eli masz obrany cel w postaci wielko�ci pliku wynikowego, na przyk�ad zmieszczeniu video na CD. </para> <sect2 id="menc-feat-dvd-mpeg4-2pass"> <title>Sta�y Kwantyzator vs. 2-przebiegowe</title> <para> Istniej� trzy podej�cia do kodowania video: sta�y bitrate (CBR), sta�y kwantyzator i kodowanie 2-przebiegowe (ABR, u�redniony bitrate). </para> <para> W ka�dym z tych tryb�w, <systemitem class="library">libavcodec</systemitem> rozbija ramke na makroblok 16x16 pikseli i aplikuje kwantyzator do ka�dego makrobloku Im ni�szy kwantyzator, tym lepsza jako倶 i wy�szy bitrate. Metoda jak� u�ywa <systemitem class="library">libavcodec</systemitem> do zdeterminowania jaki kwantyzator u�y� do danego makrobloku zale�y od wielu czynnik�w i jest �atwo zmienialna. (Jest to bardzo og�lny opis prawdziwego procesu, ale warto rozumie� podstawowy koncept.) </para> <para> Kiedy ustawisz sta�y bitrate, <systemitem class="library">libavcodec</systemitem> zakoduje video, niszcz�c najmniejsz� ilo倶 detali jaka jest potrzebna �eby pozosta� poni�ej wyznaczonej warto�ci bitrate. Je�eli naprawd� nie zale�y Ci na rozmiarze pliku m�g�by� u�y� CBR i ustawi� bitrate na niesko�czono倶. (W praktyce oznacza to liczb� tak wysok� aby nie stawia�a �adnego limitu, np. 10000Kbit.). Bez prawdziwych ogranicze� <systemitem class="library">libavcodec</systemitem> u�yje dla ka�dego makrobloku mo�liwie najni�szego kwantyzatora (zapisanego w zmiennej <option>vqmin</option>, kt�ra domy�lnie jest ustawiona na 2). Gdy tylko ustawisz ni�szy bitrate <systemitem class="library">libavcodec</systemitem> b�dzie zmuszony do u�ycia wy�szego kwantyzatora, a wi�c i pogorszenia jako�ci video. Og�lnie, je�eli zale�y Ci na jako�ci wog�le nie powiniene� u�ywa� CBR. </para> <para> Ze sta�ym kwantyzatorem, <systemitem class="library">libavcodec</systemitem> u�ywa kwantyzatora ustawionego przez opcj� <option>vqscale</option> na ka�dym makrobloku. Je�eli chcesz najwy�szej mo�liwej jako�ci, igonruj�c bitrate, mo�esz u�y� <option>vqscale=2</option>. B�dzie to mia�o taki sam efekt jak ustawienie <option>vbitrate</option>=niesko�czono倶 i domy�lnie <option>vqmin</option> na 2 przy CBR. </para> <para> Problemem przy sta�ym kwantyzowaniu jest to, i� u�ywa on danego kwantyzatora czy makroblok potrzebuje go czy nie. To znaczy �e mo�na by�oby u�y� wy�szego kwantyzatora bez starty jako�ci obrazu. Po co traci� miejsce na niepotrzebnie niski kwantyzator? Tw�j procesor ma tyle cykli ile jest czasu, ale na twardym dysku jest ograniczona ilos� miejsca. </para> <para> W dwu-przebiegowym kodowaniu, pierwszy przebieg zripuje film ze sta�ym bitratem (CBR), ale stworzy plik loguj�cy w�a�ciwo�ci ka�dej ramki. Te informacje s� u�ywane podczas drugiego przebiegu i na ich podstawie dobierany jest odpowiedni kwantyzator. Podczas szybkiej akcji lub scen z ma咳 ilo�ci� detali, b�dzie u�yty wysoki kwantyzator, a podczas wolnego ruchu lub scen z wieloma detalami ni�szy. </para> <para> Je�eli u�ywasz <option>vqscale=2</option>, to tracisz miejsce. Je�eli u�ywasz <option>vqscale=3</option>, to nie dostaniesz najwy�szej jako�ci. Przypu倶my, �e ripujesz DVD z opcj� <option>vqscale=3</option>, a rezultatem jest 1800Kbit. Je�eli zastosujesz dwu-przebiegowe kodowanie z <option>vbitrate=1800</option>, wyj�ciowe video b�dzie mia�o <emphasis role="bold">wy�sz� jako倶</emphasis> dla <emphasis role="bold">tej samej warto�ci bitrate</emphasis>. </para> <para> Poniewa� jeste� ju� przekonany, �e dwu-przbiegowe kodowanie jest najlepszym rozwi�zaniem, prawdziwym pytaniem jest jakiej u�y� warto�ci bitrate? Nie ma jednoznacznej odpowiedzi. Idealna warto倶 jest najlepszym balansem mi�dzy jako�ci� a rozmiarem pliku. Zmienia si� ona zale�nie od �r�d�owego video. </para> <para> Dobrym punktem startowym dla wysokiej jako�ci rip�w jest 2000Kbit plus minus 200Kbit. Przy szybkiej akcji, wielu detalach lub poprostu gdy masz wysokie wymagania, mo�esz zdecydowa� si� na 2400 lub 2600. Przy niekt�rych DVD, mo�esz nie zauwa�y� r鷽nicy przy 1400KBit. Najlepiej jest troszk� poeksperymentowa� przy r鷽nych warto�ciach bitrate. </para> </sect2> <sect2 id="menc-feat-dvd-mpeg4-crop"> <title>Kadrowanie i Skalowanie</title> <para> Normalne DVD ma rozdzielczo倶 720x480 dla NTSC i 720x576 dla PAL, ale jest jeszcze flaga m�wi�ca czy jest to obraz pe�no ekranowy (4:3), czy panoramiczny (16:9). Wiele (je�eli nie wszystkie) panoramiczne DVD nie s� dok�adnie 16:9, tylko 1.85:1 lub 2.35:1 (kineskop). Oznacza to i� pojawi� si� czarne pasy kt�r� b�d� musia�y by� wykadrowane. </para> <para> W tym miejscu pojawia si� <application>MPlayer</application> posiadaj�cy opcj� ustalaj�c� prostok�t kadrowania (<option>-vf cropdetect</option>). Poniewa� MPEG-4 u�ywa makroblok�w 16x16, b�dziesz chcia� aby ka�dy wymiar obrazu by� wielokrotno�ci� 16, w innym wypadku pogorszy si� jako倶 szczeg�lnie przy niskich warto�ciach bitrate. Mo�esz osi�gn掩 to zaokr�glaj�c prostok�t kadrowania do najbli�szej wielokrotno�ci 16. Przy kadrowaniu b�dziesz chcia� zwi�kszy� przesuni�cie w osi y o po�ow� r鷽nicy mi�dzy star� a now� warto�ci� tak aby obraz brany by� z �rodka ramki. Z powodu sposobu w jaki obraz jest pr�bkowany na DVD musi to by� przysta liczba. (Tak naprawd� nigdy nie u�ywaj nieparzystych warto�ci przy kadrowaniu ani skalowaniu.) Je�eli nie chcesz wyrzuca� kilku pikseli, mo�e wolisz zeskalowa� obraz. Przyjrzyjmy sie skalowaniu w naszym nast�pnym przyk�adzie. </para> <para> Uwa�aj te� na "mi�kkie" czarne piksele na brzegach. Wykadruj je te�, bo inaczej b�dziesz traci� bity kt�r� zostan� wykorzystane lepiej gdzie indziej. </para> <para> Po wszytskim, dostaniesz najprawdopodobniej video kt�rego piksele nie s� raczej ani 1.85:1 czy 2.35:1, tylko co� w pobli�u. M�g�by� policzy� nowe proporcje obrazu r�cznie, ale <application>MEncoder</application> oferuje opcj� biblioteki <systemitem class="library">libavcodec</systemitem> o nazwie <option>autoaspect</option> kt�ra zrobi to za Ciebie. W �adnym wypadku nie skaluj pikseli w celu zrobienia z nich kwadrat�w, chyba �e lubisz traci� miejsce na twardym dysku. Skalowanie powinno odbywa� si� przy odtwarzaniu, a odtwarzacz u�yje proporcji zapisanych w nag鞄wku AVI, aby zdeterminowa� prawid�ow� rozdzielczo倶. </para> </sect2> <sect2 id="menc-feat-dvd-mpeg4-quality"> <title>Audio</title> <para> D�wi�k jest o wiele prostszym problemem do rozwi�zania.: zostaw go poprostu takim jakim jest. Nawet strumienie AC3 5.1 s� najwy�ej 448Kbit/s i s� one warte ka�dego bitu. Kusz�ce mo�e wydawa� si� zakodowanie d�wi�ku do wysokiej jako�ci Ogg Vorbis, ale to �e nie posiadasz dzisiaj odbiornika A/V do AC3 nie oznacza �e nie b�dziesz go mia� jutro. Zabezpiecz swoje ripy DVD zostawiaj�c im strumie� AC3. </para> </sect2> <sect2 id="menc-feat-dvd-mpeg4-interlacing"> <title>Przeplot i Telecine</title> <para> Prawie wszytskie filmy kr�cone s� z pr�dko�ci� 24 fps. Poniewa� NTSC jest 29.97 fps, obraz 24 fps trzeba podda� dzia�aniu kilku proces�w aby m�g� by� on odtwarzany na szybko�ci NTSC. Proces ten nazywa si� 3:2 pulldown, cz�sto wi�zany z telecine (poniewa� pulldown jest cz�sto stosowany podczas procesu telecine), i naiwnie opisywany jako i� dzia�a on przez zwalnianie filmu do 23.976 fps, i powtarzaniu co czwartej ramki. </para> <para> Video w formacie PAL z DVD, o pr�dko倶 25 fps nie jest poddawane �adnym specjalnym procesom. (Praktcznie, PAL mo�e zosta� poddany procesowi telcine, nazywanemu 2:2 pulldown, ale w praktyce to nie jest problemem.) Film 24 fps jest poprostu odtwarzany z pr�dko�ci� 25 fps. W efekcie film leci troch� szybciej ale je�eli nie jeste� kosmit� pewnie nie zauwa�ysz r鷽nicy. Wi�kszo倶 DVD w PALu posiada poprawiony d�wi�k, wi�c nawet przy odtwarzaniu z pr�dko�ci� 25 fps b�dzie on brzmia� poprawnie, pomimo tego, i� �cie�ka d�wi�kowa (a wiec i ca�y film) jest odtwarzana 4% czasu kr�cej ni� NTSC DVD. </para> <para> Poniewa� video w PAL DVD nie zosta�o zmienione, nie musisz martwi� si� o tempo odtwarzania. �r�d�o jest 25 fps i Twoj rip b�dzie 25 fps. Jednak�e, je�eli ripujesz NTSC DVD, mo�liwe �e b�dziesz musia� zastosowa� odwr�cone telecine. </para> <para> W filmach nakr�conych w pr�dko�ci 24 fps, video na NTSC DVD jest albo ztelecinowane do 29.97 fps lub progresywne 24 fps i przeznaczone to telecine kt�re ma zosta� wykonane w locie przez odtwarzacz DVD. Z drugiej strony, seriale telewizyjne s� zazwyczaj tylko przeplecione, nie ztelecionowane. Jednak�e nie jest to regu咳: niekt�re seriale TV s� przeplecione (jak Buffy Postrach Wampir�w), a niekt�re s� mikstur� progresywnego i przeplecionego video (jak Angel, lub 24 godziny). </para> <para> Szczeg�lnie polecamy do przeczytania sekcje o tym <link linkend="menc-feat-telecine">Jak sobie radzi� z telecine i przeplotem w DVD w formacie NTSC</link>. </para> <para> Je�eli, ripujesz tylko filmy, najprawdopodobniej musisz radzi� sobie tylko z obrazem 24 fps progresywnym lub telecine. W takiej sytuacji mo�esz u�y� fitru <option>pullup</option> (<option>-vf pullup,softskip</option>). </para> </sect2> <sect2 id="menc-feat-dvd-mpeg4-filtering"> <title>Filtrowanie</title> <para> Og�lnie, chcesz filtrowa� jak najmniej aby pozosta� najbli�ej jak si� da do �r�d�owego DVD. Kadrowanie jest zazwyczaj niezb�dne (opisane powy�ej), ale nie skaluj obrazu. Skalowanie w d鶻 jest czasami preferowane zamiast wysokich kwantyzator�w, chcemy unikn掩 obu tych rzeczy: pami�taj co ustalili�my na pocz�tkum, �e chcemy wymiena� bity na jako倶. </para> <para> R�wnie� nie zmieniaj warto倶i gamma, kontrastu, jasno�ci, itd. To co wygl�da dobrze na Twoim monitorze, mo�e nie wygl�da� dobrze na innych. Te ustawienia powinny by� realizowane tylko przy odtwarzaniu. </para> <para> Jedn� rzecz� kt�r� m�g�by� chcie� zrobi� jest przepuszczenie obrazu przez lekki odszumiaj�cy filtr, tak jak np. <option>-vf hqdn3d=2:1:2</option>. Zn�w, jest to sprawa lepszego spo�ytkowania miejsca: po co traci� je na kodowanie szum�w je�eli mo�esz doda� je podczas odtwarzania? Zwi�kszenie parametr�w <option>hqdn3d</option> zwi�kszy mo�liwo�ci kompresji, ale je�eli zwi�kszysz parametry za bardzo ryzykujesz utrat� klarowno�ci obrazu. Sugerowane powy�ej warto�ci (<option>2:1:2</option>) s� do倶 zachowawcze; spr�buj poeksperymentowa� z wy�szmi warto�ciami i samemu por�wna� efekty. </para> </sect2> <sect2 id="menc-feat-dvd-mpeg4-example"> <title>Przyk�ad</title> <para> Kupi�e� wie� nowiutk� kopi� Harrego Pottera i Komnaty Tajemnic (oczywi�cie wersj� panoramiczn�) i chcesz zripowa� to DVD aby doda� j� do swojego komputerowego kina domowego. Jest to DVD z regionu 1, a wi�c NTSC. Poni�szy przyk�ad b�dzie dzia�a� z fomratem PAL je�eli pomiesz opcj� <option>-ofps 23.976</option> (poniewa� wej�ciowa szybko倶 jest taka sama jak wyj�ciowa), oczywi�cie paramtery kadrowania b�d� inne. </para> <para> Po uruchomieniu <option>mplayer dvd://1</option>, pod運amy opisem zawartym w sekcji <link linkend="menc-feat-telecine">Jak sobie radzi� z telecine i przeplotem w DVD w formacie NTSC</link> i odkrywamy, �e jest to progresywne video 24 fps, co oznacza �e nie musimy u�ywa� filtr�w odwr�conego telecine, jak <option>pullup</option> czy <option>filmdint</option>. </para> <para> Nast�pnie, chcemy zdeterminowa� odpowiedni prostok�t kadrowania, u�ywamy fitru cropdetect: <screen>mplayer dvd://1 -vf cropdetect</screen> Przewni� do w pe�ni wype�nionej ramki (jasna scena), i zobaczysz wyj�cie <application>MPlayer</application>a na konsoli: <screen>crop area: X: 0..719 Y: 57..419 (-vf crop=720:362:0:58)</screen> Teraz odtwarzamy film z tym fitrem aby sprawdzi� jego poprawno倶: <screen>mplayer dvd://1 -vf crop=720:362:0:58</screen> I widzimy �e wygl�da �wietnie. Teraz, upewniamy sie �e wymiary �a wielokrotno�ci� 16 . Szeroko倶 jest w porz�dku, niestety wysoko倶 nie. Poniewa� nie oblali�my matematyki w liceum, wiemy �e najbli�sz� wielokrotno�cia 16 mniejsz� ni� 362 jest 352. </para> <para> Mogliby�my poprostu u�y� <option>crop=720:352:0:58</option>, ale �adniej by�oby wzi掩 troch� z g�ry i z do�u aby utrzyma� si� na �rodku. Zmneijszylismy wysoko倶 o 10 pikseli, ale nie chcemy zwi�kszy� przesuni�cia y o 5 pikseli poniewa� jest to liczba nieparzysta i pogorszy�aby jako倶. Zwi�kszymy zatem przesuni�cie na osi y o 4 piksele: <screen>mplayer dvd://1 -vf crop=720:352:0:62</screen> Innym powodem dla kt�rego powinni�my obcina� piksele r�wnomiernie z g�ry i do�u s� "po�owy czarnych pikseli" kt�re bezwzgl�dnie powinni�my obci掩 je�eli istniej�. Pami�taj, je�eli Twoje video jest ztelecinowane, upewnij si� �e filtr <option>pullup</option> (lub inny filtr odwr�conego telecine kt�ry zdecydujesz si� u�y�) pojawia si� w �a�cuchu fitr�w przed fitrem kadrowania. Je�eli video posiada przeplot, usu� go przed kadrowaniem. (Je�eli zdecydujesz si� pozostawi� przeplot, upewnij si� �e wertykalne przesuni�cie kadrowania jest wielokrotno�ci� 4.) </para> <para> Je�eli naprawd� jeste� przej�ty utrat� tych 10 pikseli, mo�e wolisz przeskalowa� wymiary obrazu do najbli�szej wielkortono�ci 16. �a�cuch fitr�w powinen wygl�da� tak: <screen>-vf crop=720:362:0:58,scale=720:352</screen> Skalowanie video w d鶻 oznacza utrat� ma�ej ilo�ci detali, kt�ra b�dzie najprawdopodobnie niezauwa�alna. Skalowanie w g�re oznacza utrat� jako�ci (chyba �e zwi�kszysz bitrate). Kadrowanie wyrzuca te piksele. Jest to wymiana jak� trzeba rozwa�y� w ka�dym wypadku. Na przyk咳d, je�eli DVD by�o zrobione dla telewizji, mo�esz chcie� unikn掩 wertykalnego skalowania, poniewa� zestawienie linii odpowiada temu jak obraz by� oryginalnie nagrywany. </para> <para> Przy insepkcji widzimy �e nasz film ma du�o akcji i szczeg鶻�w, wybieramy wi�c 2400Kbit na nasze bitrate. </para> <para> Jeste�my gotowi do 2-przebiegowego kodowania. Przebieg 1: <screen>mencoder dvd://1 -ofps 23.976 -oac copy -vf crop=720:352:0:62,hqdn3d=2:1:2 -ovc lavc \ -lavcopts vcodec=mpeg4:vbitrate=2400:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:autoaspect:vpass=1 \ -o Harry_Potter_2.avi</screen> Drugi przebieg jest taki sam, podajemy tylko opcj� <option>vpass=2</option>: <screen>mencoder dvd://1 -ofps 23.976 -oac copy -vf crop=720:352:0:62,hqdn3d=2:1:2 -ovc lavc \ -lavcopts vcodec=mpeg4:vbitrate=2400:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:autoaspect:vpass=2 \ -o Harry_Potter_2.avi</screen> </para> <para> Opcje <option>v4mv:mbd=2:trell</option> ogromnie poprawi� jako倶 za cen� czasu kodowania. Opcje <option>cmp=3:subcmp=3:mbcmp=3</option> wybieraj� funkcje por�wnywania kt�re wybieraj� lepsza jako倶 ni� te domy恭ne. Mo�esz poeksperymentowa� z tymi warto�ciami (skonsultuj stron� man co do prawid�owych warto�ci) poniewa� r鷽ne funkcj� mog� mie� du�y wp�yw na jako倶 zale�nie od matria�u �r�d�owego. Na przyk�ad, je�eli <systemitem class="library">libavcodec</systemitem> produkuje za du�o artefakt�w mo�esz spr�bowa� wybra� eksperymentaln� funkcj� NSSE jako funkcj� por�wnuj�c� przez <option>*cmp=10</option>. </para> <para> Dla tego filmu, ko�cowe AVI b�dzie mia�o 138 minut i prawie 3GB. A poniewa� powiedzia�e� �e rozmiar nie ma znaczenia, to jest akceptowalna wielko倶. Jednak�e, je�elli chcia�by� mniejszy plik, m�g�by� spr�bowa� ni�szy bitrate. Zwi�kszanie warto�ci bitrate daje malej�ce rezultaty, wi�c je�eli wida� wyra�n� r鷦nic� mi�dzy 1800Kbit, a 2000Kbit, to nie znaczy �e b�dzie lepiej powy�ej 2000Kbit. Ekperymentuj a� b�dziesz zadowolony. </para> <para> Poniewa� przepu�cili�my �r�d�owy obraz przez filtr odszumiaj�cy, mo�esz chcie� doda� go troch� podczas odtwarzania. To razem z fitrem postprocessingu <option>spp</option>, drastycznie poprawia odbi�r obrazu i pomaga wyeliminowa� artefakty. W <application>MPlayer</application>ze dost�pna jest opcja <option>autoq</option>. W tym momencie mo�esz r�wnie� poprawi� gamm� lub/i korekcj� kolor�w. Na przyk�ad: <screen>mplayer Harry_Potter_2.avi -vf spp,noise=9ah:5ah,eq2=1.2 -autoq 3</screen> </para> </sect2> </sect1> <sect1 id="menc-feat-telecine"> <title>Jak radzi� sobie telecine i przeplotem w NTSC DVD</title> <formalpara> <title>Wprowadzenie</title> <para> Radz� aby� odwiedzi� poni�sz� stron� je�eli nie za bardzo rozumiesz co jest napisane w tym dokumencie: <ulink url="http://www.divx.com/support/guides/guide.php?gid=10">http://www.divx.com/support/guides/guide.php?gid=10</ulink> Ten URL prowadzi do zrozumia�ego i rozs�dnej wielko�ci przewodnika traktuj�cego o tym czym jest telecine. </para></formalpara> <para> Z przyczyn technicznych odnosz�cych si� do wczesnych urz�dze� telwizyjnych, ka�de video kt�re mia�o by� odtwarzane na telewizorze NTSC musia�o by� ustawione na 59,94 pola na sekund�. Filmy i programy nagrane dla telewizji s� najcz蟠ciej ograniczone bezpo�rednio do 59,94 p�l na sekund�, ale wi�kszo倶 film�w kinowych jest nagrywanych w 24 lub 23,976 klatkach na sekund�. Kiedy DVD z kinowym filmem jest odtwarzane, video jest konwertowane dla telewizji przy pomocy procesu nazywanego telecine. </para> <para> Obraz na DVD, tak naprawd� nigdy nie jest przechowywany jako 59,94 p�l na sekund�. Dla obrazu kt�ry oryginalnie by� 59,94, ka�da para p�l jest 咳czona w ramk�, co daje rezultat 29,97 ramek na sekund�. Sprz�towe odtwarzacze DVD odczytuj� flag� osadzon� w strumieniu video aby okre�li� czy parzyste czy nieparzyste linie powinny formowa� pierwsze pole. </para> <para> Zazwyczaj, informacja o 23,976 ramkach na sekund� m�wi odtwarzaczowi DVD, �e musi przeprowadzi� telecine w locie. Czasami, jednak, proces telecine na obrazie przeprowadzony jest <emphasis>przed</emphasis> umieszczeniem go na DVD; Nawet je�eli by� on nagrany jako 23,976 ramek na sekund�, staje si� on 59,94 pola na sekund� i jest przechowywany na dysku jako 29,97 ramek na sekund�. </para> <para> Patrz�c na indywidualne ramki uformowane z ztelecinowanego obrazu 59,94 p�l na sekund�, przeplot jest wyra�nie widoczny przy ruchu, poniewa� jedno pole (powiedzmy parzyste linie) reprezentuj� moment w czasie o 1/59,94 sekundy p鷦niej ni� pozosta�e. Odtwarzanie video z przeplotem na komputerze wygl�da ohydnie, z dw�ch przyczyn, poniewa� monitor jest wi�kszej rozdzielczo�ci i obraz jest wy�wietlany ramka-po-ramce zamiast pole-po-polu. </para> <para> Notki: </para> <itemizedlist> <listitem><para> Ta sekcja odnosi si� tylko do NTSC DVD, nie do PAL. </para></listitem> <listitem><para> Przyk�adowe komendy <application>MEncodera</application> w tym dokumencie <emphasis role="bold">nie</emphasis> s� przeznaczone do prawdziwego u�ycia. S� one po prostu minimum do kodowania danej kategorii video. Jak zrobi� dobre ripy DVD lub precyzyjnie-ustawi� <systemitem class="library">libavcodec</systemitem> dla najlepszej jako�ci nie s� zagadnieniami dla tego tego dokumentu. </para></listitem> <listitem><para> Jest kilka przypis�w do tego dokumentu, zaznaczonych tak: <link linkend="menc-feat-telecine-footnotes">[1]</link> </para></listitem> </itemizedlist> <sect2 id="menc-feat-telecine-ident"> <title>Jak ustali� jaki typ video masz</title> <sect3 id="menc-feat-telecine-ident-progressive"> <title>Progresywny</title> <para> Progresywne video by�o oryginalnie filmowane przy 23.976 fps (ramek na sekund� - przyp. t�um.), i przechowywane na DVD bez zmian. </para> <para> Kiedy odtwarzasz progresywne DVD w <application>MPlayerze</application>, <application>MPlayer</application> wy�wietli nastepuj�cy wiersz zaraz gdy film zacznie by� odtwarzany: <screen> demux_mpg: 24fps progressive NTSC content detected, switching framerate.</screen> Od tego momentu, demux_mpg niepowinien nigdy powiedzie� i� znalaz� "30fps NTSC content." </para> <para> Kiedy ogl�dasz progresywne video, nie powiniene� zauwa�y� �adnego przeplotu. B�d� jednak czujny poniewa� jest tam czasami wmiksowany ma�y kawa�ek telecine, tam gdzie si� go nie spodziewasz. Napotka�em DVD z programami telewizyjnymi w kt�rych przy ka�dej zmianie sceny i w losowych miejscach by�a jedna sekunda telecine. Raz ogl�da�em DVD kt�ry mia� jedn� po�ow� progresywn�, a drug� ztelecinowan�. Je�eli chcesz by� <emphasis>naprawd�</emphasis> pewny, mo�esz przeskanowa� ca�y film: <screen>mplayer dvd://1 -nosound -vo null -benchmark</screen> U�ycie opcji <option>-benchmark</option> przekazuje <application>MPlayerowi</application> aby odtwarza� film tak szybko jak tylko mo�e; ci�gle jednak, jako �e jest zale�ny od Twojego sprz�tu mo�e to zaj�c troch� czasu. Za ka�dym razem demux_mpg zg�asza zmian� liczby ramek na sekund�, pierwsza linia nad poka�e czas w kt�rym nast�pi�a ta zmiana. </para> <para> Progresywne video jest czasami nazywane "mi�kkie-telecine" poniewa� jest ono stworzone aby odtwarzac DVD wykona� na nim proces telecine. </para> </sect3> <sect3 id="menc-feat-telecine-ident-telecined"> <title>Ztelecinowany</title> <para> Obraz "ztelecinowany" by� oryginalnie sfilmowany jako 23,976, ale zosta� poddany procesowi telecine <emphasis>przed</emphasis> zapisaniem go na p�ycie DVD. </para> <para> <application>MPlayer</application> (nigdy) nie zwraca �adnych zmian ilo�ci ramek na sekund� kiedy odtwarza ztelecinowane video. </para> <para> Podczas ogl�dania video poddanego procesowi telecine, zobaczysz artefakty przeplotu kt�re wydaj� si� "miga�": szybko pojawiaj� si� i znikaj�. Mo�esz si� im bli�ej przyjrze� wpisuj�c <orderedlist> <listitem> <screen>mplayer dvd://1 -speed 0.1</screen> </listitem> <listitem><para> Przewi� na dynamiczne sceny. </para></listitem> <listitem><para> Popatrz na wz�r przeploto-wygl�daj�cych i progresywnie-wygl�daj�cych ramek. Je�eli wz�r kt�ry widzisz wyg�da jak PPPII,PPPII,PPPII,... wtedy video ztelecinowane. Je�eli widzisz inny wz�r, wtedy mo�liwe jest �e video zosta�o niestandartowo poddane procesowi telecine i <application>MEncoder</application> nie mo�e bezstratnie przekonwertowa� go do progresywnego video. Je�eli nie widzisz �adnego wzoru, wtedy najprawdopodobniej video zawiera tylko przeplot. </para></listitem> </orderedlist> </para> <para> Czasami video poddane procesowi telecine nazywane jest "twarde-telecine". </para> </sect3> <sect3 id="menc-feat-telecine-ident-interlaced"> <title>Przepleciony</title> <para> Przeplecione video by�o oryginalnie sfilmowane jako 59,94 p�l na sekund� i przechowywane na DVD jako 29,97 fps. Przeplot to rezultat po咳czenia par p�l w ramk�, poniewa� w ka�dej ramce, ka�de pole jest oddzielone o 1/59,94 sekundy. </para> <para> Tak jak przy ztelecinowanym video, podczas odtwarzania filmu z przeplotem <application>MPlayer</application> nigdy nie powinien powiadamia� o zmianie ilo�ci ramek na sekund�. </para> <para> Kiedy z bliska ogl�dasz przeplecione video z <option>-speed 0.1</option> zobaczysz, i� ka�da pojedy�cza klatka jest przepleciona. </para> </sect3> <sect3 id="menc-feat-telecine-ident-mixedpt"> <title>Mieszane progresywne i telecine</title> <para> Wszystkie "wymieszane progresywne i telecine" video by�y oryginalnie nagrane jako 23.976 ramek na sekund�, ale niekt�re cz蟠ci sko�czy�y jako ztelecinowane. </para> <para> Kiedy <application>MPlayer</application> odtwarza t� kategori�, b�dzie on (zazwyczaj bardzo szybko) prze咳cza� si� tam i z powrotem mi�dzy "30fps NTSC" i "24fps progresywne NTSC". Przyjrzyj si� wyj�ciu <application>MPlayera</application> (na konsoli - przyp. tlum.) aby zobaczy� te wiadomo�ci. </para> <para> Powiniene� przyjrze� si� sekcji "30fps NTSC" aby upewni� si� czy s� one na pewno telecine a nie tylko przeplecione. </para> </sect3> <sect3 id="menc-feat-telecine-ident-mixedpi"> <title>Mieszane progresywne i telecine</title> <para> W "mieszanej progresywnej i przeplecionej" zawarto�ci, progresywne i przeplecione video zosta�o po咳czone razem. </para> <para> Ta kategoria wygl�da zupe�nie jak "mieszane progresywne i telecine", do momentu kiedy przyjrzysz si� fragmentom 30fps i zobaczysz i� nie maja one wzoru telecine. </para> </sect3> </sect2> <sect2 id="menc-feat-telecine-encode"> <title>Jak zakodowa� ka�d� kategori�</title> <para> Jak ju� wspomnia�em na pocz�tku, przyk�adowe polecenia <application>MEncodera</application> poni�ej <emphasis role="bold">nie</emphasis> s� przewidziane do rzeczywistego u�ycia; demonstruj� one tylko minimalne parametry potrzebne do prawid�owego zakodowanie danej kategorii. </para> <sect3 id="menc-feat-telecine-encode-progressive"> <title>Progresywne</title> <para> Progresywne video nie wymaga �adnego specjalnego filtrowania do kodowania. Jedynym koniecznym paramterem jaki musisz u�y� jest <option>-ofps 23.976</option>. Inaczej, <application>MEncoder</application> b�dzie pr�bowa� kodowa� przy pr�dko�ci 29,97 i duplikowa� ramki. </para> <para> <screen>mencoder dvd://1 -nosound -ovc lavc -ofps 23.976</screen> </para> </sect3> <sect3 id="menc-feat-telecine-encode-telecined"> <title>Ztelecinowane</title> <para> Proces telecine mo�e zosta� odwr�cony, aby odzyska� oryginaln� zawarto倶 23,976, przy u�yciu metody o nazwie odwr�cone-telecine. <application>MPlayer</application> zawiera dwa filtry kt�re s� w stanie dokona� tego: <option>detc</option> i <option>ivtc</option>. Mo�esz przeczyta� stron� man aby dowiedzie� si� co je r鷽ni, ale je�eli chodzi o DVD to nigdy nie mia�em problemu z <option>ivtc</option>. Pami�taj, �e przed przeskalowywaniem powiniene� <emphasis role="bold">zawsze</emphasis> odwr�ci� telecine; odwr黽 telecine tak�e przed cropowaniem, chyba �e naprawd� wiesz co robisz <link linkend="menc-feat-telecine-footnotes">[1]</link>. </para> <para> <screen>mencoder dvd://1 -nosound -vf ivtc=1 -ovc lavc -ofps 23.976</screen> </para> </sect3> <sect3 id="menc-feat-telecine-encode-interlaced"> <title>Przeplecione</title> <para> Dla wi�kszo�ci praktycznych przypadk�w nie jest mo�liwe ca�kowite odzyskanie progresywnego video z przeplecionej zawarto�ci. Jedynym sposobem bez gubienia po�owy pionowej rozdzielczo�ci jest podwojenie ilo�ci ramek na sekund� i "zgadni�cie" co powinno zast�pi� odpowiadaj�ce linie ka�dego pola (ma to pewne wady - zobacz trzeci� metod�). </para> <orderedlist> <listitem><para> Kodowanie video z przeplotem. Normalnie, przeplot niszczy szanse enkodera na dobre zakodowanie, lecz <systemitem class="library">libavcodec</systemitem> posiada dwie opcje pozwalaj�ce przechowywa� video z przeplotem ciut lepiej: <option> ildct</option> i <option>ilme</option>. U�ycie <option>mbd=2</option> jest tak�e zalecane <link linkend="menc-feat-telecine-footnotes">[2] </link> poniewa� zakoduje on makrobloki bez przeplotu w miejscach gdzie nie ma ruchu Zauwa� i� opcja <option>-ofps</option> NIE jest tu potrzebna. <screen>mencoder dvd://1 -nosound -ovc lavc -lavcopts ildct:ilme:mbd=2</screen> </para></listitem> <listitem><para> U�ycie filtru likwiduj�cego przeplot przed kodowaniem. Jest kilka takich filtr�w, ka�dy ma swoje wady i zalety. Skonsultuj <option>mplayer -pphelp</option> aby zobaczy� co jest dost�pne (grepuj "deint") i przeszukaj <ulink url="http://www.mplayerhq.hu/homepage/design6/info.html#mailing_lists"> listy dyskusyjne MPlayera</ulink> aby znale惹 wiele dyskusji na temat r鷽nych filtr�w. Ilo倶 ramek na sekund� zn�w si� nie zmienia, wi�c nie u�ywamy <option>-ofps</option>. Likwidowanie przeplotu powinno zosta� zrobione po kadrowaniu <link linkend="menc-feat-telecine-footnotes">[1]</link> i przed skalowaniem. <screen>mencoder dvd://1 -nosound -vf pp=lb -ovc lavc</screen> </para></listitem> <listitem><para> Niestety ta opcja zawiera b滑dy w <application>MEncoderze</application>; B�dzie dzia�a� w <application>MEncoder G2</application>, kt�rego jeszcze nie ma. Na razie mo�esz do�wiadczy� nieoczekiwanych wywale�. <!-- Qba: myslalem ze ktos zaproponuje bardziej formalna wersje :) --> Celem opcji <option>-vf tfields</option> jest stworzenie pe�nej klatki z ka�dego pola, co w efekcie daje framerate 59,94. Zalet� tego podej�cia jest zerowa utrata danych; jednak ze wzgl�du na to, i� ka�da ramka pochodzi od jednego pola pozosta�e linie musz� by� jako� zinterpolowane. S� niezbyt dobre metody generowania brakuj�cych danych, a rezultaty b�d� podobne do tych jakie otrzymamy przy filtrach likwiduj�cych przeplot. Generowanie brakuj�cych linii tworzy kolejne problemy, po prostu ilo倶 danych si� podwaja. Wi�c, aby zachowa� jako倶 potrzebny jest wi�kszy koduj�cy bitrate i wi�ksza cze倶 mocy procesora jest u�ywana do kodowania jak i dekodowania. tfields posiada kilka r鷽nych opcji do generowania brakuj�cych linii. Je�eli u�ywasz tej metody, odwo�aj si� do manuala <!-- podr�cznika ?--> i wybierz opcj� kt�ra najbardziej odpowiada Twojemu materia�owi. Zauwa�, �e gdy u�ywasz <option>tfields</option> <emphasis role="bold">musisz</emphasis> poda� i <option>-fps</option> i <option>-ofps</option> aby podwoi� ilo倶 ramek na sekund� Twojego �r�d�a. <screen>mencoder dvd://1 -nosound -vf tfields=2 -ovc lavc -fps 59.94 -ofps 59.94</screen> </para></listitem> <listitem><para> Je�eli planujesz drastyczne zmniejszenie rozdzielczo�ci mo�esz odci掩 i zakodowa� tylko jedno z dw�ch p�l. Oczywi�cie stracisz po�ow� pionowej rozdzielczo�ci, ale je�li chcesz zeskalowa� do mniej ni� po�owy pionowej rozdzielczo�ci, strata nie b�dzie mia�a du�ego znaczenia. Rezultatem b�dzie progresywny plik o pr�dko�ci 29,97 ramek na sekund�. Procedura wymaga u�ycia <option>-vf field</option>, potem wykadrowania <link linkend="menc-feat-telecine-footnotes">[1]</link> i wyskalowania. Pami�taj, i� b�dziesz musia� skompensowa� po�ow� pionowej rozdzielczo�ci odpowiedni� skal�. <screen>mencoder dvd://1 -nosound -vf field=0 -ovc lavc</screen> </para></listitem> </orderedlist> </sect3> <sect3 id="menc-feat-telecine-encode-mixedpt"> <title>Mieszane progresywne i telecine</title> <para> W celu zmienienia zmieszanego video w ca�kowicie progresywne, cz蟠ci ztelecinowane b�d� musia�y by� poddane procesowi odwr�conego telecine. S� dwa filtry kt�re tego dokonaj� natywnie, ale najlepszym sposobem jest u�ycie ich obu po咳czonych (czytaj dalej aby dowiedzie� si� wi�cej). </para> <itemizedlist> <listitem><para> Obecnie najbardziej niezawodn� metod� na poradzenie sobie z tym typem video, jest nie odwracanie telecine ztelecinowanych cz蟠ci, ale ztelecinowa� nie-ztelecinowane cz蟠ci i odwr�ci� telecine ca�ego video. Brzmi skomplikowanie? softpulldown jest filtrem kt�ry zamienia ca�e video na telecine. Je�eli po softpulldown nast�pi <option>detc</option> lub <option>ivtc</option>, ko�cowym rezultatem b�dzie w ca�o�ci progresywne video. Kadrowanie i skalowanie powinno by� zrobione po operacjach odwracaj�cych telecine z opcj� <option> -ofps 23.976</option>. <screen>mencoder dvd://1 -nosound -vf softpulldown,ivtc=1 -ovc lavc -ofps 23.976</screen> </para> </listitem> <listitem><para> <option>-vf pullup</option> jest zaprojektowane aby odwraca� telecine ztelecinowanego materia�u, a progresywne dane zostawia� w spokoju. Pullup nie dzia�a za dobrze z obecnym <application>MEncoderem</application>, ale b�dzie dzia�a� z <application>MEncoder G2</application> (kiedy ten b�dzie tylko gotowy). Dzia�a dobrze bez opcji <option>-ofps</option>, ale <option>-ofps</option> jest potrzebne aby zapobiec poszatkowanemu wyj�ciu <!-- hmmmmm-->. Z <option>-ofps</option> pullup czasami zawodzi. Problem wywodzi si� z zachowania <application>MEncodera</application> kt�ry zrzuca ramki aby zachowa� synchronizacj� mi�dzy d�wi�kiem i obrazem: zrzuca ramki raczej przed wys�aniem ich przez �a�cuch filtr�w, ni� po. W rezultacie <option>pullup</option> jest czasami pozbawiony danych kt�rych potrzebuje. </para> <para> Je�eli <application>MEncoder</application> zrzuca za du�o ramek pod rz�d, zag�adza bufor <option>pullupa</option> i powoduje jego nieoczekiwane zamkni�cie. </para> <para> Je�eli nawet <application>MEncoder</application> zrzuca jedn� ramk�, <option>pullup</option> wci運 nie widzi jej i operuje na z�ej sekwencji ramek. Nawet je�li to nie powoduje nieoczekiwanego zako�czenia, <option>pullup</option> nie b�dzie w stanie podj掩 w�a�ciwych decyzji jak po咳czy� progresywne ramki i albo b�dzie niew�a�ciwie dopasowywa� do siebie pola albo zrzuca� par� p�l aby skompensowa�. </para> </listitem> <listitem><para> Nie u�ywa�em <option>-vf filmdint</option> osobi�cie, ale zobacz co ma do powiedzenia na ten temat D Richard Felker III: <blockquote><para>To jest w porz�dku, ale IMO (MZ - Moim zdaniem - przyp. t�um.) to raczej pr�buje usun掩 przeplot ni� odwr�ci� telecine (podobnie jak odtwarzacze DVD settop <!-- co ? co to jestr settop-->& progresywne TV) czego skutkiem jest ohydne miganie i inne artefakty. Je�eli zamierzasz u�ywa� tego, musisz chocia� sp�dzi troch� czasu na dopasowaniu opcji i ogl�daniu rezultat�w aby upewni� si�, �e si� nie kaszani.</para></blockquote> </para></listitem> </itemizedlist> </sect3> <sect3 id="menc-feat-telecine-encode-mixedpi"> <title>Mieszane progresywne i z przeplotem</title> <para> S� dwie metody na poradzenie sobie z t� kategori�, ka�da jest pewnym kompromisem. Powiniene� zdecydowa� na podstawie czasu trwania/miejsca ka�dego typu. </para> <itemizedlist> <listitem><para> Traktuj video jak progresywne. Cz蟠ci z przeplotem b�d� wygl�da�y jak z przeplotem i niekt�re przeplecione pola b�d� musia�y by� zrzucone, czego rezultatem b�dzie niemiarowe skakanie. Je�li chcesz mo�esz u�y� filtr�w postprocessingu, ale mo�e to nieznacznie zdegradowa� progresywne cz蟠ci. </para> <para> Ta opcja na pewno nie powinna by� u�ywana je�li docelowo masz zamiar wy�wietla� video na urz�dzeniu wykorzystuj�cym przeplot (np. z kart� TV) Je�eli masz ramki z przeplotem 23,937 fps, b�d� one ztelecinowane razem z progresywnymi ramkami. Po�owa "ramek" z przeplotem b�dzie wy�wietlona w czasie wy�wietlania trzech p�l (3/59.94 sekund), co w rezultacie da migaj�cy "skok wstecz w czasie" efekt kt�ry kiepsko wygl�da. Je�eli pr�bowa�e� tego <emphasis role="bold">musisz</emphasis> u�y� filtru likwiduj�cego przeplot jak <option>lb</option> lub <option>l5</option>. </para> <para> To mo�e by� r�wnie� z�y pomys� dla progresywnego obrazu. Zrzuci to pary nieprzerwanych przeplecionych p�l, daj�c w rezultacie nieci�g�o倶 kt�ra mo�e by� bardziej widoczna ni� w drugim przypadku kt�ry pokazuje niekt�re ramki dwa razy. Video z przeplotem 29,97 fps jest ju� troch� poszatkowane poniewa� powinno by� wy�wietlanie z pr�dko�ci� 59,94 p�l na sekund�, wi�c zduplikowane pola nie s� a� tak widoczne. </para> <para> W ka�dym przypadku najlepiej jest rozpatrywa� materia� i to gdzie masz zamiar go wy�wietla�. Je�li video jest w 90% progresywne i nie masz zamiaru nigdy go wy�wietla� na TV, powiniene� faworyzowa� progresywne podej�cie. Je�eli jest tylko w po�owie progresywne, b�dziesz pewnie chcia� je kodowa� tak jakby by�o w ca�o�ci z przeplotem. </para> </listitem> <listitem><para> Traktuj video jakby by�o z przeplotem. Niekt�re klatki z progresywnych cz蟠ci b�d� musia�y by� zduplikowane, daj�c w rezultacie niemiarowe skoki. Zn�w filtry likwiduj�ce przeplot mog� nieznacznie zdegradowa� progresywne cz蟠ci. </para></listitem> </itemizedlist> </sect3> </sect2> <sect2 id="menc-feat-telecine-footnotes"> <title>Notatki</title> <orderedlist> <listitem><formalpara> <title>O kadrowaniu:</title> <para> Video na DVD jest przechowywane w formacie nazywanym YUV 4:2:0. W video YUV luma ("jasno倶") i chroma ("kolor") s� przechowywane osobno. Poniewa� ludzkie oczy s� mniej wra�liwe na kolor ni� na jasno倶, w obrazie YUV 4:2:0 na cztery piksele luma przypada jeden piksel chroma. W progresywnym obrazie, ka�dy kwadrat czterech pikseli luma (dwa na ka�dym boku) ma jeden wsp�lny piksel chroma. Musisz wykadrowa� progresywne video YUV 4:2:0 do parzystych rozdzielczo�ci, i u�ywa� parzystych przesuni裝. Na przyk�ad <option>crop=716:380:2:26</option> jest OK ale <option>crop=716:380:3:26 </option> nie jest. </para> </formalpara> <para> Kiedy masz do czynienia z YUV 4:2:0 z przeplotem, sytuacja jest troch� bardziej skomplikowana. Zamiast ka�dych czterech pikseli luma w <emphasis>ramce</emphasis> dziel�cych jeden piksel chroma, ka�de cztery piksele w <emphasis>polu</emphasis> dziel� jeden piksel chroma. Kiedy pola s� przeplatane aby stworzy� ramk�, ka�da linia skanuj�ca jest wysoko�ci jednego piksela. Teraz, zamiast czterech pikseli luma w kwadracie, s� dwa bok-przy-boku i dwa nast�pne bok-przy-boku dwie linie skanuj�ce ni�ej. Ca�e to zamieszanie powoduje, �e pionowe rozmiary kadru i przesuni�cia musz� by� wielokrotno�ciami czterech. Wymiary poziome mog� pozosta� parzyste. </para> <para> Dla telecinowanego video, zalecam kadrowa� po procesie odwracania telecine. Kiedy video jest ju� progresywne wymagane jest tylko kadrowanie do parzystych wymiar�w. Je�li naprawd� potrzebujesz lekkiego przyspieszenia jakie da kadrowanie najpierw musisz kadrowa� pionowo do wielokrotno�ci czterech, inaczej filtr odwracaj�cy telecine nie b�dzie otrzymywa� prawid�owych danych. </para> <para> Przy video z przeplotem (nie telecine), musisz zawsze kadrowa� pionowo do wielokrotno�ci czw�rki, chyba �e u�ywasz opcji <option>-vf field</option> przed kadrowaniem. </para> </listitem> <listitem><formalpara> <title>O parametrach i jako�ci kodowania:</title> <para> Tylko to, �e poleci�em <option>mbd=2</option> tutaj nie znaczy �e nie mo�e by� on u�ywany gdzie indziej. Razem z <option>trell</option>, <option>mbd=2</option> jest jedn� z dw�ch najbardziej podnosz�cych jako倶 opcji biblioteki <systemitem class="library">libavcodec</systemitem>, kt�rych zawsze powiniene� u�ywa�, chyba �e spadek szybko�ci kodowania jest niedopuszczalny (np. kodowanie w czasie rzeczywistym). Biblioteka <systemitem class="library">libavcodec</systemitem> ma wiele opcji umo�liwiaj�cych zwi�kszenie jako�ci wyj�ciowej kodowania (i zmniejszyenie pr�dko�ci) ale ten temat jest poza zakresem tego dokumentu. </para> </formalpara> </listitem> </orderedlist> </sect2> </sect1> </chapter>