11722
|
1 <?xml version="1.0" encoding="iso-8859-2"?>
|
11862
|
2 <!-- Synced with 1.17 -->
|
11722
|
3 <chapter id="mencoder">
|
|
4 <title>Kodowanie z <application>MEncoderem</application></title>
|
|
5
|
|
6 <para>
|
|
7 Pełna lista dostępnych opcji <application>MEncodera</application> oraz
|
|
8 przykłady znajdują sie na stronie man. W pliku <ulink url="../../tech/encoding-tips.txt">encoding-tips</ulink>
|
|
9 znajduje się dużo przykładów i przewodników skompletowanych z wielu wątków listy dyskusyjnej mplayer-users. W
|
|
10 <ulink url="http://mplayerhq.hu/pipermail/mplayer-users/">archiwum</ulink>
|
|
11 znajdziesz mnóstwo dyskusji o aspektach i problemach związanych z kodowaniem
|
|
12 przy pomocy <application>MEncodera</application>.
|
|
13 </para>
|
|
14
|
|
15 <sect1 id="menc-feat-divx4">
|
|
16 <title>Kodowanie 2 lub 3-przebiegowe MPEG-4 ("DivX")</title>
|
|
17
|
|
18 <formalpara>
|
|
19 <title>Kodowanie 2-przebiegowe</title>
|
|
20 <para>
|
|
21 Nazwa pochodzi od faktu, że przy użyciu tej metody plik kodowany jest <emphasis>dwa razy</emphasis>.
|
|
22 Pierwsze kodowanie (dubbed pass) tworzy pliki tymczasowe
|
|
23 (<filename>*.log</filename>) o rozmiarze kilku megabajtów, nie kasuj ich odrazu
|
|
24 (możesz natomiast skasować plik AVI). W drugim przebiegu
|
|
25 przy pomocy danych o bitrate'cie z plików tymczasowych tworzony jest plik wyjściowy
|
|
26 2-przebiegu. Plik końcowy będzie miał o wiele lepszą jakość w porównaniu ze standardowym 1-przebiegowym kodowaniem.
|
|
27 Jeżeli pierwszy raz o tym słyszysz, powinieneś zajrzeć do któregoś z wielu
|
|
28 przewodników dostępnych w sieci.
|
|
29 </para>
|
|
30 </formalpara>
|
|
31
|
|
32 <para>
|
|
33 Ten przykład pokazuje jak zakodować DVD do 2-przebiegowego MPEG-4 ("DivX") AVI.
|
|
34 Będą do tego potrzebne tylko dwie komendy:
|
|
35 <screen>rm frameno.avi</screen>
|
|
36 usuń ten plik, który może pochodzić z poprzedniego 3-przebiegowego kodowania (wpływa on na aktualny)
|
|
37 <screen>
|
|
38 mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o <replaceable>film.avi</replaceable>
|
|
39 mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o <replaceable>film.avi</replaceable>
|
|
40 </screen>
|
|
41 </para>
|
|
42
|
|
43 <formalpara>
|
|
44 <title>Kodowanie 3-przebiegowe</title>
|
|
45 <para>
|
|
46 Jest to rozszerzenie kodowania 2-przebiegowego, gdzie dźwięk jest kodowany osobno. Ta metoda wyświetla zalecany bitrate
|
|
47 taki, aby film zmieścił sie na pojedyńczą płytę CD. Również, dźwięk kodowany jest tylko raz, inaczej niż w trybie 2-przebiegowym.
|
|
48 Schemat wygląda tak:
|
|
49 </para>
|
|
50 </formalpara>
|
|
51
|
|
52 <procedure>
|
|
53 <step><para>
|
|
54 Usuń przeszkadzający plik tymczasowy:
|
|
55 <screen>rm frameno.avi</screen>
|
|
56 </para></step>
|
|
57 <step><para>
|
|
58 <emphasis>Pierwszy przebieg:</emphasis>
|
|
59
|
|
60 <screen>mencoder <replaceable>plik/DVD</replaceable> -ovc frameno -oac mp3lame -lameopts vbr=3 -o frameno.avi</screen>
|
|
61
|
|
62 Zostanie stworzony plik avi tylko ze scieżką dźwiękową, zawierający
|
|
63 <emphasis role="bold">jedynie</emphasis> rządany strumień audio. Nie zapomnij o
|
|
64 <option>-lameopts</option>, jeżeli musisz je ustawić. Jeśli kodowałeś długi film, <application>MEncoder</application>,
|
|
65 po zakończeniu tego przebiegu, wypisze zalecane wartości bitrate'u dla docelowych pojemności 650Mb, 700Mb, i 800Mb.
|
|
66 </para></step>
|
|
67 <step><para>
|
|
68 <emphasis>Drugi przebieg:</emphasis>
|
|
69 <screen>
|
11862
|
70 mencoder <replaceable>plik/DVD</replaceable> -oac copy -ovc lavc
|
|
71 -lavcopts vcodec=mpeg4:vpass=1:vbitrate=<replaceable>bitrate</replaceable><!--
|
11722
|
72 --></screen>
|
|
73 Jest to pierwszy przebieg kodowania video. Opcjonalnie ustal video bitrate na ten który MEncoder wypisał
|
|
74 na końcu poprzedniego przebiegu.</para></step>
|
|
75 <step><para>
|
|
76 <emphasis>Trzeci przebieg:</emphasis>
|
|
77 <screen>
|
11862
|
78 mencoder <replaceable>file/DVD</replaceable> -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=<replaceable>bitrate</replaceable>
|
11722
|
79 </screen>
|
|
80 Jest to drugi przebieg kodowania video. Ustal ten sam bitrate co w poprzednim przebiegu, chyba że naprawdę wiesz co robisz.
|
|
81 W tym przebiegu, dźwięk z <filename>frameno.avi</filename> będzie dołączony do pliku końcowego... i gotowe!
|
|
82 </para></step>
|
|
83 </procedure>
|
|
84
|
|
85 <example>
|
|
86 <title>Przykład 3-przebiegowego kodowania</title>
|
|
87 <para>
|
|
88 <screen>rm frameno.avi</screen>
|
|
89 usuń ten plik, który może pochodzić z poprzedniego 3-przebiegowego kodowania (wpływa on na aktualny)
|
|
90 <screen>
|
|
91 mencoder dvd://2 -ovc frameno -o frameno.avi -oac mp3lame -lameopts vbr=3
|
|
92 mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o <replaceable>film.avi</replaceable>
|
|
93 mencoder dvd://2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o <replaceable>film.avi</replaceable>
|
|
94 </screen>
|
|
95 </para>
|
|
96 </example>
|
|
97 </sect1>
|
|
98
|
|
99 <sect1 id="menc-feat-mpeg">
|
|
100 <title>Kodowanie do formatu MPEG</title>
|
|
101 <para>
|
|
102 <application>MEncoder</application> może tworzyć pliki formatu MPEG (MPEG-PS).
|
|
103 Jest to prawdopodobnie użyteczne tylko z kodekiem <emphasis>mpeg1video</emphasis>
|
11862
|
104 pochodzącym z <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>, ponieważ odtwarzacze - za wyjątkiem
|
11722
|
105 <application>MPlayera</application> - oczekują obrazu zakodowanego w MPEG1 i
|
|
106 strumienia dźwiękowego w MPEG1 warstwa (layer) 2 (MP2) w pliku MPEG.
|
|
107 </para>
|
|
108
|
|
109 <para>
|
11862
|
110 Cecha ta nie jest zbytnio przydatna w tej chwili, poza tym
|
|
111 zawiera prawdopodobnie wiele błędów, ale najważniejsze jest to,
|
|
112 że <application>MEncoder</application> w tej chwili nie może kodować
|
|
113 2 warstwy MPEG1 (MP2) audio której oczekują wszystkie odtwarzacze w plikach MPEG.
|
11722
|
114 </para>
|
|
115
|
|
116 <para>
|
|
117 Aby zmienić wyjściowy format plików <application>MEncodera</application>, użyj opcji <option>-of mpeg</option>.
|
|
118 </para>
|
|
119
|
|
120 <para>
|
|
121 Przykład:
|
|
122 <screen>
|
11862
|
123 mencoder -of mpeg -ovc lavc -lavcopts vcodec=mpeg1video -oac copy
|
|
124 <replaceable>inne opcje</replaceable> <replaceable>media.avi
|
|
125 </replaceable> -o <replaceable>wyjscie.mpg</replaceable>
|
11722
|
126 </screen>
|
|
127 </para>
|
|
128 </sect1>
|
|
129
|
|
130
|
|
131 <sect1 id="menc-feat-rescale">
|
|
132 <title>Przeskalowywanie filmów</title>
|
|
133
|
|
134 <para>
|
|
135 Najczęściej potrzeba zmiany wielkości obrazu jest nagła. Jej powodów może być wiele:
|
|
136 zmniejszenie rozmiaru pliku, przepustowość sieci, itd. Wiekszość ludzi stosuje skalowanie
|
|
137 przy konwertowaniu DVD lub SVCD do DivXa (AVI). To jest <emphasis role="bold">złe</emphasis> rozwiązanie.
|
|
138 Zamiast tak robić, przeczytaj sekcje <link linkend="aspect">Zachowywanie proporcji obrazu</link>.
|
|
139 </para>
|
|
140
|
|
141 <para>
|
|
142 Proces skalowania obsługiwany jest przez filtr video <literal>scale</literal>
|
|
143 <option>-vf scale=<replaceable>szerokość</replaceable>:<replaceable>wysokość</replaceable></option>.
|
|
144 Jego jakość może być ustawiona parametrem <option>-sws</option>.
|
|
145 Jeśli nie jest on podany <application>MEncoder</application> użyje wartości 0: szybki
|
|
146 bilinearny.
|
|
147 </para>
|
|
148
|
|
149 <para>
|
|
150 Przykład:
|
|
151 <screen>
|
11862
|
152 mencoder <replaceable>wejscie.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4
|
|
153 -vf scale=640:480-o <replaceable>wyjscie.avi</replaceable>
|
11722
|
154 </screen>
|
|
155 </para>
|
|
156 </sect1>
|
|
157
|
|
158
|
|
159 <sect1 id="menc-feat-streamcopy">
|
|
160 <title>Kopiowanie strumienia</title>
|
|
161
|
|
162 <para>
|
|
163 <application>MEncoder</application> obsługuje strumienie wejściowe na dwa sposoby:
|
|
164 <emphasis role="bold">koduje</emphasis> lub <emphasis role="bold">kopiuje</emphasis>
|
|
165 je. Ta sekcja jest o <emphasis role="bold">kopiowaniu</emphasis>.
|
|
166 </para>
|
|
167
|
|
168 <itemizedlist>
|
|
169 <listitem><para>
|
|
170 <emphasis role="bold">Strumień video</emphasis> (opcja <option>-ovc copy</option>):
|
|
171 ładne rzeczy można wyczyniać:) Jak, wstawianie (nie konwertowanie) FLI, VIDO lub MPEG1 video w plik AVI !
|
|
172 Oczywiście tylko <application>MPlayer</application> potrafi odtwarzać takie pliki :) I prawdopodobnie nie ma
|
|
173 dla tego żadnego sensownego zastosowania. Na zdrowy rozsądek: kopiowanie strumieni video może być przydatne
|
|
174 tylko wtedy, gdy np. tylko strumień audio ma być zakodowany (np. PCM do MP3).
|
|
175 </para></listitem>
|
|
176 <listitem><para>
|
|
177 <emphasis role="bold">Strumień audio</emphasis> (opcja <option>-oac copy</option>):
|
|
178 prosto i przystępnie. Możliwe jest wmiksowanie zewnętrznego źródła (MP3, WAV) do strumienia wyjściowego.
|
|
179 Użyj opcji <option>-audiofile <replaceable>nazwa_pliku</replaceable></option> do tego celu.
|
|
180 </para></listitem>
|
|
181 </itemizedlist>
|
|
182 </sect1>
|
|
183
|
|
184
|
|
185 <sect1 id="menc-feat-fix-avi">
|
|
186 <title>Naprawianie plików AVI ze zniszczonym indeksem lub przeplotem</title>
|
|
187
|
|
188 <para>
|
|
189 Najprostsza sprawa. Po prostu kopiujemy strumień audio i video, a
|
|
190 <application>MEncoder</application> generuje indeks. Oczywiście nie
|
|
191 naprawi to możliwych błęów w strumieniu video i/lub audio, ale za to, naprawi pliki z zepsutym przeplotem,
|
|
192 +tak więc opcja <option>-ni</option> nie będzie tu już potrzebna.
|
|
193 </para>
|
|
194
|
|
195 <para>
|
|
196 Komenda:
|
|
197 <screen>
|
|
198 mencoder -idx <replaceable>wejscie.avi</replaceable> -ovc copy -oac copy -o <replaceable>wyjscie.avi</replaceable><!--
|
|
199 --></screen>
|
|
200 </para>
|
|
201
|
|
202
|
|
203 <sect2 id="menc-feat-appending">
|
|
204 <title>Łącznie wielu plików AVI</title>
|
|
205
|
|
206 <para>
|
|
207 Efektem ubocznym funkcji naprawiania zepsutych plików AVI jest możliwości łączenia
|
|
208 2 (lub więcej) plików AVI:
|
|
209 </para>
|
|
210
|
|
211 <para>
|
|
212 Komenda:
|
|
213 <screen>cat 1.avi 2.avi | mencoder -noidx -ovc copy -oac copy -o <replaceable>wyjscie.avi</replaceable> -</screen>
|
|
214 </para>
|
|
215
|
|
216 <note><para>
|
12154
|
217 Komenda ta oczekuje tego, żeby <filename>1.avi</filename> i <filename>2.avi</filename> używały tego
|
11722
|
218 samego kodeka, rozdzielczości, szybkości strumienia (stream rate), i przynajmniej
|
|
219 <filename>1.avi</filename> nie może być zepsute. Możliwe, że będziesz musiał naprawić pliki wejściowe,
|
|
220 jak było opisane
|
|
221 <link linkend="menc-feat-fix-avi">powyżej</link>.
|
|
222 </para></note>
|
|
223 </sect2>
|
|
224 </sect1>
|
|
225
|
|
226 <sect1 id="menc-feat-enc-libavcodec">
|
11862
|
227 <title>Kodowanie przy pomocy rodziny kodeków <systemitem class="library">libavcodec</systemitem></title>
|
11722
|
228
|
|
229 <para>
|
11862
|
230 <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link> umożliwia proste kodowanie do wielu
|
|
231 interesujących formatów video i audio.
|
11722
|
232 Możesz kodować do następujących kodeków (mniej lub bardziej aktualne)
|
|
233
|
|
234 <informaltable frame="all">
|
|
235 <tgroup cols="2">
|
|
236 <thead>
|
|
237 <row><entry>Nazwa kodeka</entry><entry>Opis</entry></row>
|
|
238 </thead>
|
|
239 <tbody>
|
|
240 <row><entry>mjpeg</entry><entry>
|
|
241 Ruchomy JPEG
|
|
242 </entry></row>
|
|
243 <row><entry>ljpeg</entry><entry>
|
|
244 Bezstratny JPEG
|
|
245 </entry></row>
|
|
246 <row><entry>h263</entry><entry>
|
|
247 H263
|
|
248 </entry></row>
|
|
249 <row><entry>h263p</entry><entry>
|
|
250 H263 Plus
|
|
251 </entry></row>
|
|
252 <row><entry>mpeg4</entry><entry>
|
|
253 Standtard ISO MPEG-4 (DivX 5, XVID kompatybilne)
|
|
254 </entry></row>
|
|
255 <row><entry>msmpeg4</entry><entry>
|
|
256 pierwotny wariant MPEG-4 przez MS, v3 (DivX3)
|
|
257 </entry></row>
|
|
258 <row><entry>msmpeg4v2</entry><entry>
|
|
259 pierwotny wariant MPEG-4 przez MS, v2 (używany w starych plikach asf)
|
|
260 </entry></row>
|
|
261 <row><entry>wmv1</entry><entry>
|
|
262 Windows Media Video, wersja 1 (WMV7)
|
|
263 </entry></row>
|
|
264 <row><entry>wmv2</entry><entry>
|
|
265 Windows Media Video, wersja 2 (WMV8)
|
|
266 </entry></row>
|
|
267 <row><entry>rv10</entry><entry>
|
|
268 Stary kodek RealVideo
|
|
269 </entry></row>
|
|
270 <row><entry>mpeg1video</entry><entry>
|
|
271 MPEG1 video
|
|
272 </entry></row>
|
|
273 <row><entry>mpeg2video</entry><entry>
|
|
274 MPEG2 video
|
|
275 </entry></row>
|
|
276 <row><entry>huffyuv</entry><entry>
|
|
277 bezstratna kompresja
|
|
278 </entry></row>
|
|
279 <row><entry>asv1</entry><entry>
|
|
280 ASUS Video v1
|
|
281 </entry></row>
|
|
282 <row><entry>asv2</entry><entry>
|
|
283 ASUS Video v2
|
|
284 </entry></row>
|
|
285 <row><entry>ffv1</entry><entry>
|
|
286 bezstratny kodek video FFmpeg
|
|
287 </entry></row>
|
|
288 </tbody>
|
|
289 </tgroup>
|
|
290 </informaltable>
|
|
291
|
|
292 Pierwsza kolumna zawiera nazwę kodeka, która powinna być podana za opcją
|
|
293 <literal>vcodec</literal>, np: <option>-lavcopts vcodec=msmpeg4</option>
|
|
294 </para>
|
|
295
|
|
296 <informalexample>
|
|
297 <para>
|
|
298 Przykład z kompresją MJPEG:
|
|
299 <screen>mencoder dvd://2 -o <replaceable>title2.avi</replaceable> -ovc lavc -lavcopts vcodec=mjpeg -oac copy</screen>
|
|
300 </para>
|
|
301 </informalexample>
|
|
302 </sect1>
|
|
303
|
|
304
|
|
305 <sect1 id="menc-feat-enc-images">
|
|
306 <title>Kodowanie z wielu wejściowych plików obrazkowych (JPEG,PNG lub TGA)</title>
|
|
307
|
|
308 <para>
|
|
309 <application>MEncoder</application> jest w stanie stworzyć film z jednego
|
|
310 lub wielu plików JPEG, PNG lub TGA. Poprzez proste kopiowanie ramek może stworzyć pliki MJPEG
|
|
311 (Motion(ruchomy - przypis tłumacza) JPEG), MPNG (Motion PNG) lub MTGA (Motion TGA).
|
|
312 </para>
|
|
313
|
|
314 <orderedlist>
|
|
315 <title>Jak to działa:</title>
|
|
316 <listitem><para>
|
|
317 <application>MEncoder</application> <emphasis>dekoduje</emphasis> wejściowy obrazek/obrazki z pomocą biblioteki
|
|
318 <systemitem class="library">libjpeg</systemitem> (w przypadku dekodowania PNG, skorzysta z
|
|
319 <systemitem class="library">libpng</systemitem>).
|
|
320 </para></listitem>
|
|
321 <listitem><para>
|
|
322 Potem <application>MEncoder</application> kompresuje zdekodowane pliki podanym kompresorem
|
|
323 (DivX4, Xvid, ffmpeg msmpeg4, itd.).
|
|
324 </para></listitem>
|
|
325 </orderedlist>
|
|
326
|
|
327 <formalpara>
|
|
328 <title>Przykłady</title>
|
|
329 <para>
|
|
330 Opis i sposób działania funkcji <option>-mf</option> znajdują się na stronie man.
|
|
331
|
|
332 <informalexample>
|
|
333 <para>
|
|
334 Tworzenie pliku DivX4 ze wszystkich plików JPEG w aktualnym katalogu:
|
|
335 <screen>
|
|
336 mencoder -mf on:w=800:h=600:fps=25 -ovc divx4 -o <replaceable>wyjscie.avi</replaceable> \*.jpg<!--
|
|
337 --></screen>
|
|
338 </para>
|
|
339 </informalexample>
|
|
340
|
|
341 <informalexample>
|
|
342 <para>
|
|
343 Tworzenie pliku DivX4 z wybranych plików JPEG w aktualnym katalogu:
|
|
344 <screen>
|
11862
|
345 mencoder -mf on:w=800:h=600:fps=25 -ovc divx4 -o <replaceable>wyjscie.avi</replaceable>
|
|
346 <replaceable>ramka001.jpg,ramka002.jpg</replaceable> <!--
|
11722
|
347 --></screen>
|
|
348 </para>
|
|
349 </informalexample>
|
|
350
|
|
351 <informalexample>
|
|
352 <para>
|
|
353 Tworzenie pliku Motion (ruchomego - przyp. tłum.) JPEG (MJPEG) ze wszystkich plików JPEG w aktualnym katalogu:
|
|
354 <screen>
|
|
355 mencoder -mf on:w=800:h=600:fps=25 -ovc copy -o <replaceable>wyjscie.avi</replaceable> \*.jpg<!--
|
|
356 --></screen>
|
|
357 </para>
|
|
358 </informalexample>
|
|
359
|
|
360 <informalexample>
|
|
361 <para>
|
|
362 Tworzenie nieskompresowanego pliku ze wszystkich plików PNG w aktualnym katalogu:
|
|
363 <screen>
|
|
364 mencoder -mf on:w=800:h=600:fps=25:type=png -ovc raw -o <replaceable>output.avi</replaceable> \*.png<!--
|
|
365 --></screen>
|
|
366 </para>
|
|
367 </informalexample>
|
|
368
|
|
369 <note><para>
|
|
370 Szerokości musi być liczbą podzielną przez 4, takie są ograniczenia formatu RAW RGB AVI.
|
|
371 </para></note>
|
|
372
|
|
373 <informalexample>
|
|
374 <para>
|
|
375 Tworzenie pliku Motion PNG (MPNG) ze wszystkich plików PNG w aktualnym katalogu:
|
|
376 <screen>
|
|
377 mencoder -mf on:w=800:h=600:fps=25:type=png -ovc copy -o <replaceable>wyjscie.avi</replaceable> \*.png<!--
|
|
378 --></screen>
|
|
379 </para>
|
|
380 </informalexample>
|
|
381
|
|
382 <informalexample>
|
|
383 <para>
|
|
384 Tworzenie pliku Motion TGA (MTGA) ze wszystkich plików TGA w aktualnym katalogu:
|
|
385 <screen>
|
|
386 mencoder -mf on:w=800:h=600:fps=25:type=tga -ovc copy -o <replaceable>wyjscie.avi</replaceable> \*.tga<!--
|
|
387 --></screen>
|
|
388 </para>
|
|
389 </informalexample>
|
|
390
|
|
391 </para>
|
|
392 </formalpara>
|
|
393 </sect1>
|
|
394
|
|
395
|
|
396 <sect1 id="menc-feat-extractsub">
|
|
397 <title>Wyciąganie napisów z DVD do pliku Vobsub</title>
|
|
398
|
|
399 <para>
|
|
400 <application>MEncoder</application> jest w stanie wyciągnąć napisy z DVD do pliku
|
|
401 w formacie Vobsub. Tworzy je para plików z rozszerzeniem
|
|
402 <filename>.idx</filename> i <filename>.sub</filename>, które są zazwyczaj spakowane do
|
|
403 pojedyńczego archiwum <filename>.rar</filename>.
|
|
404 <application>MPlayer</application> może je odtwarzać z opcjami
|
|
405 <option>-vobsub</option> i <option>-vobsubid</option>.
|
|
406 </para>
|
|
407
|
|
408 <para>
|
|
409 Podajesz nazwę bazową (tzn. bez rozszerzenia <filename>.idx</filename> lub
|
|
410 <filename>.sub</filename>) pliku wyjściowego z
|
|
411 <option>-vobsubout</option> oraz indeks dla tego pliku przez <option>-vobsuboutindex</option>.
|
|
412 </para>
|
|
413
|
|
414 <para>
|
|
415 Jeżeli źródłem nie jest, DVD powinieneś użyć opcji <option>-ifo</option>, aby
|
|
416 wskazać plik <filename>.ifo</filename> potrzebny do stworzenia pliku wynikowego
|
|
417 <filename>.idx</filename>.
|
|
418 </para>
|
|
419
|
|
420 <para>
|
|
421 Jeżeli źródłem nie jest DVD i nie masz pliku <filename>.ifo</filename>, będziesz musiał użyć opcji
|
|
422 <option>-vobsubid</option>, aby podać id języka, które będzie umieszczone w pliku
|
|
423 <filename>.idx</filename>.
|
|
424 </para>
|
|
425
|
|
426 <para>
|
|
427 Każde uruchomienie dołączy bierzące napisy, jeżeli pliki <filename>.idx</filename>
|
|
428 i <filename>.sub</filename> istnieją. Więc powinieneś je usunąć przed uruchomieniem.
|
|
429 </para>
|
|
430
|
|
431 <example>
|
|
432 <title>Kopiowanie dwóch napisów z DVD podczas 3-przebiegowego kodowania</title>
|
|
433 <screen>
|
|
434 rm subtitles.idx subtitles.sub
|
|
435 mencoder dvd://1 -vobsubout napisy -vobsuboutindex 0 -sid 2 -o frameno.avi -ovc frameno
|
|
436 mencoder dvd://1 -oac copy -ovc divx4 -pass 1
|
|
437 mencoder dvd://1 -oac copy -ovc divx4 -pass 2 -vobsubout napisy -vobsuboutindex 1 -sid 5<!--
|
|
438 --></screen>
|
|
439 </example>
|
|
440
|
|
441 <example>
|
|
442 <title>Kopiowanie francuskich napisów z pliku MPEG</title>
|
|
443 <screen>
|
|
444 rm napisy.idx napisy.sub
|
11862
|
445 mencoder <replaceable>film.mpg</replaceable> -ifo <replaceable>film.ifo</replaceable>
|
|
446 -vobsubout napisy -vobsuboutindex 0 -vobsuboutid fr -sid 1<!--
|
11722
|
447 --></screen>
|
|
448 </example>
|
|
449
|
|
450 </sect1>
|
|
451
|
|
452 <sect1 id="aspect">
|
|
453 <title>Utrzymywanie proporcji obrazu (aspect ratio)</title>
|
|
454 <para>
|
|
455 Pliki DVD i SVCD (tzn. MPEG1/2) zawierają wartość proporcji obrazu, która
|
|
456 opisuje, jak odtwarzacz ma skalować strumień video, wiec ludzie nie bedą się męczyć (np.: 480x480 + 4:3 = 640x480).
|
|
457 Jednak przy kodowaniu plików AVI (DivX), musisz być świadom, że nagłowek AVI nie przechowuje
|
|
458 tej wartości. Przeskalowywanie jest obrzydliwe i czasochłonne, musi być jakiś lepszy sposób!
|
|
459 </para>
|
|
460
|
|
461 <para>Jest</para>
|
|
462
|
|
463 <para>
|
|
464 MPEG4 posiada unikalną cechę: strumień video może posiadać swoją wartość proporcji obrazu.
|
|
465 Tak, dokładnie jak pliki MPEG1/2 (DVD, SVCD) i H263. Niestety, nie ma
|
|
466 <emphasis role="bold">żadnych</emphasis> odtwarzaczy video które by wykorzystywały tą
|
|
467 zaletę MPEG4, oprócz <application>MPlayera</application>.
|
|
468 </para>
|
|
469
|
|
470 <para>
|
11862
|
471 Właściwość ta może być jedynie używana z kodekiem <systemitem>mpeg4</systemitem>
|
|
472 z biblioteki <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>.
|
|
473 Pamiętaj: chociaż <application>MPlayer</application>
|
|
474 poprawnie odtworzy stworzone pliki, inne odtwarzacze
|
11722
|
475 użyją złych proporcji obrazu (aspect ratio).
|
|
476 </para>
|
|
477
|
|
478 <para>
|
|
479 Z pewnością powinieneś wyciąć czarne pasy nad i pod obrazem.
|
|
480 Zobacz jak używać filtrów <systemitem>cropdetect</systemitem> i <systemitem>crop</systemitem> na stronie man.
|
|
481 </para>
|
|
482
|
|
483 <para>
|
|
484 Sposób użycia:
|
|
485 <screen>
|
11862
|
486 mencoder <replaceable>przykład-svcd.mpg</replaceable> -ovc lavc -lavcopts vcodec=mpeg4:autoaspect
|
|
487 -vf crop=714:548:0:14 -oac copy -o <replaceable>wyjscie.avi</replaceable>
|
11722
|
488 </screen>
|
|
489 </para>
|
|
490 </sect1>
|
|
491
|
|
492 <sect1 id="custommatrices"><title>Dowolne inter/intra matryce</title>
|
|
493
|
|
494 <para>
|
11862
|
495 Ta cecha <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link> pozwala ustawić dowolne
|
11722
|
496 inter (I-ramki/ramki kluczowe) i intra (P-ramki/predicted
|
|
497 frames) matryce. Funkcja ta jest obsługiwana przez wiele kodeków:
|
|
498 <systemitem>mpeg1video</systemitem> i <systemitem>mpeg2video</systemitem>
|
|
499 zgłaszane są jako działające.
|
|
500 </para>
|
|
501
|
|
502 <para>
|
|
503 Typowy sposób użycia tej opcji to ustawienie matrycy na specyfikacje preferowane przez
|
|
504 <ulink url="http://www.kvcd.net/">KVCD</ulink>.
|
|
505 </para>
|
|
506
|
|
507 <para>
|
|
508 Matryca Kwantyzacji <emphasis role="bold">KVCD "Notch":</emphasis>
|
|
509 </para>
|
|
510
|
|
511 <para>
|
|
512 Intra:
|
|
513 <screen>
|
|
514 8 9 12 22 26 27 29 34
|
|
515 9 10 14 26 27 29 34 37
|
|
516 12 14 18 27 29 34 37 38
|
|
517 22 26 27 31 36 37 38 40
|
|
518 26 27 29 36 39 38 40 48
|
|
519 27 29 34 37 38 40 48 58
|
|
520 29 34 37 38 40 48 58 69
|
|
521 34 37 38 40 48 58 69 79
|
|
522 </screen>
|
|
523
|
|
524 Inter:
|
|
525 <screen>
|
|
526 16 18 20 22 24 26 28 30
|
|
527 18 20 22 24 26 28 30 32
|
|
528 20 22 24 26 28 30 32 34
|
|
529 22 24 26 30 32 32 34 36
|
|
530 24 26 28 32 34 34 36 38
|
|
531 26 28 30 32 34 36 38 40
|
|
532 28 30 32 34 36 38 42 42
|
|
533 30 32 34 36 38 40 42 44
|
|
534 </screen>
|
|
535 </para>
|
|
536
|
|
537 <para>
|
|
538 Sposób użycia:
|
|
539 <screen>
|
11862
|
540 $ mencoder <replaceable>wejscie.avi</replaceable> -o <replaceable>wyjscie.avi</replaceable>
|
|
541 -oac copy -ovc lavc -lavcopts inter_matrix=...:intra_matrix=...
|
11722
|
542 </screen>
|
|
543 </para>
|
|
544
|
|
545 <para>
|
|
546 <screen>
|
|
547 $ mencoder <replaceable>wejscie.avi</replaceable> -ovc lavc -lavcopts
|
|
548 vcodec=mpeg2video:intra_matrix=8,9,12,22,26,27,29,34,9,10,14,26,27,29,34,37,
|
|
549 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,
|
|
550 29,34,37,38,40,48,58,29,34,37,38,40,48,58,69,34,37,38,40,48,58,69,79
|
|
551 :inter_matrix=16,18,20,22,24,26,28,30,18,20,22,24,26,28,30,32,20,22,24,26,
|
|
552 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,
|
|
553 36,38,40,28,30,32,34,36,38,42,42,30,32,34,36,38,40,42,44 -oac copy -o svcd.mpg
|
|
554 </screen>
|
|
555 </para>
|
|
556 </sect1>
|
|
557
|
11862
|
558 <sect1 id="menc-feat-dvd-mpeg4">
|
|
559 <title>Rippowanie DVD do wysokiej jakości pliku MPEG4 ("DivX")</title>
|
|
560
|
|
561 <para>
|
|
562 Na ripowanie DVD do pliku MPEG4 (DivX) wysokiej jakości składa sie wiele czynników.
|
|
563 Poniżej znajduje się przykład tego procesu gdy nie ma żadnego rozmiaru docelowego
|
|
564 pliku końcowego (innego niż zmieszczenie rezultatu w 2GB).
|
|
565 <systemitem class="library">Libavcodec</systemitem> zostanie użyte do zakodowania obrazu,
|
|
566 dźwięk natomiast będzie skopiowany bez zmian.
|
|
567 </para>
|
|
568
|
|
569 <sect2 id="menc-feat-dvd-mpeg4-crop">
|
|
570 <title>Kadrowanie</title>
|
|
571 <para>
|
|
572 Odtwórz DVD i uruchom na nim filtr detekcji kadrowania (<option>-vf cropdetect</option>).
|
|
573 Rezultatem bedzie prostokąt kadrowania do użycia przy kodowaniu. Powodem kadrowania
|
|
574 jest to, że wiele filmów nie zostało nakręconych w standardowej dla DVD proporcji obrazu
|
|
575 (aspect ratio)(16/9 lub 4/3), lub, powodem może być cokolwiek,
|
|
576 obraz nie wypełnia poprawnie całej ramki. A więc chcesz wyciąć bezsensowne czarne
|
|
577 pasy podczas ripowania. To również poprawia jakość ripu w ponieważ kodowanie ostrych krawędzi
|
|
578 czarnych pasów zajmuje wiele bitów.
|
|
579 Powszechną proporcja obrazu jest 2.35, taka jak w kineskopie. Większość dużych filmów-pogromców bloków
|
|
580 ma własnie taką proporcje obrazu (aspect ratio).
|
|
581 </para>
|
|
582 </sect2>
|
|
583
|
|
584 <sect2 id="menc-feat-dvd-mpeg4-quality">
|
|
585 <title>Poziom jakość</title>
|
|
586 <para>
|
|
587 Następną rzeczą jaką musisz ustalić to docelowy poziom jakości. Gdy nie ma potrzeby
|
|
588 zmieszczenia pliku na płycie/płytach CD, użycie stałej kwantyzacji znanej
|
|
589 również pod nazwą stałej jakości będzie dobrym wyborem. W ten sposób każda ramka
|
|
590 zajmuje tyle bitów ile potrzebuje aby zachować jakość na wybranym poziomie,
|
|
591 za to wielokrotne kodowanie nie jest w tym wypadku potrzebne. W
|
|
592 <systemitem class="library">libavcodec</systemitem>, otrzymasz stałą jakość
|
|
593 używając opcji <option>-lavcopts vqscale=<replaceable>N</replaceable></option>.
|
|
594 <option>vqscale=3</option> powinno dać końcowy rezultat poniżej 2GB, zależy to głównie
|
|
595 od długości filmu i poziomu szumów obrazu (im wiecej szumów tym trudniej jest dany obraz skompresować).
|
|
596 </para></sect2>
|
|
597
|
|
598 <sect2 id="menc-feat-dvd-mpeg4-2gb">
|
|
599 <title>Pliki powyżej 2GB</title>
|
|
600 <para>
|
|
601 Jeżeli plik wynikowy z kodowania o stałej jakości jest większy od 2GB
|
|
602 , będziesz musiał stworzyć indeks aby móc oglądać go poprawnie.
|
|
603 Albo
|
|
604
|
|
605 <itemizedlist>
|
|
606 <listitem><para>
|
|
607 odtwórz film z opcją <option>-forceidx</option> aby stworzyć index w locie albo
|
|
608 </para></listitem>
|
|
609 <listitem><para>
|
|
610 użyj <option>-saveidx</option> aby zapisać indeks do pliku tylko raz i użyć go potem przy odtwarzaniu
|
|
611 pliku używając opcji <option>-loadidx</option>.
|
|
612 </para></listitem>
|
|
613 </itemizedlist>
|
|
614
|
|
615 Jeśli denerwuje Cię to, możesz chcieć utrzymać wielkość pliku poniżej 2GB.
|
|
616 </para>
|
|
617
|
|
618 <para>
|
|
619 Są trzy sposoby aby uniknąć tego. Możesz spróbować zakodować jeszcze raz używająć
|
|
620 <option>vqscale=4</option> i zobaczyć czy wielkość i jakość pliku wynikowego są
|
|
621 zadowalające. Możesz także spróbować
|
|
622 <link linkend="menc-feat-divx4">kodowania 2przebiegowego</link>.
|
|
623 Gdy będziesz kopiował scieżkę dźwiękową automatycznie będziesz znał jej
|
|
624 bitrate, znasz także długość filmu, możesz więc obliczyć potrzebny bitrate
|
|
625 aby przekazać go opcji <option>-lavcopts vbitrate=<replaceable>bitrate</replaceable></option>
|
|
626 bez używania <link linkend="menc-feat-divx4">kodowania 3przebieowego</link>.
|
|
627 </para>
|
|
628
|
|
629 <para>
|
|
630 Trzecią i prawdopodobnie najlepszą opcją będzie lekkie zeskalowanie rozdzielczości.
|
|
631 Lekkie zmiękczenie obrazu i stracenie setali jest bardziej przyjazne dla oka niż
|
|
632 artefakty powodowane przez kompresję MPEG. Zeskalowywanie wydajnie redukuje szumy obrazy
|
|
633 ,co jest dobre, ponieważ szumy się ciężko kompresuje.
|
|
634 </para>
|
|
635
|
|
636 </sect2>
|
|
637
|
|
638 <sect2 id="menc-feat-dvd-mpeg4-deinterlacing">
|
|
639 <title>Usuwanie przeplotu</title>
|
|
640 <para>
|
|
641 Jeżeli film ma przeplot, możesz chcieć go zlikwidować podczas ripowania.
|
|
642 Jest to kwestia dyskusyjna czy usuwanie przeplotu powinno być robione
|
|
643 na tym etapie. Zaletą jest to że usuwanie przeplotu podczas konwertowania do
|
|
644 MPEG4 polepsza kompresje, ułatwia oglądanie które jest mniej zasobożerne na
|
|
645 monitorach komputerowych. <!-- aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -->
|
|
646 </para>
|
|
647
|
|
648 <para>
|
|
649 Czy usuwanie przeplotu na etapie ripowania jest dobrym pomysłem zależy od
|
|
650 DVD. Jeżeli DVD zostało zrobione z filmu nakręconego w prędkości 24 fps (przyp. tłum. ramek
|
|
651 na sekundę), możesz ze spokojem usunąć przeplot w czasie ripowania.
|
|
652 Jednakże jeśli prędkość orginlanego filmu wynosiła 50/60 fps, konwertowanie go
|
|
653 do video 23.976/25 fps bez przeplotu, nie będzie dobry pomysłem, ponieważ skutkiem
|
|
654 takiego procesu będzie strata informacji. <!-- If, however, the original was 50/60 fps video, converting into deinterlaced 23.976/25 fps video will lose information. -->
|
|
655 If you do decide to interlace, you can further
|
|
656 experiment with different deinterlacing filters. See
|
|
657 <ulink url="http://www.wieser-web.de/MPlayer/">http://www.wieser-web.de/MPlayer/</ulink>
|
|
658 for examples. A good starting point is <option>-vf pp=fd</option>.
|
|
659 </para>
|
|
660
|
|
661 <para>
|
|
662 Jeżeli naraz kadrujesz i usuwasz przeplot, to usuń przeplot
|
|
663 <emphasis>przed</emphasis> kadrowaniem. Aktualnie, nie jest to konieczne
|
|
664 gdy wertykalny offset kadrowania jest podzielny przez 2. Jednakże z innymi filtrami
|
|
665 ,takimi jak dering, kadrowanie powinno być ostatnie, dlatego jest to dobrym
|
|
666 przyzwyczajeniem aby ustawiać kadrowanie jako ostatnie.
|
|
667 </para></sect2>
|
|
668
|
|
669 <sect2 id="menc-feat-dvd-mpeg4-telecine">
|
|
670 <title>Odwrócone telecine</title>
|
|
671 <para>
|
|
672 Jeśli ripujesz DVD w formacie PAL, które jest 25 fps, nie musisz myśleć o fps'ach
|
|
673 (ramkach na sekunde - przyp. tłum.). Użyj poprostu 25 fps. Z drugiej strony DVD w
|
|
674 formacie NTSC są 29.97 fps (zakrąglone zazwyczaj od 30 fps, ale to nie jest prawda).
|
|
675 Jeżeli film był nakręcony dla TV, znów nie musisz dotykać się do fps'ów.
|
|
676 Ale jeśli film został nakręcony na taśmie, pociąga to sa sobą, że miał
|
|
677 (dokładnie) 24 fps i zostal przekonwertowany podczas tworzenia DVD do 29.97 fps.
|
|
678 Konwersja, gdzie do każdej z 24 ramek filmu dodaje sie 12 pól, nazywa sie telecine.
|
|
679 Aby wiecej sie dowiedzieć o telecine zobacz
|
|
680 <ulink url="http://www.google.com/search?q=telecine+field+23.976">
|
|
681 Wyniki szukania (Google) "telecine field 23.976"</ulink>.
|
|
682 </para>
|
|
683
|
|
684 <para>
|
|
685 W przypadku gdy masz takie ztelecinowane DVD, będziesz chciał
|
|
686 odwrócić telecine, tzn. konwertować film do 23.976 (29.97*4/5).
|
|
687 Inaczej panning kamery będzie wyglądał brzydko i głupio.
|
|
688 Do tego celu możesz użyć opcji <option>-ofps 23.976</option>.
|
|
689 Wszystko co jest pokazywane w kinach jest nakręcone na taśmie i potrzebuje
|
|
690 odwróconego telecine, programy telewizyjne natomiast nie.
|
|
691 </para></sect2>
|
|
692
|
|
693 <sect2 id="menc-feat-dvd-mpeg4-scaling">
|
|
694 <title>Skalowanie i proporcje obrazu (aspect ratio)</title>
|
|
695 <para>
|
|
696 Aby uzyskać najlepszą jakość nie skaluj podczas ripowania.
|
|
697 Zeskalowywanie w dół powoduje strate detali, a skalowanie w górę
|
|
698 skutkuje pojawieniem się artefaktów i zwiększa rozmiar pliku.
|
|
699 Piksele w filmach DVD nie są kwadratowe, a więc filmy DVD zawierają informacje
|
|
700 o poprawnej proporcji obrazu. Jest możliwe aby przechowywać tę informacje w
|
|
701 nagłówku wynikowego pliku MPEG4. Większość odtwarzaczy video ignoruje
|
|
702 tę informacje, ale <application>MPlayer</application> honoruje ją.
|
|
703 Więc jeśli zamierzasz używać tylko <application>MPlayer</application>
|
|
704 do odtwarzania zripowanego pliku, nie musisz skalować filmu, poprostu przekaż
|
|
705 opcję <option>-lavcopts autoaspect</option> do
|
|
706 <application>MEncoder</application>a i wszystko automagiczne będzie działać.
|
|
707 Jeśli musisz skalować, bądź ostrożny aby uzyskać poprawny rozmiar obrazu szczególnie gdy kadrujesz.
|
|
708 </para>
|
|
709 </sect2>
|
|
710
|
|
711 <sect2 id="menc-feat-dvd-mpeg4-summary">
|
|
712 <title>Podsumowanie</title>
|
|
713 <para>
|
|
714 Podsumowując wszystko, dobrą kodującą komendą może być:
|
|
715
|
|
716 <screen>
|
|
717 mencoder dvd://1 -aid 128 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vqscale=3:vhq:v4mv:trell:autoaspect \
|
|
718 -ofps 23.976 -vf crop=720:364:0:56 -o Harry_Potter_2.avi
|
|
719 </screen>
|
|
720
|
|
721 <option>dvd://1</option> wskazuje na tytuł DVD do zripowania. Opcja
|
|
722 <option>-aid 128</option> mówi aby użyć 128ej scieżki audio, i
|
|
723 <option>-oac copy</option> skopiować ją bez zmian. Będziesz musiał użyć
|
|
724 <application>MPlayer</application>a aby znaleźć poprawne wartości do tych opcji.
|
|
725 </para>
|
|
726
|
|
727 <para>
|
|
728 Opcje <option>vhq:v4mv:trell</option> do
|
|
729 <option>-lavcopts</option> poprawiają jakość vs. bitrate, ale przedłużąją kodowanie.
|
|
730 Szczególnie opcja <option>trell</option> zwalnia kodowanie znacząco ale też zauważalnie
|
|
731 poprawia jakość. Jeżeli chcesz usunąć przeplot dodaj filtr <option>pp</option> do
|
|
732 <option>-vf</option>, na przykład:
|
|
733 <option>-vf pp=fd,crop=720:364:0:56</option> (w takiej kolejności). Jeśli nie potrzebujesz
|
|
734 odwróconego telecine, zostaw <option>-ofps 23.976</option>.
|
|
735 </para>
|
|
736 </sect2>
|
|
737
|
|
738 </sect1>
|
|
739
|
11722
|
740 </chapter>
|