annotate DOCS/xml/en/encoding-guide.xml @ 16558:1d524afe2f9c

Nits and fixes
author gpoirier
date Fri, 23 Sep 2005 06:47:07 +0000
parents 4a9808f6cacc
children 0e73f31bfc6a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1 <?xml version="1.0" encoding="iso-8859-1"?>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2 <!-- $Revision$ -->
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3 <chapter id="encoding-guide">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4 <title>Encoding with <application>MEncoder</application></title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
5
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
6 <sect1 id="menc-feat-dvd-mpeg4">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
7 <title>Making a high quality MPEG-4 (&quot;DivX&quot;) rip of a DVD movie</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
8
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
9 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
10 One frequently asked question is "How do I make the highest quality rip for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
11 a given size?". Another question is "How do I make the highest quality DVD
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
12 rip possible? I do not care about file size, I just want the best quality."
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
13 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
14
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
15 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
16 The latter question is perhaps at least somewhat wrongly posed. After all, if
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
17 you do not care about file size, why not simply copy the entire MPEG-2 video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
18 stream from the the DVD? Sure, your AVI will end up being 5GB, give
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
19 or take, but if you want the best quality and do not care about size,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
20 this is certainly your best option.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
21 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
22
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
23 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
24 In fact, the reason you want to transcode a DVD into MPEG-4 is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
25 specifically because you <emphasis role="bold">do</emphasis> care about
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
26 file size.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
27 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
28
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
29 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
30 It is difficult to offer a cookbook recipe on how to create a very high
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
31 quality DVD rip. There are several factors to consider, and you should
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
32 understand these details or else you are likely to end up disappointed
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
33 with your results. Below we will investigate some of these issues, and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
34 then have a look at an example. We assume you are using
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
35 <systemitem class="library">libavcodec</systemitem> to encode the video,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
36 although the theory applies to other codecs as well.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
37 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
38
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
39 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
40 If this seems to be too much for you, you should probably use one of the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
41 many fine frontends that are listed in the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
42 <ulink url="http://mplayerhq.hu/homepage/design7/projects.html#mencoder_frontends">MEncoder section</ulink>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
43 of our related projects page.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
44 That way, you should be able to achieve high quality rips without too much
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
45 thinking, because most of those tools are designed to take clever decisions
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
46 for you.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
47 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
48
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
49 <sect2 id="menc-feat-dvd-mpeg4-preparing-encode">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
50 <title>Preparing to encode: Identifying source material and framerate</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
51 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
52 Before you even think about encoding a movie, you need to take
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
53 several preliminary steps.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
54 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
55
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
56 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
57 The first and most important step before you encode should be
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
58 determining what type of content you are dealing with.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
59 If your source material comes from DVD or broadcast/cable/satellite
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
60 TV, it will be stored in one of two formats: NTSC for North
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
61 America and Japan, PAL for Europe, etc.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
62 It is important to realize, however, that this is just the formatting for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
63 presentation on a television, and often does
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
64 <emphasis role="bold">not</emphasis> correspond to the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
65 original format of the movie.
16229
45b339e1b93b grammar/phrasing fixes on the recent NTSC and telecine commit
wanderer
parents: 16225
diff changeset
66 Experience shows that NTSC material is a lot more difficult to encode,
45b339e1b93b grammar/phrasing fixes on the recent NTSC and telecine commit
wanderer
parents: 16225
diff changeset
67 because there more elements to identify in the source.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
68 In order to produce a suitable encode, you need to know the original
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
69 format.
16229
45b339e1b93b grammar/phrasing fixes on the recent NTSC and telecine commit
wanderer
parents: 16225
diff changeset
70 Failure to take this into account will result in various flaws in your
45b339e1b93b grammar/phrasing fixes on the recent NTSC and telecine commit
wanderer
parents: 16225
diff changeset
71 encode, including ugly combing (interlacing) artifacts and duplicated
45b339e1b93b grammar/phrasing fixes on the recent NTSC and telecine commit
wanderer
parents: 16225
diff changeset
72 or even lost frames.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
73 Besides being ugly, the artifacts also harm coding efficiency:
16229
45b339e1b93b grammar/phrasing fixes on the recent NTSC and telecine commit
wanderer
parents: 16225
diff changeset
74 You will get worse quality per unit bitrate.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
75 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
76
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
77 <sect3 id="menc-feat-dvd-mpeg4-preparing-encode-fps">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
78 <title>Identifying source framerate</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
79 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
80 Here is a list of common types of source material, where you are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
81 likely to find them, and their properties:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
82 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
83 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
84 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
85 <emphasis role="bold">Standard Film</emphasis>: Produced for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
86 theatrical display at 24fps.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
87 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
88 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
89 <emphasis role="bold">PAL video</emphasis>: Recorded with a PAL
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
90 video camera at 50 fields per second.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
91 A field consists of just the odd- or even-numbered lines of a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
92 frame.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
93 Television was designed to refresh these in alternation as a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
94 cheap form of analog compression.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
95 The human eye supposedly compensates for this, but once you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
96 understand interlacing you will learn to see it on TV too and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
97 never enjoy TV again.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
98 Two fields do <emphasis role="bold">not</emphasis> make a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
99 complete frame, because they are captured 1/50 of a second apart
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
100 in time, and thus they do not line up unless there is no motion.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
101 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
102 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
103 <emphasis role="bold">NTSC Video</emphasis>: Recorded with an
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
104 NTSC video camera at 60000/1001 fields per second, or 60 fields per
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
105 second in the pre-color era.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
106 Otherwise similar to PAL.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
107 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
108 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
109 <emphasis role="bold">Animation</emphasis>: Usually drawn at
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
110 24fps, but also comes in mixed-framerate varieties.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
111 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
112 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
113 <emphasis role="bold">Computer Graphics (CG)</emphasis>: Can be
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
114 any framerate, but some are more common than others; 24 and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
115 30 frames per second are typical for NTSC, and 25fps is typical
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
116 for PAL.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
117 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
118 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
119 <emphasis role="bold">Old Film</emphasis>: Various lower
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
120 framerates.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
121 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
122 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
123 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
124
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
125 <sect3 id="menc-feat-dvd-mpeg4-preparing-encode-material">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
126 <title>Identifying source material</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
127 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
128 Movies consisting of frames are referred to as progressive,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
129 while those consisting of independent fields are called
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
130 either interlaced or video - though this latter term is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
131 ambiguous.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
132 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
133 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
134 To further complicate matters, some movies will be a mix of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
135 several of the above.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
136 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
137 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
138 The most important distinction to make between all of these
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
139 formats is that some are frame-based, while others are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
140 field-based.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
141 <emphasis role="bold">Whenever</emphasis> a movie is prepared
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
142 for display on television (including DVD), it is converted to a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
143 field-based format.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
144 The various methods by which this can be done are collectively
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
145 referred to as "pulldown", of which the infamous NTSC
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
146 "3:2 telecine" is one variety.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
147 Unless the original material was also field-based (and the same
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
148 fieldrate), you are getting the movie in a format other than the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
149 original.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
150 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
151
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
152 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
153 <title>There are several common types of pulldown:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
154 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
155 <emphasis role="bold">PAL 2:2 pulldown</emphasis>: The nicest of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
156 them all.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
157 Each frame is shown for the duration of two fields, by extracting the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
158 even and odd lines and showing them in alternation.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
159 If the original material is 24fps, this process speeds up the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
160 movie by 4%.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
161 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
162 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
163 <emphasis role="bold">PAL 2:2:2:2:2:2:2:2:2:2:2:3 pulldown</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
164 Every 12th frame is shown for the duration of three fields, instead of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
165 just two.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
166 This avoids the 4% speedup issue, but makes the process much
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
167 more difficult to reverse.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
168 It is usually seen in musical productions where adjusting the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
169 speed by 4% would seriously damage the musical score.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
170 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
171 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
172 <emphasis role="bold">NTSC 3:2 telecine</emphasis>: Frames are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
173 shown alternately for the duration of 3 fields or 2 fields.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
174 This gives a fieldrate 2.5 times the original framerate.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
175 The result is also slowed down very slightly from 60 fields per
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
176 second to 60000/1001 fields per second to maintain NTSC fieldrate.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
177 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
178 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
179 <emphasis role="bold">NTSC 2:2 pulldown</emphasis>: Used for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
180 showing 30fps material on NTSC.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
181 Nice, just like 2:2 PAL pulldown.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
182 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
183 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
184
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
185 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
186 There are also methods for converting between NTSC and PAL video,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
187 but such topics are beyond the scope of this guide.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
188 If you encounter such a movie and want to encode it, your best
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
189 bet is to find a copy in the original format.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
190 Conversion between these two formats is highly destructive and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
191 cannot be reversed cleanly, so your encode will greatly suffer
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
192 if it is made from a converted source.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
193 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
194 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
195 When video is stored on DVD, consecutive pairs of fields are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
196 grouped as a frame, even though they are not intended to be shown
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
197 at the same moment in time.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
198 The MPEG-2 standard used on DVD and digital TV provides a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
199 way both to encode the original progressive frames and to store
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
200 the number of fields for which a frame should be shown in the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
201 header of that frame.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
202 If this method has been used, the movie will often be described
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
203 as "soft-telecined", since the process only directs the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
204 DVD player to apply pulldown to the movie rather than altering
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
205 the movie itself.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
206 This case is highly preferable since it can easily be reversed
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
207 (actually ignored) by the encoder, and since it preserves maximal
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
208 quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
209 However, many DVD and broadcast production studios do not use
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
210 proper encoding techniques but instead produce movies with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
211 "hard telecine", where fields are actually duplicated in the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
212 encoded MPEG-2.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
213 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
214 <para>
16225
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
215 The procedures for dealing with these cases will be covered
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
216 <link linkend="menc-feat-telecine">later in this guide</link>.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
217 For now, we leave you with some guides to identifying which type
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
218 of material you are dealing with:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
219 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
220
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
221 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
222 <title>NTSC regions:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
223 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
224 If <application>MPlayer</application> prints that the framerate
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
225 has changed to 24000/1001 when watching your movie, and never changes
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
226 back, it is almost certainly progressive content that has been
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
227 "soft telecined".
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
228 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
229 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
230 If <application>MPlayer</application> shows the framerate
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
231 switching back and forth between 24000/1001 and 30000/1001, and you see
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
232 "combing" at times, then there are several possibilities.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
233 The 24000/1001 fps segments are almost certainly progressive
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
234 content, "soft telecined", but the 30000/1001 fps parts could be
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
235 either hard-telecined 24000/1001 fps content or 60000/1001 fields per second NTSC video.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
236 Use the same guidelines as the following two cases to determine
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
237 which.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
238 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
239 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
240 If <application>MPlayer</application> never shows the framerate
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
241 changing, and every single frame with motion appears combed, your
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
242 movie is NTSC video at 60000/1001 fields per second.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
243 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
244 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
245 If <application>MPlayer</application> never shows the framerate
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
246 changing, and two frames out of every five appear combed, your
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
247 movie is "hard telecined" 24000/1001fps content.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
248 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
249 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
250
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
251 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
252 <title>PAL regions:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
253 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
254 If you never see any combing, your movie is 2:2 pulldown.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
255 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
256 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
257 If you see combing alternating in and out every half second,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
258 then your movie is 2:2:2:2:2:2:2:2:2:2:2:3 pulldown.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
259 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
260 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
261 If you always see combing during motion, then your movie is PAL
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
262 video at 50 fields per second.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
263 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
264 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
265
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
266 <note><title>Hint:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
267 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
268 <application>MPlayer</application> can slow down movie playback
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
269 with the -speed option or play it frame-by-frame.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
270 Try using <option>-speed</option> 0.2 to watch the movie very
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
271 slowly or press the "<keycap>.</keycap>" key repeatedly to play one frame at a time
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
272 and identify the pattern, if you cannot see it at full speed.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
273 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
274 </note>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
275 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
276 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
277
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
278 <sect2 id="menc-feat-dvd-mpeg4-2pass">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
279 <title>Constant quantizer vs. multipass</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
280
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
281 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
282 It is possible to encode your movie at a wide range of qualities.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
283 With modern video encoders and a bit of pre-codec compression
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
284 (downscaling and denoising), it is possible to achieve very good
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
285 quality at 700 MB, for a 90-110 minute widescreen movie.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
286 Furthermore, all but the longest movies can be encoded with near-perfect
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
287 quality at 1400 MB.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
288 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
289
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
290 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
291 There are three approaches to encoding the video: constant bitrate
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
292 (CBR), constant quantizer, and multipass (ABR, or average bitrate).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
293 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
294
16202
24c28ac0aa68 Why multipass is better in a nutshell. Taken from Rich's encoding guide.
gpoirier
parents: 16178
diff changeset
295 <para>
16218
e759a0e8e01a grammar/phrasing fix, still less than ideal
wanderer
parents: 16203
diff changeset
296 The complexity of the frames of a movie, and thus the number of bits
e759a0e8e01a grammar/phrasing fix, still less than ideal
wanderer
parents: 16203
diff changeset
297 required to compress them, can vary greatly from one scene to another.
16202
24c28ac0aa68 Why multipass is better in a nutshell. Taken from Rich's encoding guide.
gpoirier
parents: 16178
diff changeset
298 Modern video encoders can adjust to these needs as they go and vary
24c28ac0aa68 Why multipass is better in a nutshell. Taken from Rich's encoding guide.
gpoirier
parents: 16178
diff changeset
299 the bitrate.
16218
e759a0e8e01a grammar/phrasing fix, still less than ideal
wanderer
parents: 16203
diff changeset
300 In simple modes such as CBR, however, the encoders do not know the
e759a0e8e01a grammar/phrasing fix, still less than ideal
wanderer
parents: 16203
diff changeset
301 bitrate needs of future scenes and so cannot exceed the requested
e759a0e8e01a grammar/phrasing fix, still less than ideal
wanderer
parents: 16203
diff changeset
302 average bitrate for long stretches of time.
e759a0e8e01a grammar/phrasing fix, still less than ideal
wanderer
parents: 16203
diff changeset
303 More advanced modes, such as multipass encode, can take into account
e759a0e8e01a grammar/phrasing fix, still less than ideal
wanderer
parents: 16203
diff changeset
304 the statistics from previous passes; this fixes the problem mentioned
16202
24c28ac0aa68 Why multipass is better in a nutshell. Taken from Rich's encoding guide.
gpoirier
parents: 16178
diff changeset
305 above.
24c28ac0aa68 Why multipass is better in a nutshell. Taken from Rich's encoding guide.
gpoirier
parents: 16178
diff changeset
306 </para>
24c28ac0aa68 Why multipass is better in a nutshell. Taken from Rich's encoding guide.
gpoirier
parents: 16178
diff changeset
307
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
308 <note><title>Note:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
309 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
310 Most codecs which support ABR encode only support two pass encode
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
311 while some others such as <systemitem class="library">x264</systemitem>,
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
312 <systemitem class="library">XviD</systemitem>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
313 and <systemitem class="library">libavcodec</systemitem> support
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
314 multipass, which slightly improves quality at each pass,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
315 yet this improvement is no longer measurable nor noticeable after the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
316 4th or so pass.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
317 Therefore, in this section, two pass and multipass will be used
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
318 interchangeably.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
319 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
320 </note>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
321
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
322 <para>
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
323 In each of these modes, the video codec (such as
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
324 <systemitem class="library">libavcodec</systemitem>)
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
325 breaks the video frame into 16x16 pixel macroblocks and then applies a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
326 quantizer to each macroblock. The lower the quantizer, the better the
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
327 quality and higher the bitrate.
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
328 The method the movie encoder uses to determine
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
329 which quantizer to use for a given macroblock varies and is highly
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
330 tunable. (This is an extreme over-simplification of the actual
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
331 process, but the basic concept is useful to understand.)
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
332 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
333
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
334 <para>
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
335 When you specify a constant bitrate, the video codec will encode the video,
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
336 discarding
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
337 detail as much as necessary and as little as possible in order to remain
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
338 lower than the given bitrate. If you truly do not care about file size,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
339 you could as well use CBR and specify a bitrate of infinity. (In
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
340 practice, this means a value high enough so that it poses no limit, like
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
341 10000Kbit.) With no real restriction on bitrate, the result is that
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
342 the codec will use the lowest
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
343 possible quantizer for each macroblock (as specified by
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
344 <option>vqmin</option> for
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
345 <systemitem class="library">libavcodec</systemitem>, which is 2 by default).
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
346 As soon as you specify a
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
347 low enough bitrate that the codec
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
348 is forced to use a higher quantizer, then you are almost certainly ruining
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
349 the quality of your video.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
350 In order to avoid that, you should probably downscale your video, according
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
351 to the method described later on in this guide.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
352 In general, you should avoid CBR altogether if you care about quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
353 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
354
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
355 <para>
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
356 With constant quantizer, the codec uses the same quantizer, as
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
357 specified by the <option>vqscale</option> option (for
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
358 <systemitem class="library">libavcodec</systemitem>), on every macroblock.
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
359 If you want the highest quality rip possible, again ignoring bitrate,
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
360 you can use <option>vqscale=2</option>.
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
361 This will yield the same bitrate and PSNR (peak signal-to-noise ratio)
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
362 as CBR with
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
363 <option>vbitrate</option>=infinity and the default <option>vqmin</option>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
364 of 2.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
365 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
366
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
367 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
368 The problem with constant quantizing is that it uses the given quantizer
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
369 whether the macroblock needs it or not. That is, it might be possible
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
370 to use a higher quantizer on a macroblock without sacrificing visual
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
371 quality. Why waste the bits on an unnecessarily low quantizer? Your
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
372 CPU has as many cycles as there is time, but there is only so many bits
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
373 on your hard disk.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
374 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
375
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
376 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
377 With a two pass encode, the first pass will rip the movie as though it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
378 were CBR, but it will keep a log of properties for each frame. This
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
379 data is then used during the second pass in order to make intelligent
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
380 decisions about which quantizers to use. During fast action or low
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
381 detail scenes, higher quantizers will likely be used, and during
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
382 slow moving or high detail scenes, lower quantizers will be used.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
383 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
384
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
385 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
386 If you use <option>vqscale=2</option>, then you are wasting bits. If you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
387 use <option>vqscale=3</option>, then you are not getting the highest
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
388 quality rip. Suppose you rip a DVD at <option>vqscale=3</option>, and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
389 the result is 1800Kbit. If you do a two pass encode with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
390 <option>vbitrate=1800</option>, the resulting video will have <emphasis
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
391 role="bold">higher quality</emphasis> for the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
392 <emphasis role="bold">same bitrate</emphasis>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
393 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
394
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
395 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
396 Since you are now convinced that two pass is the way to go, the real
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
397 question now is what bitrate to use? The answer is that there is no
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
398 single answer. Ideally you want to choose a bitrate that yields the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
399 best balance between quality and file size. This is going to vary
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
400 depending on the source video.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
401 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
402
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
403 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
404 If size does not matter, a good starting point for a very high quality
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
405 rip is about 2000Kbit plus or minus 200Kbit.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
406 For fast action or high detail source video, or if you just have a very
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
407 critical eye, you might decide on 2400 or 2600.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
408 For some DVDs, you might not notice a difference at 1400Kbit. It is a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
409 good idea to experiment with scenes at different bitrates to get a feel.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
410 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
411
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
412 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
413 If you aim at a certain size, you will have to somehow calculate the bitrate.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
414 But before that, you need to know how much space you should reserve for the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
415 audio track(s), so you should <link linkend="menc-feat-dvd-mpeg4-audio">rip
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
416 those</link> first.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
417 You can compute the bitrate with the following equation:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
418 <systemitem>bitrate = (target_size_in_Mbytes - sound_size_in_Mbytes) *
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
419 1024 * 1024 / length_in_secs * 8 / 1000</systemitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
420 For instance, to squeeze a two-hour movie onto a 702MB CD, with 60MB
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
421 of audio track, the video bitrate will have to be:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
422 <systemitem>(702 - 60) * 1024 * 1024 / (120*60) * 8 / 1000
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
423 = 740kbps</systemitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
424 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
425
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
426 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
427
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
428
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
429 <sect2 id="menc-feat-dvd-mpeg4-constraints">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
430 <title>Constraints for efficient encoding</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
431
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
432 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
433 Due to the nature of MPEG-type compression, there are various
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
434 constraints you should follow for maximal quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
435 MPEG splits the video up into 16x16 squares called macroblocks,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
436 each composed of 4 8x8 blocks of luma (intensity) information and two
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
437 half-resolution 8x8 chroma (color) blocks (one for red-cyan axis and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
438 the other for the blue-yellow axis).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
439 Even if your movie width and height are not multiples of 16, the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
440 encoder will use enough 16x16 macroblocks to cover the whole picture
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
441 area, and the extra space will go to waste.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
442 So in the interests of maximizing quality at a fixed filesize, it is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
443 a bad idea to use dimensions that are not multiples of 16.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
444 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
445
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
446 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
447 Most DVDs also have some degree of black borders at the edges. Leaving
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
448 these in place can hurt quality in several ways.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
449 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
450
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
451 <orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
452 <listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
453 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
454 MPEG-type compression is also highly dependent on frequency domain
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
455 transformations, in particular the Discrete Cosine Transform (DCT),
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
456 which is similar to the Fourier transform. This sort of encoding is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
457 efficient for representing patterns and smooth transitions, but it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
458 has a hard time with sharp edges. In order to encode them it must
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
459 use many more bits, or else an artifact known as ringing will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
460 appear.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
461 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
462
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
463 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
464 The frequency transform (DCT) takes place separately on each
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
465 macroblock (actually each block), so this problem only applies when
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
466 the sharp edge is inside a block. If your black borders begin
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
467 exactly at multiple-of-16 pixel boundaries, this is not a problem.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
468 However, the black borders on DVDs rarely come nicely aligned, so
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
469 in practice you will always need to crop to avoid this penalty.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
470 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
471 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
472 </orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
473
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
474 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
475 In addition to frequency domain transforms, MPEG-type compression uses
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
476 motion vectors to represent the change from one frame to the next.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
477 Motion vectors naturally work much less efficiently for new content
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
478 coming in from the edges of the picture, because it is not present in
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
479 the previous frame. As long as the picture extends all the way to the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
480 edge of the encoded region, motion vectors have no problem with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
481 content moving out the edges of the picture. However, in the presence
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
482 of black borders, there can be trouble:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
483 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
484
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
485 <orderedlist continuation="continues">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
486 <listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
487 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
488 For each macroblock, MPEG-type compression stores a vector
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
489 identifying which part of the previous frame should be copied into
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
490 this macroblock as a base for predicting the next frame. Only the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
491 remaining differences need to be encoded. If a macroblock spans the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
492 edge of the picture and contains part of the black border, then
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
493 motion vectors from other parts of the picture will overwrite the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
494 black border. This means that lots of bits must be spent either
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
495 re-blackening the border that was overwritten, or (more likely) a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
496 motion vector will not be used at all and all the changes in this
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
497 macroblock will have to be coded explicitly. Either way, encoding
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
498 efficiency is greatly reduced.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
499 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
500
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
501 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
502 Again, this problem only applies if black borders do not line up on
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
503 multiple-of-16 boundaries.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
504 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
505 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
506
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
507 <listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
508 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
509 Finally, suppose we have a macroblock in the interior of the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
510 picture, and an object is moving into this block from near the edge
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
511 of the image. MPEG-type coding cannot say "copy the part that is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
512 inside the picture but not the black border." So the black border
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
513 will get copied inside too, and lots of bits will have to be spent
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
514 encoding the part of the picture that is supposed to be there.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
515 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
516
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
517 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
518 If the picture runs all the way to the edge of the encoded area,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
519 MPEG has special optimizations to repeatedly copy the pixels at the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
520 edge of the picture when a motion vector comes from outside the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
521 encoded area. This feature becomes useless when the movie has black
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
522 borders. Unlike problems 1 and 2, aligning the borders at multiples
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
523 of 16 does not help here.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
524 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
525 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
526
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
527 <listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
528 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
529 Despite the borders being entirely black and never changing, there
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
530 is at least a minimal amount of overhead involved in having more
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
531 macroblocks.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
532 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
533 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
534 </orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
535
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
536 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
537 For all of these reasons, it is recommended to fully crop black
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
538 borders. Further, if there is an area of noise/distortion at the edge
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
539 of the picture, cropping this will improve encoding efficiency as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
540 well. Videophile purists who want to preserve the original as close as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
541 possible may object to this cropping, but unless you plan to encode at
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
542 constant quantizer, the quality you gain from cropping will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
543 considerably exceed the amount of information lost at the edges.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
544 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
545 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
546
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
547
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
548 <sect2 id="menc-feat-dvd-mpeg4-crop">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
549 <title>Cropping and Scaling</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
550
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
551 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
552 Recall from the previous section that the final picture size you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
553 encode should be a multiple of 16 (in both width and height).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
554 This can be achieved by cropping, scaling, or a combination of both.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
555 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
556
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
557 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
558 When cropping, there are a few guidelines that must be followed to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
559 avoid damaging your movie.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
560 The normal YUV format, 4:2:0, stores chroma (color) information
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
561 subsampled, i.e. chroma is only sampled half as often in each
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
562 direction as luma (intensity) information.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
563 Observe this diagram, where L indicates luma sampling points and C
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
564 chroma.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
565 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
566
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
567 <informaltable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
568 <?dbhtml table-width="40%" ?>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
569 <?dbfo table-width="40%" ?>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
570 <tgroup cols="8" align="center">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
571 <colspec colnum="1" colname="col1"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
572 <colspec colnum="2" colname="col2"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
573 <colspec colnum="3" colname="col3"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
574 <colspec colnum="4" colname="col4"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
575 <colspec colnum="5" colname="col5"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
576 <colspec colnum="6" colname="col6"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
577 <colspec colnum="7" colname="col7"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
578 <colspec colnum="8" colname="col8"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
579 <spanspec spanname="spa1-2" namest="col1" nameend="col2"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
580 <spanspec spanname="spa3-4" namest="col3" nameend="col4"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
581 <spanspec spanname="spa5-6" namest="col5" nameend="col6"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
582 <spanspec spanname="spa7-8" namest="col7" nameend="col8"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
583 <tbody>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
584 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
585 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
586 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
587 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
588 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
589 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
590 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
591 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
592 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
593 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
594 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
595 <entry spanname="spa1-2">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
596 <entry spanname="spa3-4">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
597 <entry spanname="spa5-6">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
598 <entry spanname="spa7-8">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
599 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
600 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
601 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
602 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
603 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
604 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
605 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
606 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
607 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
608 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
609 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
610 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
611 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
612 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
613 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
614 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
615 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
616 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
617 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
618 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
619 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
620 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
621 <entry spanname="spa1-2">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
622 <entry spanname="spa3-4">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
623 <entry spanname="spa5-6">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
624 <entry spanname="spa7-8">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
625 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
626 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
627 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
628 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
629 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
630 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
631 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
632 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
633 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
634 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
635 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
636 </tbody>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
637 </tgroup>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
638 </informaltable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
639
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
640 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
641 As you can see, rows and columns of the image naturally come in pairs.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
642 Thus your crop offsets and dimensions <emphasis>must</emphasis> be
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
643 even numbers.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
644 If they are not, the chroma will no longer line up correctly with the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
645 luma.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
646 In theory, it is possible to crop with odd offsets, but it requires
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
647 resampling the chroma which is potentially a lossy operation and not
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
648 supported by the crop filter.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
649 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
650
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
651 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
652 Further, interlaced video is sampled as follows:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
653 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
654
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
655 <informaltable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
656 <?dbhtml table-width="80%" ?>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
657 <?dbfo table-width="80%" ?>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
658 <tgroup cols="16" align="center">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
659 <colspec colnum="1" colname="col1"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
660 <colspec colnum="2" colname="col2"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
661 <colspec colnum="3" colname="col3"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
662 <colspec colnum="4" colname="col4"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
663 <colspec colnum="5" colname="col5"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
664 <colspec colnum="6" colname="col6"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
665 <colspec colnum="7" colname="col7"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
666 <colspec colnum="8" colname="col8"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
667 <colspec colnum="9" colname="col9"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
668 <colspec colnum="10" colname="col10"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
669 <colspec colnum="11" colname="col11"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
670 <colspec colnum="12" colname="col12"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
671 <colspec colnum="13" colname="col13"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
672 <colspec colnum="14" colname="col14"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
673 <colspec colnum="15" colname="col15"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
674 <colspec colnum="16" colname="col16"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
675 <spanspec spanname="spa1-2" namest="col1" nameend="col2"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
676 <spanspec spanname="spa3-4" namest="col3" nameend="col4"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
677 <spanspec spanname="spa5-6" namest="col5" nameend="col6"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
678 <spanspec spanname="spa7-8" namest="col7" nameend="col8"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
679 <spanspec spanname="spa9-10" namest="col9" nameend="col10"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
680 <spanspec spanname="spa11-12" namest="col11" nameend="col12"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
681 <spanspec spanname="spa13-14" namest="col13" nameend="col14"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
682 <spanspec spanname="spa15-16" namest="col15" nameend="col16"/>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
683 <tbody>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
684 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
685 <entry namest="col1" nameend="col8">Top field</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
686 <entry namest="col9" nameend="col16">Bottom field</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
687 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
688 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
689 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
690 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
691 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
692 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
693 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
694 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
695 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
696 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
697 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
698 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
699 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
700 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
701 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
702 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
703 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
704 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
705 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
706 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
707 <entry spanname="spa1-2">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
708 <entry spanname="spa3-4">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
709 <entry spanname="spa5-6">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
710 <entry spanname="spa7-8">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
711 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
712 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
713 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
714 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
715 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
716 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
717 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
718 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
719 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
720 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
721 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
722 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
723 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
724 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
725 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
726 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
727 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
728 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
729 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
730 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
731 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
732 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
733 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
734 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
735 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
736 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
737 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
738 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
739 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
740 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
741 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
742 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
743 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
744 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
745 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
746 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
747 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
748 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
749 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
750 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
751 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
752 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
753 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
754 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
755 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
756 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
757 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
758 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
759 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
760 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
761 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
762 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
763 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
764 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
765 <entry spanname="spa9-10">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
766 <entry spanname="spa11-12">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
767 <entry spanname="spa13-14">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
768 <entry spanname="spa15-16">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
769 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
770 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
771 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
772 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
773 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
774 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
775 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
776 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
777 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
778 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
779 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
780 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
781 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
782 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
783 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
784 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
785 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
786 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
787 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
788 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
789 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
790 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
791 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
792 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
793 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
794 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
795 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
796 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
797 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
798 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
799 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
800 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
801 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
802 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
803 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
804 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
805 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
806 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
807 <entry spanname="spa1-2">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
808 <entry spanname="spa3-4">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
809 <entry spanname="spa5-6">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
810 <entry spanname="spa7-8">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
811 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
812 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
813 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
814 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
815 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
816 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
817 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
818 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
819 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
820 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
821 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
822 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
823 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
824 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
825 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
826 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
827 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
828 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
829 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
830 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
831 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
832 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
833 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
834 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
835 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
836 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
837 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
838 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
839 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
840 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
841 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
842 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
843 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
844 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
845 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
846 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
847 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
848 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
849 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
850 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
851 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
852 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
853 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
854 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
855 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
856 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
857 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
858 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
859 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
860 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
861 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
862 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
863 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
864 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
865 <entry spanname="spa9-10">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
866 <entry spanname="spa11-12">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
867 <entry spanname="spa13-14">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
868 <entry spanname="spa15-16">C</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
869 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
870 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
871 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
872 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
873 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
874 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
875 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
876 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
877 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
878 <entry></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
879 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
880 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
881 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
882 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
883 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
884 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
885 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
886 <entry>L</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
887 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
888 </tbody>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
889 </tgroup>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
890 </informaltable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
891
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
892 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
893 As you can see, the pattern does not repeat until after 4 lines.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
894 So for interlaced video, your y-offset and height for cropping must
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
895 be multiples of 4.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
896 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
897
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
898 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
899 Native DVD resolution is 720x480 for NTSC, and 720x576 for PAL, but
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
900 there is an aspect flag that specifies whether it is full-screen (4:3) or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
901 wide-screen (16:9). Many (if not most) widescreen DVDs are not strictly
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
902 16:9, and will be either 1.85:1 or 2.35:1 (cinescope). This means that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
903 there will be black bands in the video that will need to be cropped out.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
904 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
905
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
906 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
907 <application>MPlayer</application> provides a crop detection filter that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
908 will determine the crop rectangle (<option>-vf cropdetect</option>).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
909 Run <application>MPlayer</application> with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
910 <option>-vf cropdetect</option> and it will print out the crop
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
911 settings to remove the borders.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
912 You should let the movie run long enough that the whole picture
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
913 area is used, in order to get accurate crop values.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
914 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
915
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
916 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
917 Then, test the values you get with <application>MPlayer</application>,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
918 using the command line which was printed by
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
919 <option>cropdetect</option>, and adjust the rectangle as needed.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
920 The <option>rectangle</option> filter can help by allowing you to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
921 interactively position the crop rectangle over your movie.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
922 Remember to follow the above divisibility guidelines so that you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
923 do not misalign the chroma planes.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
924 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
925
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
926 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
927 In certain cases, scaling may be undesirable.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
928 Scaling in the vertical direction is difficult with interlaced
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
929 video, and if you wish to preserve the interlacing, you should
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
930 usually refrain from scaling.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
931 If you will not be scaling but you still want to use multiple-of-16
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
932 dimensions, you will have to overcrop.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
933 Do not undercrop, since black borders are very bad for encoding!
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
934 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
935
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
936 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
937 Because MPEG-4 uses 16x16 macroblocks, you will want to make sure that each
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
938 dimension of the video you are encoding is a multiple of 16 or else you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
939 will be degrading quality, especially at lower bitrates. You can do this
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
940 by rounding the width and height of the crop rectangle down to the nearest
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
941 multiple of 16.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
942 As stated earlier, when cropping, you will want to increase the Y offset by
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
943 half the difference of the old and the new height so that the resulting
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
944 video is taken from the center of the frame. And because of the way DVD
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
945 video is sampled, make sure the offset is an even number. (In fact, as a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
946 rule, never use odd values for any parameter when you are cropping and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
947 scaling video.) If you are not comfortable throwing a few extra pixels
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
948 away, you might prefer instead to scale the video instead. We will look
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
949 at this in our example below.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
950 You can actually let the <option>cropdetect</option> filter do all of the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
951 above for you, as it has an optional <option>round</option> parameter that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
952 is equal to 16 by default.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
953 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
954
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
955 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
956 Also, be careful about "half black" pixels at the edges. Make sure you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
957 crop these out too, or else you will be wasting bits there that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
958 are better spent elsewhere.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
959 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
960
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
961 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
962 After all is said and done, you will probably end up with video whose pixels
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
963 are not quite 1.85:1 or 2.35:1, but rather something close to that. You
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
964 could calculate the new aspect ratio manually, but
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
965 <application>MEncoder</application> offers an option for <systemitem
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
966 class="library">libavcodec</systemitem> called <option>autoaspect</option>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
967 that will do this for you. Absolutely do not scale this video up in order to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
968 square the pixels unless you like to waste your hard disk space. Scaling
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
969 should be done on playback, and the player will use the aspect stored in
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
970 the AVI to determine the correct resolution.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
971 Unfortunately, not all players enforce this auto-scaling information,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
972 therefore you may still want to rescale.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
973 </para>
16085
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
974 </sect2>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
975
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
976
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
977 <sect2 id="menc-feat-dvd-mpeg4-resolution-bitrate">
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
978 <title>Choosing resolution and bitrate</title>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
979
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
980 <para>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
981 If you will not be encoding in constant quantizer mode, you need to
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
982 select a bitrate.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
983 The concept of bitrate is quite simple.
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
984 It is the (average) number of bits that will be consumed to store your
16085
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
985 movie, per second.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
986 Normally bitrate is measured in kilobits (1000 bits) per second.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
987 The size of your movie on disk is the bitrate times the length of the
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
988 movie in time, plus a small amount of "overhead" (see the section on
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
989 <link linkend="menc-feat-dvd-mpeg4-muxing-avi-limitations">the AVI container</link>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
990 for instance).
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
991 Other parameters such as scaling, cropping, etc. will
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
992 <emphasis role="bold">not</emphasis> alter the file size unless you
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
993 change the bitrate as well!.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
994 </para>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
995 <para>
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
996 Bitrate does <emphasis role="bold">not</emphasis> scale proportionally
16085
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
997 to resolution.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
998 That is to say, a 320x240 file at 200 kbit/sec will not be the same
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
999 quality as the same movie at 640x480 and 800 kbit/sec!
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1000 There are two reasons for this:
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1001 <orderedlist>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1002 <listitem><para>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1003 <emphasis role="bold">Perceptual</emphasis>: You notice MPEG
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
1004 artifacts more if they are scaled up bigger!
16085
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1005 Artifacts appear on the scale of blocks (8x8).
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1006 Your eye will not see errors in 4800 small blocks as easily as it
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
1007 sees errors in 1200 large blocks (assuming you will be scaling both
16085
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1008 to fullscreen).
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1009 </para></listitem>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1010 <listitem><para>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1011 <emphasis role="bold">Theoretical</emphasis>: When you scale down
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1012 an image but still use the same size (8x8) blocks for the frequency
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1013 space transform, you move more data to the high frequency bands.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1014 Roughly speaking, each pixel contains more of the detail than it
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1015 did before.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1016 So even though your scaled-down picture contains 1/4 the information
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1017 in the spacial directions, it could still contain a large portion
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1018 of the information in the frequency domain (assuming that the high
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1019 frequencies were underutilized in the original 640x480 image).
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1020 </para></listitem>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1021 </orderedlist>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1022 </para>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1023 <para>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1024 Past guides have recommended choosing a bitrate and resolution based
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1025 on a "bits per pixel" approach, but this is usually not valid due to
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1026 the above reasons.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1027 A better estimate seems to be that bitrates scale proportional to the
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1028 square root of resolution, so that 320x240 and 400 kbit/sec would be
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1029 comparable to 640x480 at 800 kbit/sec.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1030 However this has not been verified with theoretical or empirical
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1031 rigor.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1032 Further, given that movies vary greatly with regard to noise, detail,
16178
28f3faf22115 Avoid short forms and libavcodec should not the that much singled out
gpoirier
parents: 16087
diff changeset
1033 degree of motion, etc., it is futile to make general recommendations
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1034 for bits per length-of-diagonal (the analog of bits per pixel,
16085
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1035 using the square root).
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1036 </para>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1037 <para>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1038 So far we have discussed the difficulty of choosing a bitrate and
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1039 resolution.
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1040 </para>
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1041
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1042
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1043 <sect3 id="menc-feat-dvd-mpeg4-resolution-bitrate-compute">
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1044 <title>Computing the resolution</title>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1045 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1046 First, you should compute the encoded aspect ratio:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1047 <systemitem>ARc = (Wc x (ARa / PRdvd )) / Hc</systemitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1048 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1049 <title>where:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1050 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1051 Wc and Hc are the width and height of the cropped video,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1052 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1053 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1054 ARa is the displayed aspect ratio, which usually is 4/3 or 16/9,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1055 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1056 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1057 PRdvd is the pixel ratio of the DVD which is equal to 1.25=(720/576) for PAL
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1058 DVDs and 1.5=(720/480) for NTSC DVDs,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1059 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1060 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1061 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1062
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1063 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1064 Then, you can compute the X and Y resolution, according to a certain
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1065 Compression Quality (CQ) factor:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1066 <systemitem>ResY = INT(SQRT( 1000*Bitrate/25/ARc/CQ )/16) * 16</systemitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1067 and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1068 <systemitem>ResX = INT( ResY * ARc / 16) * 16</systemitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1069 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1070
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1071 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1072 Okay, but what is the CQ?
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1073 The CQ represents the number of bits per pixel and per frame of the encode.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1074 Roughly speaking, the greater the CQ, the less the likelihood to see
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1075 encoding artifacts.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1076 However, if you have a target size for your movie (1 or 2 CDs for instance),
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1077 there is a limited total number of bits that you can spend; therefore it is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1078 necessary to find a good tradeoff between compressibility and quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1079 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1081 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1082 The CQ depends both on the bitrate and the movie resolution.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1083 In order to raise the CQ, typically you would downscale the movie given that the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1084 bitrate is computed in function of the target size and the length of the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1085 movie, which are constant.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1086 A CQ below 0.18 usually ends up in a very blocky picture, because there
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1087 are not enough bits to code the information of each macroblock (MPEG4, like
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1088 many other codecs, groups pixels by blocks of several pixels to compress the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1089 image; if there are not enough bits, the edges of those blocks are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1090 visible).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1091 It is therefore wise to take a CQ ranging from 0.20 to 0.22 for a 1 CD rip,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1092 and 0.26-0.28 for 2 CDs.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1093 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1094
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1095 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1096 Please take note that the CQ is just an indicative figure, as depending on
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1097 the encoded content, a CQ of 0.18 may look just fine for a Bergman, contrary
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1098 to a movie such as The Matrix, which contains many high-motion scenes.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1099 On the other hand, it is worthless to raise CQ higher than 0.30 as you would
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1100 be wasting bits without any noticeable quality gain.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1101 </para>
16085
c1dd920e736c New item: "Choosing resolution and bitrate", from Rich's encoding guide
gpoirier
parents: 16080
diff changeset
1102 </sect3>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1103
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1104 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1105
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1106 <sect2 id="menc-feat-dvd-mpeg4-filtering">
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1107 <title>Filtering</title>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1108
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1109 <para>
16087
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1110 Learning how to use <application>MEncoder</application>'s video filters
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1111 is essential to producing good encodes.
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1112 All video processing is performed through the filters -- cropping,
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1113 scaling, color adjustment, noise removal, sharpening, deinterlacing,
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1114 telecine, inverse telecine, and deblocking, just to name a few.
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1115 Along with the vast number of supported input formats, the variety of
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1116 filters available in <application>MEncoder</application> is one of its
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1117 main advantages over other similar programs.
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1118 </para>
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1119
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1120 <para>
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1121 Filters are loaded in a chain using the -vf option:
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1122
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1123 <screen>-vf filter1=options,filter2=options,...</screen>
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1124
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1125 Most filters take several numeric options separated by colons, but
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1126 the syntax for options varies from filter to filter, so read the man
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1127 page for details on the filters you wish to use.
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1128 </para>
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1129
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1130 <para>
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1131 Filters operate on the video in the order they are loaded.
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1132 For example, the following chain:
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1133
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1134 <screen>-vf crop=688:464:12:4,scale=640:464</screen>
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1135
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1136 will first crop the 688x464 region of the picture with upper-left
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1137 corner at (12,4), and then scale the result down to 640x464.
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1138 </para>
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1139
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1140 <para>
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1141 Certain filters need to be loaded at or near the beginning of the
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1142 filter chain, in order to take advantage of information from the
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1143 video decoder that will be lost or invalidated by other filters.
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1144 The principal examples are <option>pp</option> (postprocessing, only
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1145 when it is performing deblock or dering operations),
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1146 <option>spp</option> (another postprocessor to remove MPEG artifacts),
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1147 <option>pullup</option> (inverse telecine), and
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1148 <option>softpulldown</option> (for converting soft telecine to hard
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1149 telecine).
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1150 </para>
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1151
e56a9eacfbc7 General note about filtering from Rich's encoding guide
gpoirier
parents: 16086
diff changeset
1152 <para>
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1153 In general, you want to do as little filtering as possible to the movie
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1154 in order to remain close to the original DVD source. Cropping is often
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1155 necessary (as described above), but avoid to scale the video. Although
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1156 scaling down is sometimes preferred to using higher quantizers, we want
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1157 to avoid both these things: remember that we decided from the start to
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1158 trade bits for quality.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1159 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1160
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1161 <para>
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1162 Also, do not adjust gamma, contrast, brightness, etc. What looks good
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1163 on your display may not look good on others. These adjustments should
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1164 be done on playback only.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1165 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1166
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1167 <para>
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1168 One thing you might want to do, however, is pass the video through a
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1169 very light denoise filter, such as <option>-vf hqdn3d=2:1:2</option>.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1170 Again, it is a matter of putting those bits to better use: why waste them
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1171 encoding noise when you can just add that noise back in during playback?
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1172 Increasing the parameters for <option>hqdn3d</option> will further
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1173 improve compressibility, but if you increase the values too much, you
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1174 risk degrading the image visibily. The suggested values above
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1175 (<option>2:1:2</option>) are quite conservative; you should feel free to
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1176 experiment with higher values and observe the results for yourself.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1177 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1178
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1179 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1180
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1181
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1182 <sect2 id="menc-feat-dvd-mpeg4-interlacing">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1183 <title>Interlacing and Telecine</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1184
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1185 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1186 Almost all movies are shot at 24 fps. Because NTSC is 30000/1001 fps, some
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1187 processing must be done to this 24 fps video to make it run at the correct
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1188 NTSC framerate. The process is called 3:2 pulldown, commonly referred to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1189 as telecine (because pulldown is often applied during the telecine
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1190 process), and, naively described, it works by slowing the film down to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1191 24000/1001 fps, and repeating every fourth frame.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1192 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1193
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1194 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1195 No special processing, however, is done to the video for PAL DVDs, which
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1196 run at 25 fps. (Technically, PAL can be telecined, called 2:2 pulldown,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1197 but this does not become an issue in practice.) The 24 fps film is simply
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1198 played back at 25 fps. The result is that the movie runs slightly faster,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1199 but unless you are an alien, you probably will not notice the difference.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1200 Most PAL DVDs have pitch-corrected audio, so when they are played back at
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1201 25 fps things will sound right, even though the audio track (and hence the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1202 whole movie) has a running time that is 4% less than NTSC DVDs.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1203 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1204
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1205 <para>
16340
5ceeeb85804c Avoid short forms.
diego
parents: 16339
diff changeset
1206 Because the video in a PAL DVD has not been altered, you need not worry
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1207 much about framerate. The source is 25 fps, and your rip will be 25
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1208 fps. However, if you are ripping an NTSC DVD movie, you may need to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1209 apply inverse telecine.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1210 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1211
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1212 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1213 For movies shot at 24 fps, the video on the NTSC DVD is either telecined
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1214 30000/1001, or else it is progressive 24000/1001 fps and intended to be telecined
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1215 on-the-fly by a DVD player. On the other hand, TV series are usually
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1216 only interlaced, not telecined. This is not a hard rule: some TV series
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1217 are interlaced (such as Buffy the Vampire Slayer) whereas some are a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1218 mixture of progressive and interlaced (such as Angel, or 24).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1219 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1220
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1221 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1222 It is highly recommended that you read the section on
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1223 <link linkend="menc-feat-telecine">How to deal with telecine and interlacing in NTSC DVDs</link>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1224 to learn how to handle the different possibilities.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1225 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1226
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1227 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1228 However, if you are mostly just ripping movies, likely you are either
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1229 dealing with 24 fps progressive or telecined video, in which case you can
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1230 use the <option>pullup</option> filter <option>-vf
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1231 pullup,softskip</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1232 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1233
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1234 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1235
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1236 <sect2 id="menc-feat-dvd-mpeg4-encoding-interlaced">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1237 <title>Encoding interlaced video</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1238
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1239 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1240 If the movie you want to encode is interlaced (NTSC video or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1241 PAL video), you will need to choose whether you want to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1242 deinterlace or not.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1243 While deinterlacing will make your movie usable on progressive
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1244 scan displays such a computer monitors and projectors, it comes
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1245 at a cost: The fieldrate of 50 or 60000/1001 fields per second
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1246 is halved to 25 or 30000/1001 frames per second, and roughly half of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1247 the information in your movie will be lost during scenes with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1248 significant motion.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1249 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1250
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1251 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1252 Therefore, if you are encoding for high quality archival purposes,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1253 it is recommended not to deinterlace.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1254 You can always deinterlace the movie at playback time when
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1255 displaying it on progressive scan devices, and future players will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1256 be able to deinterlace to full fieldrate, interpolating 50 or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1257 60000/1001 entire frames per second from the interlaced video.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1258 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1259
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1260 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1261 Special care must be taken when working with interlaced video:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1262 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1263
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1264 <orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1265 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1266 Crop height and y-offset must be multiples of 4.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1267 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1268 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1269 Any vertical scaling must be performed in interlaced mode.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1270 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1271 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1272 Postprocessing and denoising filters may not work as expected
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1273 unless you take special care to operate them a field at a time,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1274 and they may damage the video if used incorrectly.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1275 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1276 </orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1277
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1278 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1279 With these things in mind, here is our first example:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1280 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1281 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1282 mencoder <replaceable>capture.avi</replaceable> -mc 0 -oac lavc -ovc lavc -lavcopts \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1283 vcodec=mpeg2video:vbitrate=6000:ilmv:ildct:acodec=mp2:abitrate=224
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1284 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1285 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1286 Note the <option>ilmv</option> and <option>ildct</option> options.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1287 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1288 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1289
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1290
16339
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1291 <sect2 id="menc-feat-dvd-mpeg4-av-sync">
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1292 <title>Notes on Audio/Video synchronization</title>
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1293 <para>
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1294 <application>MEncoder</application>'s audio/video synchronization
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1295 algorithms were designed with the intention of recovering files with
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1296 broken sync.
16364
f71d1d8468df Hopefully better advices about A/V sync
gpoirier
parents: 16340
diff changeset
1297 However, in some cases they can cause unnecessary skipping and duplication of
16383
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1298 frames, and possibly slight A/V desync, when used with proper input
16387
8f347723d3b3 Fixes suggested by Diego
gpoirier
parents: 16384
diff changeset
1299 (of course, A/V sync issues apply only if you process or copy the
16383
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1300 audio track while transcoding the video, which is strongly encouraged).
16364
f71d1d8468df Hopefully better advices about A/V sync
gpoirier
parents: 16340
diff changeset
1301 Therefore, you may have to switch to basic A/V sync with
16339
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1302 the <option>-mc 0</option> option, or put this in your
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1303 <systemitem>~/.mplayer/mencoder</systemitem> config file, as long as
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1304 you are only working with good sources (DVD, TV capture, high quality
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1305 MPEG-4 rips, etc) and not broken ASF/RM/MOV files.
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1306 </para>
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1307 <para>
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1308 If you want to further guard against strange frame skips and
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1309 duplication, you can use both <option>-mc 0</option> and
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1310 <option>-noskip</option>.
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1311 This will prevent <emphasis>all</emphasis> A/V sync, and copy frames
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1312 one-to-one, so you cannot use it if you will be using any filters that
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1313 unpredictably add or drop frames, or if your input file has variable
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1314 framerate!
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1315 Therefore, using <option>-noskip</option> is not in general recommended.
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1316 </para>
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1317 <para>
16364
f71d1d8468df Hopefully better advices about A/V sync
gpoirier
parents: 16340
diff changeset
1318 The so-called "three-pass" audio encoding which <application>MEncoder</application>
16339
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1319 supports has been reported to cause A/V desync.
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1320 This will definitely happen if it is used in conjunction with certain
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1321 filters, therefore, it is now recommended <emphasis>not</emphasis> to
16364
f71d1d8468df Hopefully better advices about A/V sync
gpoirier
parents: 16340
diff changeset
1322 use three-pass audio mode.
16339
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1323 This feature is only left for compatibility purposes and for expert
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1324 users who understand when it is safe to use and when it is not.
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1325 If you have never heard of three-pass mode before, forget that we
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1326 even mentioned it!
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1327 </para>
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1328 <para>
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1329 There have also been reports of A/V desync when encoding from stdin
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1330 with <application>MEncoder</application>.
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1331 Do not do this! Always use a file or CD/DVD/etc device as input.
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1332 </para>
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1333 </sect2>
9d772123c27d New section: Notes on Audio/Video synchronization, taken from Rich's encoding guide
gpoirier
parents: 16283
diff changeset
1334
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1335 <sect2 id="menc-feat-dvd-mpeg4-audio">
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1336 <title>Audio</title>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1337
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1338 <para>
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1339 Audio is a much simpler problem to solve: if you care about quality, just
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1340 leave it as is.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1341 Even AC3 5.1 streams are at most 448Kbit/s, and they are worth every bit.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1342 You might be tempted to transcode the audio to high quality Vorbis, but
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1343 just because you do not have an A/V receiver for AC3 pass-through today
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1344 does not mean you will not have one tomorrow. Future-proof your DVD rips by
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1345 preserving the AC3 stream.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1346 You can keep the AC3 stream either by copying it directly into the video
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1347 stream <link linkend="menc-feat-mpeg4">during the encoding</link>.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1348 You can also extract the AC3 stream in order to mux it into containers such
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1349 as NUT or Matroska.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1350 <screen>mplayer <replaceable>source_file.vob</replaceable> -aid 129 -dumpaudio -dumpfile <replaceable>sound.ac3</replaceable></screen>
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1351 will dump into the file <replaceable>sound.ac3</replaceable> the
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1352 audio track number 129 from the file
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1353 <replaceable>source_file.vob</replaceable> (NB: DVD VOB files
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1354 usually use a different audio numbering,
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1355 which means that the VOB audio track 129 is the 2nd audio track of the file).
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1356 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1357
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1358 <para>
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1359 But sometimes you truly have no choice but to further compress the
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1360 sound so that more bits can be spent on the video.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1361 Most people choose to compress audio with either MP3 or Vorbis audio
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1362 codecs.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1363 While the latter is a very space-efficient codec, MP3 is better supported
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1364 by hardware players, although this trend is changing.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1365 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1366
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1367 <para>
16383
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1368 Do <emphasis>not</emphasis> use <option>-nosound</option> when encoding
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1369 a file with audio, even if you will be encoding and muxing audio
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1370 separately later.
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1371 Though it may work in ideal cases, using <option>-nosound</option> is
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1372 likely to hide some problems in your encoding command line setting.
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1373 In other words, having a soundtrack during your encode assures you that,
16387
8f347723d3b3 Fixes suggested by Diego
gpoirier
parents: 16384
diff changeset
1374 provided you do not see messages such as
16383
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1375 <quote>Too many audio packets in the buffer</quote>, you will be able
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1376 to get proper sync.
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1377 </para>
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1378
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1379 <para>
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1380 You need to have <application>MEncoder</application> process the sound.
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1381 You can for example copy the orignal soundtrack during the encode with
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1382 <option>-oac copy</option> or convert it to a "light" 4 kHz mono WAV
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1383 PCM with <option>-oac pcm -channels 1 -srate 4000</option>.
16387
8f347723d3b3 Fixes suggested by Diego
gpoirier
parents: 16384
diff changeset
1384 Otherwise, in some cases, it will generate a video file that will not sync
16383
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1385 with the audio.
16387
8f347723d3b3 Fixes suggested by Diego
gpoirier
parents: 16384
diff changeset
1386 Such cases are when the number of video frames in the source file does
16383
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1387 not match up to the total length of audio frames or whenever there
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1388 are discontinuities/splices where there are missing or extra audio frames.
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1389 The correct way to handle this kind of problem is to insert silence or
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1390 cut audio at these points.
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1391 However <application>MPlayer</application> cannot do that, so if you
16387
8f347723d3b3 Fixes suggested by Diego
gpoirier
parents: 16384
diff changeset
1392 demux the AC3 audio and encode it with a separate app (or dump it to PCM with
16383
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1393 <application>MPlayer</application>), the splices will be left incorrect
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1394 and the only way to correct them is to drop/dup video frames at the
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1395 splice.
16387
8f347723d3b3 Fixes suggested by Diego
gpoirier
parents: 16384
diff changeset
1396 As long as <application>MEncoder</application> sees the audio when it is
8f347723d3b3 Fixes suggested by Diego
gpoirier
parents: 16384
diff changeset
1397 encoding the video, it can do this dropping/duping (which is usually OK
16383
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1398 since it takes place at full black/scenechange, but if
16387
8f347723d3b3 Fixes suggested by Diego
gpoirier
parents: 16384
diff changeset
1399 <application>MEncoder</application> cannot see the audio, it will just
8f347723d3b3 Fixes suggested by Diego
gpoirier
parents: 16384
diff changeset
1400 process all frames as-is and they will not fit the final audio stream when
16383
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1401 you for example merge your audio and video track into a Matroska file.
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1402 </para>
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1403
3cc0d81806bf In order to make sure A/V sync is preserved, MEncoder really has to be fed with an audio track.
gpoirier
parents: 16364
diff changeset
1404 <para>
16086
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1405 First of all, you will have to convert the DVD sound into a WAV file that the
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1406 audio codec can use as input.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1407 For example:
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1408 <screen>mplayer <replaceable>source_file.vob</replaceable> -ao pcm:file=<replaceable>destination_sound.wav</replaceable> -vc dummy -aid 1 -vo null</screen>
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1409 will dump the second audio track from the file
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1410 <replaceable>source_file.vob</replaceable> into the file
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1411 <replaceable>destination_sound.wav</replaceable>.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1412 You may want to normalize the sound before encoding, as DVD audio tracks
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1413 are commonly recorded at low volumes.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1414 You can use the tool <application>normalize</application> for instance,
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1415 which is available in most distributions.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1416 If you are using Windows, a tool such as <application>BeSweet</application>
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1417 can do the same job.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1418 You will compress in either Vorbis or MP3.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1419 For example:
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1420 <screen>oggenc -q1 <replaceable>destination_sound.wav</replaceable></screen>
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1421 will encode <replaceable>destination_sound.wav</replaceable> with
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1422 the encoding quality 1, which is roughly equivalent to 80Kb/s, and
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1423 is the minimum quality at which you should encode if you care about
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1424 quality.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1425 Please note that MEncoder currently cannot mux Vorbis audio tracks
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1426 into the output file because it only supports AVI and MPEG
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1427 containers as an output, each of which may lead to audio/video
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1428 playback synchronization problems with some players when the AVI file
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1429 contain VBR audio streams such as Vorbis.
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1430 Do not worry, this document will show you how you can do that with third
6c16b60516f3 Moves the "audio" section just before the "muxing" section. + fixes suggested by Jeff
gpoirier
parents: 16085
diff changeset
1431 party programs.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1432 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1433
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1434 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1435
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1436
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1437 <sect2 id="menc-feat-dvd-mpeg4-muxing">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1438 <title>Muxing</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1439 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1440 Now that you have encoded your video, you will most likely want
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1441 to mux it with one or more audio tracks into a movie container, such
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1442 as AVI, MPEG, Matroska or NUT.
16420
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1443 <application>MEncoder</application> is currently only able to natively output
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1444 audio and video into MPEG and AVI container formats.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1445 for example:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1446 <screen>mencoder -oac copy -ovc copy -o <replaceable>output_movie.avi</replaceable> -audiofile <replaceable>input_audio.mp2</replaceable> <replaceable>input_video.avi</replaceable></screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1447 This would merge the video file <replaceable>input_video.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1448 and the audio file <replaceable>input_audio.mp2</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1449 into the AVI file <replaceable>output_movie.avi</replaceable>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1450 This command works with MPEG-1 layer I, II and III (more commonly known
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1451 as MP3) audio, WAV and a few other audio formats too.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1452 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1453
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1454 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1455 MEncoder features experimental support for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1456 <systemitem class="library">libavformat</systemitem>, which is a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1457 library from the FFmpeg project that supports muxing and demuxing
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1458 a variety of containers.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1459 For example:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1460 <screen>mencoder -oac copy -ovc copy -o <replaceable>output_movie.asf</replaceable> -audiofile <replaceable>input_audio.mp2</replaceable> <replaceable>input_video.avi</replaceable> -of lavf -lavfopts format=asf</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1461 This will do the same thing as the previous example, except that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1462 the output container will be ASF.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1463 Please note that this support is highly experimental (but getting
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1464 better every day), and will only work if you compiled
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1465 <application>MPlayer</application> with the support for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1466 <systemitem class="library">libavformat</systemitem> enabled (which
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1467 means that a pre-packaged binary version will not work in most cases).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1468 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1469
16420
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1470
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1471 <sect3 id="menc-feat-dvd-mpeg4-muxing-filter-issues">
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1472 <title>Improving muxing and A/V sync reliability</title>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1473 <para>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1474 You may experience some serious A/V sync problems while trying to mux
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1475 your video and some audio tracks, where no matter how you adjust the
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1476 audio delay, you will never get proper sync.
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1477 That may happen when you use some video filters that will drop or
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1478 duplicate some frames, like the inverse telecine filters.
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1479 It is strongly encouraged to append the <option>harddup</option> video
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1480 filter at the end of the filter chain to avoid this kind of problem.
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1481 </para>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1482
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1483 <para>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1484 Without <option>harddup</option>, if <application>MEncoder</application>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1485 wants to duplicate a frame, it relies on the muxer to put a mark on the
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1486 container so that the last frame will be displayed again to maintain
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1487 sync while writing no actual frame.
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1488 With <option>harddup</option>, <application>MEncoder</application>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1489 will instead just push the last frame displayed again into the filter
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1490 chain.
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1491 This means that the encoder receives the <emphasis>exact</emphasis>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1492 same frame twice, and compresses it.
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1493 This will result in a slightly bigger file, but will not cause problems
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1494 when demuxing or remuxing into other container formats.
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1495 </para>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1496
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1497 <para>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1498 You may also have no choice but to use <option>harddup</option> with
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1499 container formats that are not too tightly linked with
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1500 <application>MEncoder</application> such as the ones supported through
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1501 <systemitem class="library">libavformat</systemitem>, which may not
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1502 support frame duplication at the container level.
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1503 </para>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1504 </sect3>
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1505
17aad1da6c1d New section about sync and remuxing issues.
gpoirier
parents: 16387
diff changeset
1506
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1507 <sect3 id="menc-feat-dvd-mpeg4-muxing-avi-limitations">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1508 <title>Limitations of the AVI container</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1509 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1510 Although it is the most widely-supported container format after MPEG-1,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1511 AVI also has some major drawbacks.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1512 Perhaps the most obvious is the overhead.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1513 For each chunk of the AVI file, 24 bytes are wasted on headers and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1514 index.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1515 This translates into a little over 5 MB per hour, or 1-2.5%
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1516 overhead for a 700 MB movie. This may not seem like much, but it could
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1517 mean the difference between being able to use 700 kbit/sec video or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1518 714 kbit/sec, and every bit of quality counts.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1519 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1520
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1521 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1522 In addition this gross inefficiency, AVI also has the following major
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1523 limitations:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1524 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1525
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1526 <orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1527 <listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1528 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1529 Only fixed-fps content can be stored. This is particularly limiting
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1530 if the original material you want to encode is mixed content, for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1531 example a mix of NTSC video and film material.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1532 Actually there are hacks that can be used to store mixed-framerate
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1533 content in AVI, but they increase the (already huge) overhead
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1534 fivefold or more and so are not practical.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1535 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1536 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1537 <listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1538 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1539 Audio in AVI files must be either constant-bitrate (CBR) or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1540 constant-framesize (i.e. all frames decode to the same number of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1541 samples).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1542 Unfortunately, the most efficient codec, Vorbis, does not meet
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1543 either of these requirements.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1544 Therefore, if you plan to store your movie in AVI, you will have to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1545 use a less efficient codec such as MP3 or AC3.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1546 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1547 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1548 </orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1549
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1550 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1551 Having said all that, <application>MEncoder</application> does not
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1552 currently support variable-fps output or Vorbis encoding.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1553 Therefore, you may not see these as limitations if
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1554 <application>MEncoder</application> is the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1555 only tool you will be using to produce your encodes.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1556 However, it is possible to use <application>MEncoder</application>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1557 only for video encoding, and then use external tools to encode
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1558 audio and mux it into another container format.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1559 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1560 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1561
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1562 <sect3 id="menc-feat-dvd-mpeg4-muxing-matroska">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1563 <title>Muxing into the Matroska container</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1564 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1565 Matroska is a free, open standard container format, aiming
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1566 to offer a lot of advanced features, which older containers
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1567 like AVI cannot handle.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1568 For example, Matroska supports variable bitrate audio content
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1569 (VBR), variable framerates (VFR), chapters, file attachments,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1570 error detection code (EDC) and modern A/V Codecs like "Advanced Audio
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1571 Coding" (AAC), "Vorbis" or "MPEG-4 AVC" (H.264), next to nothing
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1572 handled by AVI.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1573 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1574
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1575 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1576 The tools required to create Matroska files are collectively called
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1577 <application>mkvtoolnix</application>, and are available for most
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1578 Unix platforms as well as <application>Windows</application>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1579 Because Matroska is an open standard you may find other
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1580 tools that suit you better, but since mkvtoolnix is the most
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1581 common, and is supported by the Matroska team itself, we will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1582 only cover its usage.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1583 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1584
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1585 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1586 Probably the easiest way to get started with Matroska is to use
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1587 <application>MMG</application>, the graphical frontend shipped with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1588 <application>mkvtoolnix</application>, and follow the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1589 <ulink url="http://www.bunkus.org/videotools/mkvtoolnix/doc/mkvmerge-gui.html">guide to mkvmerge GUI (mmg)</ulink>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1590 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1591
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1592 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1593 You may also mux audio and video files using the command line:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1594 <screen>mkvmerge -o <replaceable>output.mkv</replaceable> <replaceable>input_video.avi</replaceable> <replaceable>input_audio1.mp3</replaceable> <replaceable>input_audio2.ac3</replaceable></screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1595 This would merge the video file <replaceable>input_video.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1596 and the two audio files <replaceable>input_audio1.mp3</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1597 and <replaceable>input_audio2.ac3</replaceable> into the Matroska
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1598 file <replaceable>output.mkv</replaceable>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1599 Matroska, as mentioned earlier, is able to do much more than that, like
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1600 multiple audio tracks (including fine-tuning of audio/video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1601 synchronization), chapters, subtitles, splitting, etc...
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1602 Please refer to the documentation of those applications for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1603 more details.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1604 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1605
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1606 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1607
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1608 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1609
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1610 </sect1>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1611
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1612 <sect1 id="menc-feat-telecine">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1613 <title>How to deal with telecine and interlacing within NTSC DVDs</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1614
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1615 <sect2 id="menc-feat-telecine-intro">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1616 <title>Introduction</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1617 <formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1618 <title>What is telecine?</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1619 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1620 I suggest you visit this page if you do not understand much of what
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1621 is written in this document:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1622 <ulink url="http://www.divx.com/support/guides/guide.php?gid=10">http://www.divx.com/support/guides/guide.php?gid=10</ulink>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1623 This URL links to an understandable and reasonably comprehensive
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1624 description of what telecine is.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1625 </para></formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1626
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1627 <formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1628 <title>A note about the numbers.</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1629 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1630 Many documents, including the guide linked above, refer to the fields
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1631 per second value of NTSC video as 59.94 and the corresponding frames
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1632 per second values as 29.97 (for telecined and interlaced) and 23.976
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1633 (for progressive). For simplicity, some documents even round these
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1634 numbers to 60, 30, and 24.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1635 </para></formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1636
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1637 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1638 Strictly speaking, all those numbers are approximations. Black and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1639 white NTSC video was exactly 60 fields per second, but 60000/1001
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1640 was later chosen to accomodate color data while remaining compatible
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1641 with contemporary black and white televisions. Digital NTSC video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1642 (such as on a DVD) is also 60000/1001 fields per second. From this,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1643 interlaced and telecined video are derived to be 30000/1001 frames
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1644 per second; progressive video is 24000/1001 frames per second.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1645 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1646
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1647 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1648 Older versions of the <application>MEncoder</application> documentation
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1649 and many archived mailing list posts refer to 59.94, 29.97, and 23.976.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1650 All <application>MEncoder</application> documentation has been updated
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1651 to use the fractional values, and you should use them too.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1652 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1653
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1654 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1655 <option>-ofps 23.976</option> is incorrect.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1656 <option>-ofps 24000/1001</option> should be used instead.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1657 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1658
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1659 <formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1660 <title>How telecine is used.</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1661 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1662 All video intended to be displayed on an NTSC
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1663 television set must be 60000/1001 fields per second. Made-for-TV movies
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1664 4 and shows are often filmed directly at 60000/1001 fields per second, but
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1665 the majority of cinema is filmed at 24 or 24000/1001 frames per
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1666 second. When cinematic movie DVDs are mastered, the video is then
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1667 converted for television using a process called telecine.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1668 </para></formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1669
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1670 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1671 On a DVD, the video is never actually stored as 60000/1001 fields per
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1672 second. For video that was originally 60000/1001, each pair of fields is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1673 combined to form a frame, resulting in 30000/1001 frames per
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1674 second. Hardware DVD players then read a flag embedded in the video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1675 stream to determine whether the odd- or even-numbered lines should
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1676 form the first field.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1677 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1678
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1679 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1680 Usually, 24000/1001 frames per second content stays as it is when
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1681 encoded for a DVD, and the DVD player must perform telecining
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1682 on-the-fly. Sometimes, however, the video is telecined
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1683 <emphasis>before</emphasis> being stored on the DVD; even though it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1684 was originally 24000/1001 frames per second, it becomes 60000/1001 fields per
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1685 second. When it is stored on the DVD, pairs of fields are combined to form
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1686 30000/1001 frames per second.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1687 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1688
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1689 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1690 When looking at individual frames formed from 60000/10001 fields per
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1691 second video, telecined or otherwise, interlacing is clearly visible
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1692 wherever there is any motion, because one field (say, the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1693 even-numbered lines) represents a moment in time 1/(60000/1001)
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1694 seconds later than the other. Playing interlaced video on a computer
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1695 looks ugly both because the monitor is higher resolution and because
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1696 the video is shown frame-after-frame instead of field-after-field.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1697 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1698
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1699 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1700 <title>Notes:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1701 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1702 This section only applies to NTSC DVDs, and not PAL.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1703 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1704 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1705 The example <application>MEncoder</application> lines throughout the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1706 document are <emphasis role="bold">not</emphasis> intended for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1707 actual use. They are simply the bare minimum required to encode the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1708 pertaining video category. How to make good DVD rips or fine-tune
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1709 <systemitem class="library">libavcodec</systemitem> for maximal
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1710 quality is not within the scope of this document.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1711 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1712 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1713 There are a couple footnotes specific to this guide, linked like this:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1714 <link linkend="menc-feat-telecine-footnotes">[1]</link>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1715 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1716 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1717 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1718
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1719 <sect2 id="menc-feat-telecine-ident">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1720 <title>How to tell what type of video you have</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1721
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1722 <sect3 id="menc-feat-telecine-ident-progressive">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1723 <title>Progressive</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1724 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1725 Progressive video was originally filmed at 24000/1001 fps, and stored
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1726 on the DVD without alteration.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1727 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1728
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1729 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1730 When you play a progressive DVD in <application>MPlayer</application>,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1731 <application>MPlayer</application> will print the following line as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1732 soon as the movie begins to play:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1733
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1734 <screen> demux_mpg: 24000/1001 fps progressive NTSC content detected, switching framerate.</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1735
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1736 From this point forward, demux_mpg should never say it finds
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1737 &quot;30000/1001 fps NTSC content.&quot;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1738 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1739
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1740 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1741 When you watch progressive video, you should never see any
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1742 interlacing. Beware, however, because sometimes there is a tiny bit
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1743 of telecine mixed in where you would not expect. I have encountered TV
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1744 show DVDs that have one second of telecine at every scene change, or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1745 at seemingly random places. I once watched a DVD that had a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1746 progressive first half, and the second half was telecined. If you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1747 want to be <emphasis>really</emphasis> thorough, you can scan the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1748 entire movie:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1749
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1750 <screen>mplayer dvd://1 -nosound -vo null -benchmark</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1751
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1752 Using <option>-benchmark</option> makes
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1753 <application>MPlayer</application> play the movie as quickly as it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1754 possibly can; still, depending on your hardware, it can take a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1755 while. Every time demux_mpg reports a framerate change, the line
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1756 immediately above will show you the time at which the change
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1757 occurred.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1758 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1759
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1760 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1761 Sometimes progressive video on DVDs is referred to as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1762 &quot;soft-telecine&quot; because it is intended to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1763 be telecined by the DVD player.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1764 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1765 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1766
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1767 <sect3 id="menc-feat-telecine-ident-telecined">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1768 <title>Telecined</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1769 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1770 Telecined video was originally filmed at 24000/1001, but was telecined
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1771 <emphasis>before</emphasis> it was written to the DVD.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1772 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1773
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1774 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1775 <application>MPlayer</application> does not (ever) report any
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1776 framerate changes when it plays telecined video.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1777 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1778
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1779 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1780 Watching a telecined video, you will see interlacing artifacts that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1781 seem to &quot;blink&quot;: they repeatedly appear and disappear.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1782 You can look closely at this by
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1783 <orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1784 <listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1785 <screen>mplayer dvd://1</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1786 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1787 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1788 Seek to a part with motion.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1789 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1790 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1791 Use the <keycap>.</keycap> key to step forward one frame at a time.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1792 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1793 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1794 Look at the pattern of interlaced-looking and progressive-looking
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1795 frames. If the pattern you see is PPPII,PPPII,PPPII,... then the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1796 video is telecined. If you see some other pattern, then the video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1797 may have been telecined using some non-standard method;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1798 <application>MEncoder</application> cannot losslessly convert
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1799 non-standard telecine to progressive. If you do not see any
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1800 pattern at all, then it is most likely interlaced.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1801 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1802 </orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1803 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1804
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1805 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1806 Sometimes telecined video on DVDs is referred to as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1807 &quot;hard-telecine&quot;. Since hard-telecine is already 60000/1001 fields
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1808 per second, the DVD player plays the video without any manipulation.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1809 </para>
16225
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1810
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1811 <para>
16229
45b339e1b93b grammar/phrasing fixes on the recent NTSC and telecine commit
wanderer
parents: 16225
diff changeset
1812 Another way to tell if your source is telecined or not is to play
45b339e1b93b grammar/phrasing fixes on the recent NTSC and telecine commit
wanderer
parents: 16225
diff changeset
1813 the source with the <option>-vf pullup</option> and <option>-v</option>
45b339e1b93b grammar/phrasing fixes on the recent NTSC and telecine commit
wanderer
parents: 16225
diff changeset
1814 command line options to see how <option>pullup</option> matches frames.
16225
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1815 If the source is telecined, you should see on the console a 3:2 pattern
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1816 with <systemitem>0+.1.+2</systemitem> and <systemitem>0++1</systemitem>
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1817 alternating.
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1818 This technique has the advantage that you do not need to watch the
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1819 source to identify it, which could be useful if you wish to automate
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1820 the encoding procedure, or to carry out said procedure remotely via
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1821 a slow connection.
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1822 </para>
f7373277b269 NTSC sources are hard to encode. How to identify telecine content reliably.
gpoirier
parents: 16218
diff changeset
1823
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1824 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1825
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1826 <sect3 id="menc-feat-telecine-ident-interlaced">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1827 <title>Interlaced</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1828 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1829 Interlaced video was originally filmed at 60000/1001 fields per second,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1830 and stored on the DVD as 30000/1001 frames per second. The interlacing effect
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1831 (often called &quot;combing&quot;) is a result of combining pairs of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1832 fields into frames. Each field is supposed to be 1/(60000/1001) seconds apart,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1833 and when they are displayed simultaneously the difference is apparent.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1834 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1835
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1836 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1837 As with telecined video, <application>MPlayer</application> should
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1838 not ever report any framerate changes when playing interlaced content.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1839 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1840
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1841 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1842 When you view an interlaced video closely by frame-stepping with the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1843 <keycap>.</keycap> key, you will see that every single frame is interlaced.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1844 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1845 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1846
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1847 <sect3 id="menc-feat-telecine-ident-mixedpt">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1848 <title>Mixed progressive and telecine</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1849 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1850 All of a &quot;mixed progressive and telecine&quot; video was originally
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1851 24000/1001 frames per second, but some parts of it ended up being telecined.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1852 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1853
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1854 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1855 When <application>MPlayer</application> plays this category, it will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1856 (often repeatedly) switch back and forth between &quot;30000/1001 fps NTSC&quot;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1857 and &quot;24000/1001 fps progressive NTSC&quot;. Watch the bottom of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1858 <application>MPlayer</application>'s output to see these messages.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1859 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1860
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1861 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1862 You should check the &quot;30000/1001 fps NTSC&quot; sections to make sure
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1863 they are actually telecine, and not just interlaced.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1864 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1865 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1866
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1867 <sect3 id="menc-feat-telecine-ident-mixedpi">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1868 <title>Mixed progressive and interlaced</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1869 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1870 In &quot;mixed progressive and interlaced&quot; content, progressive
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1871 and interlaced video have been spliced together.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1872 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1873
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1874 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1875 This category looks just like &quot;mixed progressive and telecine&quot;,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1876 until you examine the 30000/1001 fps sections and see that they do not have the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1877 telecine pattern.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1878 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1879 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1880
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1881 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1882
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1883 <sect2 id="menc-feat-telecine-encode">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1884 <title>How to encode each category</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1885 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1886 As I mentioned in the beginning, example <application>MEncoder</application>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1887 lines below are <emphasis role="bold">not</emphasis> meant to actually be used;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1888 they only demonstrate the minimum parameters to properly encode each category.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1889 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1890
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1891 <sect3 id="menc-feat-telecine-encode-progressive">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1892 <title>Progressive</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1893 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1894 Progressive video requires no special filtering to encode. The only
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1895 parameter you need to be sure to use is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1896 <option>-ofps 24000/1001</option>. Otherwise, <application>MEncoder</application>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1897 will try to encode at 30000/1001 fps and will duplicate frames.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1898 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1899
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1900 <para>
16384
afe6be7b2d48 Typo, and fixed missing word
gpoirier
parents: 16383
diff changeset
1901 <screen>mencoder dvd://1 -oac copy -ovc lavc -ofps 24000/1001</screen>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1902 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1903
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1904 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1905 It is often the case, however, that a video that looks progressive
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1906 actually has very short parts of telecine mixed in. Unless you are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1907 sure, it is safest to treat the video as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1908 <link linkend="menc-feat-telecine-encode-mixedpt">mixed progressive and telecine</link>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1909 The performance loss is small
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1910 <link linkend="menc-feat-telecine-footnotes">[3]</link>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1911 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1912 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1913
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1914 <sect3 id="menc-feat-telecine-encode-telecined">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1915 <title>Telecined</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1916 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1917 Telecine can be reversed to retrieve the original 24000/1001 content,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1918 using a process called inverse-telecine.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1919 <application>MPlayer</application> contains several filters to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1920 accomplish this; the best filter, <option>pullup</option>, is described
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1921 in the <link linkend="menc-feat-telecine-encode-mixedpt">mixed
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1922 progressive and telecine</link> section.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1923 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1924 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1925
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1926 <sect3 id="menc-feat-telecine-encode-interlaced">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1927 <title>Interlaced</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1928 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1929 For most practical cases it is not possible to retrieve a complete
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1930 progressive video from interlaced content. The only way to do so
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1931 without losing half of the vertical resolution is to double the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1932 framerate and try to &quot;guess&quot; what ought to make up the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1933 corresponding lines for each field (this has drawbacks - see method
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1934 3).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1935 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1936
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1937 <orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1938 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1939
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1940 Encode the video in interlaced form. Normally, interlacing wreaks
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1941 havoc with the encoder's ability to compress well, but
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1942 <systemitem class="library">libavcodec</systemitem> has two
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1943 parameters specifically for dealing with storing interlaced video a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1944 bit better: <option> ildct</option> and <option>ilme</option>. Also,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1945 using <option>mbd=2</option> is strongly recommended
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1946 <link linkend="menc-feat-telecine-footnotes">[2] </link> because it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1947 will encode macroblocks as non-interlaced in places where there is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1948 no motion. Note that <option>-ofps</option> is NOT needed here.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1949
16384
afe6be7b2d48 Typo, and fixed missing word
gpoirier
parents: 16383
diff changeset
1950 <screen>mencoder dvd://1 -oac copy -ovc lavc -lavcopts ildct:ilme:mbd=2</screen>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1951 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1952 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1953 Use a deinterlacing filter before encoding. There are several of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1954 these filters available to choose from, each with its own advantages
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1955 and disadvantages. Consult <option>mplayer -pphelp</option> to see
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1956 what is available (grep for &quot;deint&quot;), and search the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1957 <ulink url="http://www.mplayerhq.hu/homepage/design6/info.html#mailing_lists">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1958 MPlayer mailing lists</ulink> to find many discussions about the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1959 various filters. Again, the framerate is not changing, so no
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1960 <option>-ofps</option>. Also, deinterlacing should be done after
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1961 cropping <link linkend="menc-feat-telecine-footnotes">[1]</link> and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1962 before scaling.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1963
16384
afe6be7b2d48 Typo, and fixed missing word
gpoirier
parents: 16383
diff changeset
1964 <screen>mencoder dvd://1 -oac copy -vf pp=lb -ovc lavc</screen>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1965 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1966 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1967 Unfortunately, this option is buggy with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1968 <application>MEncoder</application>; it ought to work well with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1969 <application>MEncoder G2</application>, but that is not here yet. You
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1970 might experience crahes. Anyway, the purpose of <option> -vf
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1971 tfields</option> is to create a full frame out of each field, which
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1972 makes the framerate 60000/1001. The advantage of this approach is that no
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1973 data is ever lost; however, since each frame comes from only one
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1974 field, the missing lines have to be interpolated somehow. There are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1975 no very good methods of generating the missing data, and so the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1976 result will look a bit similar to when using some deinterlacing
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1977 filters. Generating the missing lines creates other issues, as well,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1978 simply because the amount of data doubles. So, higher encoding
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1979 bitrates are required to maintain quality, and more CPU power is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1980 used for both encoding and decoding. tfields has several different
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1981 options for how to create the missing lines of each frame. If you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1982 use this method, then Reference the manual, and chose whichever
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1983 option looks best for your material. Note that when using
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1984 <option>tfields</option> you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1985 <emphasis role="bold">have to</emphasis> specify both
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1986 <option>-fps</option> and <option>-ofps</option> to be twice the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1987 framerate of your original source.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1988
16384
afe6be7b2d48 Typo, and fixed missing word
gpoirier
parents: 16383
diff changeset
1989 <screen>mencoder dvd://1 -oac copy -vf tfields=2 -ovc lavc -fps 60000/1001 -ofps 60000/1001</screen>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1990 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1991 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1992 If you plan on downscaling dramatically, you can extract and encode
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1993 only one of the two fields. Of course, you will lose half the vertical
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1994 resolution, but if you plan on downscaling to at most 1/2 of the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1995 original, the loss will not matter much. The result will be a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1996 progressive 30000/1001 frames per second file. The procedure is to use
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1997 <option>-vf field</option>, then crop
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1998 <link linkend="menc-feat-telecine-footnotes">[1]</link> and scale
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
1999 appropriately. Remember that you will have to adjust the scale to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2000 compensate for the vertical resolution being halved.
16384
afe6be7b2d48 Typo, and fixed missing word
gpoirier
parents: 16383
diff changeset
2001 <screen>mencoder dvd://1 -oac copy -vf field=0 -ovc lavc</screen>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2002 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2003 </orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2004 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2005
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2006 <sect3 id="menc-feat-telecine-encode-mixedpt">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2007 <title>Mixed progressive and telecine</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2008 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2009 In order to turn mixed progressive and telecine video into entirely
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2010 progressive video, the telecined parts have to be
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2011 inverse-telecined. There are three ways to accomplish this,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2012 described below. Note that you should
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2013 <emphasis role="bold">always</emphasis> inverse-telecine before any
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2014 rescaling; unless you really know what you are doing,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2015 inverse-telecine before cropping, too
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2016 <link linkend="menc-feat-telecine-footnotes">[1]</link>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2017 <option>-ofps 24000/1001</option> is needed here because the output video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2018 will be 24000/1001 frames per second.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2019 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2020
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2021 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2022 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2023 <option>-vf pullup</option> is designed to inverse-telecine
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2024 telecined material while leaving progressive data alone. In order to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2025 work properly, <option>pullup</option> <emphasis role="bold">must</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2026 be followed by the <option>softskip</option> filter or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2027 else <application>MEncoder</application> will crash.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2028 <option>pullup</option> is, however, the cleanest and most
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2029 accurate method available for encoding both telecine and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2030 &quot;mixed progressive and telecine&quot;.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2031
16384
afe6be7b2d48 Typo, and fixed missing word
gpoirier
parents: 16383
diff changeset
2032 <screen>mencoder dvd://1 -oac copy -vf pullup,softskip -ovc lavc -ofps 24000/1001</screen>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2033 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2034
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2035
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2036 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2037 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2038 An older method
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2039 is to, rather than inverse-telecine the telecined parts, telecine
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2040 the non-telecined parts and then inverse-telecine the whole
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2041 video. Sound confusing? softpulldown is a filter that goes through
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2042 a video and makes the entire file telecined. If we follow
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2043 softpulldown with either <option>detc</option> or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2044 <option>ivtc</option>, the final result will be entirely
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2045 progressive. <option>-ofps 24000/1001</option> is needed.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2046
16384
afe6be7b2d48 Typo, and fixed missing word
gpoirier
parents: 16383
diff changeset
2047 <screen>mencoder dvd://1 -oac copy -vf softpulldown,ivtc=1 -ovc lavc -ofps 24000/1001</screen>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2048 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2049 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2050
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2051 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2052 I have not used <option>-vf filmdint</option> myself, but here is what
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2053 D Richard Felker III has to say:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2054
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2055 <blockquote><para>It is OK, but IMO it tries to deinterlace rather
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2056 than doing inverse telecine too often (much like settop DVD
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2057 players &amp; progressive TVs) which gives ugly flickering and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2058 other artifacts. If you are going to use it, you at least need to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2059 spend some time tuning the options and watching the output first
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2060 to make sure it is not messing up.</para></blockquote>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2061 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2062 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2063 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2064
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2065 <sect3 id="menc-feat-telecine-encode-mixedpi">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2066 <title>Mixed progressive and interlaced</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2067 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2068 There are two options for dealing with this category, each of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2069 which is a compromise. You should decide based on the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2070 duration/location of each type.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2071 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2072
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2073 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2074 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2075 Treat it as progressive. The interlaced parts will look interlaced,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2076 and some of the interlaced fields will have to be dropped, resulting
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2077 in a bit of uneven jumpiness. You can use a postprocessing filter if
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2078 you want to, but it may slightly degrade the progressive parts.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2079 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2081 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2082 This option should definitely not be used if you want to eventually
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2083 display the video on an interlaced device (with a TV card, for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2084 example). If you have interlaced frames in a 24000/1001 frames per
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2085 second video, they will be telecined along with the progressive
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2086 frames. Half of the interlaced "frames" will be displayed for three
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2087 fields' duration (3/(60000/1001) seconds), resulting in a flicking
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2088 &quot;jump back in time&quot; effect that looks quite bad. If you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2089 even attempt this, you <emphasis role="bold">must</emphasis> use a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2090 deinterlacing filter like <option>lb</option> or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2091 <option>l5</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2092 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2093
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2094 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2095 It may also be a bad idea for progressive display, too. It will drop
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2096 pairs of consecutive interlaced fields, resulting in a discontinuity
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2097 that can be more visible than with the second method, which shows
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2098 some progressive frames twice. 30000/1001 frames per second interlaced
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2099 video is already a bit choppy because it really should be shown at
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2100 60000/1001 fields per second, so the duplicate frames do not stand out as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2101 much.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2102 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2103
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2104 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2105 Either way, it is best to consider your content and how you intend to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2106 display it. If your video is 90% progressive and you never intend to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2107 show it on a TV, you should favor a progressive approach. If it is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2108 only half progressive, you probably want to encode it as if it is all
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2109 interlaced.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2110 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2111 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2112
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2113 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2114 Treat it as interlaced. Some frames of the progressive parts will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2115 need to be duplicated, resulting in uneven jumpiness. Again,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2116 deinterlacing filters may slightly degrade the progressive parts.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2117 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2118
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2119 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2120 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2121
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2122 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2123
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2124 <sect2 id="menc-feat-telecine-footnotes">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2125 <title>Footnotes</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2126 <orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2127 <listitem><formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2128 <title>About cropping:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2129 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2130 Video data on DVDs are stored in a format called YUV 4:2:0. In YUV
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2131 video, luma (&quot;brightness&quot;) and chroma (&quot;color&quot;)
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2132 are stored separately. Because the human eye is somewhat less
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2133 sensitive to color than it is to brightness, in a YUV 4:2:0 picture
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2134 there is only one chroma pixel for every four luma pixels. In a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2135 progressive picture, each square of four luma pixels (two on each
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2136 side) has one common chroma pixel. You must crop progressive YUV
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2137 4:2:0 to even resolutions, and use even offsets. For example,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2138 <option>crop=716:380:2:26</option> is OK but
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2139 <option>crop=716:380:3:26 </option> is not.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2140 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2141 </formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2142
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2143 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2144 When you are dealing with interlaced YUV 4:2:0, the situation is a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2145 bit more complicated. Instead of every four luma pixels in the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2146 <emphasis>frame</emphasis> sharing a chroma pixel, every four luma
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2147 pixels in each <emphasis> field</emphasis> share a chroma
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2148 pixel. When fields are interlaced to form a frame, each scanline is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2149 one pixel high. Now, instead of all four luma pixels being in a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2150 square, there are two pixels side-by-side, and the other two pixels
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2151 are side-by-side two scanlines down. The two luma pixels in the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2152 intermediate scanline are from the other field, and so share a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2153 different chroma pixel with two luma pixels two scanlines away. All
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2154 this confusion makes it necessary to have vertical crop dimensions
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2155 and offsets be multiples of four. Horizontal can stay even.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2156 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2157
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2158 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2159 For telecined video, I recommend that cropping take place after
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2160 inverse telecining. Once the video is progressive you only need to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2161 crop by even numbers. If you really want to gain the slight speedup
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2162 that cropping first may offer, you must crop vertically by multiples
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2163 of four or else the inverse-telecine filter will not have proper data.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2164 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2165
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2166 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2167 For interlaced (not telecined) video, you must always crop
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2168 vertically by multiples of four unless you use <option>-vf
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2169 field</option> before cropping.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2170 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2171 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2172
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2173 <listitem><formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2174 <title>About encoding parameters and quality:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2175 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2176 Just because I recommend <option>mbd=2</option> here does not mean it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2177 should not be used elsewhere. Along with <option>trell</option>,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2178 <option>mbd=2</option> is one of the two
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2179 <systemitem class="library">libavcodec</systemitem> options that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2180 increases quality the most, and you should always use at least those
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2181 two unless the drop in encoding speed is prohibitive (e.g. realtime
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2182 encoding). There are many other options to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2183 <systemitem class="library">libavcodec</systemitem> that increase
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2184 encoding quality (and decrease encoding speed) but that is beyond
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2185 the scope of this document.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2186 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2187 </formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2188 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2189
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2190 <listitem><formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2191 <title>About the performance of pullup:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2192 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2193 It is safe to use <option>pullup</option> (along with <option>softskip
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2194 </option>) on progressive video, and is usually a good idea unless
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2195 the source has been definitively verified to be entirely progressive.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2196 The performace loss is small for most cases. On a bare-minimum encode,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2197 <option>pullup</option> causes <application>MEncoder</application> to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2198 be 50% slower. Adding sound processing and advanced <option>lavcopts
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2199 </option> overshadows that difference, bringing the performance
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2200 decrease of using <option>pullup</option> down to 2%.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2201 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2202 </formalpara>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2203 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2204
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2205 </orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2206
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2207 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2208
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2209 </sect1>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2210
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2211
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2212 <sect1 id="menc-feat-enc-libavcodec">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2213 <title>Encoding with the <systemitem class="library">libavcodec</systemitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2214 codec family</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2215
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2216 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2217 <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2218 provides simple encoding to a lot of interesting video and audio formats.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2219 You can encode to the following codecs (more or less up to date):
16541
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2220 </para>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2221
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2222 <sect2 id="menc-feat-enc-libavcodec-video-codecs">
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2223 <title><systemitem class="library">libavcodec</systemitem>'s video codecs</title>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2224
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2225 <para>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2226 <informaltable frame="all">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2227 <tgroup cols="2">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2228 <thead>
16535
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2229 <row><entry>Video codec name</entry><entry>Description</entry></row>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2230 </thead>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2231 <tbody>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2232 <row><entry>mjpeg</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2233 Motion JPEG
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2234 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2235 <row><entry>ljpeg</entry><entry>
16539
15563bd0874a minor spelling/wording/grammar fixes
diego
parents: 16535
diff changeset
2236 lossless JPEG
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2237 </entry></row>
16203
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2238 <row><entry>h261</entry><entry>
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2239 H.261
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2240 </entry></row>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2241 <row><entry>h263</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2242 H.263
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2243 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2244 <row><entry>h263p</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2245 H.263+
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2246 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2247 <row><entry>mpeg4</entry><entry>
16539
15563bd0874a minor spelling/wording/grammar fixes
diego
parents: 16535
diff changeset
2248 ISO standard MPEG-4 (DivX 5, XviD compatible)
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2249 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2250 <row><entry>msmpeg4</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2251 pre-standard MPEG-4 variant by MS, v3 (AKA DivX3)
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2252 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2253 <row><entry>msmpeg4v2</entry><entry>
16539
15563bd0874a minor spelling/wording/grammar fixes
diego
parents: 16535
diff changeset
2254 pre-standard MPEG-4 by MS, v2 (used in old ASF files)
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2255 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2256 <row><entry>wmv1</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2257 Windows Media Video, version 1 (AKA WMV7)
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2258 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2259 <row><entry>wmv2</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2260 Windows Media Video, version 2 (AKA WMV8)
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2261 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2262 <row><entry>rv10</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2263 an old RealVideo codec
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2264 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2265 <row><entry>mpeg1video</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2266 MPEG-1 video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2267 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2268 <row><entry>mpeg2video</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2269 MPEG-2 video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2270 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2271 <row><entry>huffyuv</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2272 lossless compression
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2273 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2274 <row><entry>asv1</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2275 ASUS Video v1
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2276 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2277 <row><entry>asv2</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2278 ASUS Video v2
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2279 </entry></row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2280 <row><entry>ffv1</entry><entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2281 FFmpeg's lossless video codec
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2282 </entry></row>
16203
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2283 <row><entry>flv</entry><entry>
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2284 Sorenson H.263 used in Flash Video
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2285 </entry></row>
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2286 <row><entry>dvvideo</entry><entry>
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2287 Sony Digital Video
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2288 </entry></row>
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2289 <row><entry>snow</entry><entry>
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2290 FFmpeg's experimental wavelet-based codec
5506042289b2 Missing codecs that libavcodec supports.
gpoirier
parents: 16202
diff changeset
2291 </entry></row>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2292 </tbody>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2293 </tgroup>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2294 </informaltable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2295
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2296 The first column contains the codec names that should be passed after the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2297 <literal>vcodec</literal> config, like: <option>-lavcopts vcodec=msmpeg4</option>
16541
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2298 </para>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2299 <informalexample>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2300 <para>
16558
1d524afe2f9c Nits and fixes
gpoirier
parents: 16541
diff changeset
2301 An example with MJPEG compression:
16541
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2302 <screen>mencoder dvd://2 -o title2.avi -ovc lavc -lavcopts vcodec=mjpeg -oac copy</screen>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2303 </para>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2304 </informalexample>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2305 </sect2>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2306
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2307 <sect2 id="menc-feat-enc-libavcodec-audio-codecs">
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2308 <title><systemitem class="library">libavcodec</systemitem>'s audio codecs</title>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2309 <para>
16535
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2310 <informaltable frame="all">
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2311 <tgroup cols="2">
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2312 <thead>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2313 <row><entry>Audio codec name</entry><entry>Description</entry></row>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2314 </thead>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2315 <tbody>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2316 <row>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2317 <entry>mp2</entry>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2318 <entry>MPEG Layer 2</entry>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2319 </row>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2320 <row>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2321 <entry>ac3</entry>
16539
15563bd0874a minor spelling/wording/grammar fixes
diego
parents: 16535
diff changeset
2322 <entry>AC3, AKA Dolby Digital</entry>
16535
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2323 </row>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2324 <row>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2325 <entry>adpcm_ima_wav</entry>
16539
15563bd0874a minor spelling/wording/grammar fixes
diego
parents: 16535
diff changeset
2326 <entry>IMA adaptive PCM (4 bits per sample, 4:1 compression)</entry>
16535
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2327 </row>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2328 <row>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2329 <entry>sonic</entry>
16539
15563bd0874a minor spelling/wording/grammar fixes
diego
parents: 16535
diff changeset
2330 <entry>experimental lossy/lossless codec</entry>
16535
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2331 </row>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2332 </tbody>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2333 </tgroup>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2334 </informaltable>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2335
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2336 The first column contains the codec names that should be passed after the
16539
15563bd0874a minor spelling/wording/grammar fixes
diego
parents: 16535
diff changeset
2337 <literal>acodec</literal> option, like: <option>-lavcopts acodec=ac3</option>
16535
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2338 </para>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2339
16541
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2340 <informalexample>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2341 <para>
16558
1d524afe2f9c Nits and fixes
gpoirier
parents: 16541
diff changeset
2342 An example with AC3 compression:
16541
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2343 <screen>mencoder dvd://2 -o title2.avi -oac lavc -lavcopts acodec=ac3 -ovc copy</screen>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2344 </para>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2345 </informalexample>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2346
16535
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2347 <para>
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2348 Contrary to <systemitem class="library">libavcodec</systemitem>'s video
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2349 codecs, its audio codecs do not make a wise usage of the bits they are
16539
15563bd0874a minor spelling/wording/grammar fixes
diego
parents: 16535
diff changeset
2350 given as they lack some minimal psychoacoustic model (if at all)
16535
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2351 which most other codec implementations feature.
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2352 However, note that all these audio codecs are very fast and work
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2353 out-of-the-box everywhere <application>MEncoder</application> has been
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2354 compiled with <systemitem class="library">libavcodec</systemitem> (which
5c8e764daa25 Document lavc audio codecs
gpoirier
parents: 16502
diff changeset
2355 is the case most of time), and do not depend on external libraries.
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2356 </para>
16541
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2357 </sect2>
4a9808f6cacc add some internal links between "codecs supported by mencoder" and
gpoirier
parents: 16539
diff changeset
2358
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2359
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2360 <sect2 id="menc-feat-dvd-mpeg4-lavc-encoding-options">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2361 <title>Encoding options of libavcodec</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2362
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2363 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2364 Ideally, you would probably want to be able to just tell the encoder to switch
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2365 into "high quality" mode and move on.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2366 That would probably be nice, but unfortunately hard to implement as different
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2367 encoding options yield different quality results depending on the source material.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2368 That is because compression depends on the visual properties of the video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2369 in question.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2370 For example, anime and live action have very different properties and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2371 thus require different options to obtain optimum encoding.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2372 The good news is that some options should never be left out, like
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2373 <option>mbd=2</option>, <option>trell</option>, and <option>v4mv</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2374 See below for a detailed description of common encoding options.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2375 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2376
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2377
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2378 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2379 <title>Options to adjust:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2380 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2381 <emphasis role="bold">vmax_b_frames</emphasis>: 1 or 2 is good, depending on
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2382 the movie.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2383 Note that if you need to have your encode be decodable by DivX5, you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2384 need to activate closed GOP support, using
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2385 <systemitem class="library">libavcodec</systemitem>'s <option>cgop</option>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2386 option, but you need to deactivate scene detection, which
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2387 is not a good idea as it will hurt encode efficiency a bit.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2388 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2389
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2390 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2391 <emphasis role="bold">vb_strategy=1</emphasis>: helps in high-motion scenes.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2392 Requires vmax_b_frames >= 2.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2393 On some videos, vmax_b_frames may hurt quality, but vmax_b_frames=2 along
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2394 with vb_strategy=1 helps.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2395 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2396
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2397 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2398 <emphasis role="bold">dia</emphasis>: motion search range. Bigger is better
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2399 and slower.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2400 Negative values are a completely different scale.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2401 Good values are -1 for a fast encode, or 2-4 for slower.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2402 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2403
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2404 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2405 <emphasis role="bold">predia</emphasis>: motion search pre-pass.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2406 Not as important as dia. Good values are 1 (default) to 4. Requires preme=2
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2407 to really be useful.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2408 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2409
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2410 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2411 <emphasis role="bold">cmp, subcmp, precmp</emphasis>: Comparison function for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2412 motion estimation.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2413 Experiment with values of 0 (default), 2 (hadamard), 3 (dct), and 6 (rate
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2414 distortion).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2415 0 is fastest, and sufficient for precmp.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2416 For cmp and subcmp, 2 is good for anime, and 3 is good for live action.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2417 6 may or may not be slightly better, but is slow.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2418 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2419
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2420 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2421 <emphasis role="bold">last_pred</emphasis>: Number of motion predictors to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2422 take from the previous frame.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2423 1-3 or so help at little speed cost.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2424 Higher values are slow for no extra gain.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2425 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2426
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2427 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2428 <emphasis role="bold">cbp, mv0</emphasis>: Controls the selection of macroblocks.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2429 Small speed cost for small quality gain.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2430 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2431
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2432 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2433 <emphasis role="bold">qprd</emphasis>: adaptive quantization based on the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2434 macroblock's complexity.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2435 May help or hurt depending on the video and other options.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2436 This can cause artifacts unless you set vqmax to some reasonably small value
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2437 (6 is good, maybe as low as 4); vqmin=1 should also help.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2438 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2439
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2440 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2441 <emphasis role="bold">qns</emphasis>: very slow, especially when combined
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2442 with qprd.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2443 This option will make the encoder minimize noise due to compression
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2444 artifacts instead of making the encoded video strictly match the source.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2445 Do not use this unless you have already tweaked everything else as far as it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2446 will go and the results still are not good enough.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2447 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2448
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2449 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2450 <emphasis role="bold">vqcomp</emphasis>: Tweak ratecontrol.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2451 What values are good depends on the movie.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2452 You can safely leave this alone if you want.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2453 Reducing vqcomp puts more bits on low-complexity scenes, increasing it puts
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2454 them on high-complexity scenes (default: 0.5, range: 0-1. recommended range:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2455 0.5-0.7).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2456 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2457
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2458 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2459 <emphasis role="bold">vlelim, vcelim</emphasis>: Sets the single coefficient
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2460 elimination threshold for luminance and chroma planes.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2461 These are encoded separately in all MPEG-like algorithms.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2462 The idea behind these options is to use some good heuristics to determine
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2463 when the change in a block is less than the threshold you specify, and in
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2464 such a case, to just encode the block as "no change".
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2465 This saves bits and perhaps speeds up encoding. vlelim=-4 and vcelim=9
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2466 seem to be good for live movies, but seem not to help with anime;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2467 when encoding animation, you should probably leave them unchanged.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2468 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2469
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2470 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2471 <emphasis role="bold">qpel</emphasis>: Quarter pixel motion estimation.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2472 MPEG-4 uses half pixel precision for its motion search by default,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2473 therefore this option comes with an overhead as more information will be
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2474 stored in the encoded file.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2475 The compression gain/loss depends on the movie, but it is usually not very
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2476 effective on anime.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2477 qpel always incurs a significant cost in CPU decode time (+20% in
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2478 practice).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2479 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2480
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2481 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2482 <emphasis role="bold">psnr</emphasis>: does not affect the actual encoding,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2483 but writes a log file giving the type/size/quality of each frame, and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2484 prints a summary of PSNR (Peak Signal to Noise Ratio) at the end.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2485 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2486
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2487 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2488
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2489 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2490 <title>Options not recommended to play with:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2491 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2492 <emphasis role="bold">vme</emphasis>: The default is best.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2493 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2494
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2495 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2496 <emphasis role="bold">lumi_mask, dark_mask</emphasis>: Psychovisual adaptive
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2497 quantization.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2498 You do not want to play with those options if you care about quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2499 Reasonable values may be effective in your case, but be warned this is very
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2500 subjective.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2501 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2502
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2503 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2504 <emphasis role="bold">scplx_mask</emphasis>: Tries to prevent blocky
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2505 artifacts, but postprocessing is better.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2506 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2507 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2508 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2509
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2510
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2511 <sect2 id="custommatrices"><title>Custom inter/intra matrices</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2512
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2513 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2514 With this feature of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2515 <link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2516 you are able to set custom inter (I-frames/keyframes) and intra
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2517 (P-frames/predicted frames) matrices. It is supported by many of the codecs:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2518 <systemitem>mpeg1video</systemitem> and <systemitem>mpeg2video</systemitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2519 are reported as working.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2520 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2521
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2522 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2523 A typical usage of this feature is to set the matrices preferred by the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2524 <ulink url="http://www.kvcd.net/">KVCD</ulink> specifications.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2525 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2526
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2527 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2528 The <emphasis role="bold">KVCD &quot;Notch&quot; Quantization Matrix:</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2529 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2530
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2531 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2532 Intra:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2533 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2534 8 9 12 22 26 27 29 34
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2535 9 10 14 26 27 29 34 37
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2536 12 14 18 27 29 34 37 38
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2537 22 26 27 31 36 37 38 40
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2538 26 27 29 36 39 38 40 48
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2539 27 29 34 37 38 40 48 58
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2540 29 34 37 38 40 48 58 69
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2541 34 37 38 40 48 58 69 79
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2542 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2543
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2544 Inter:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2545 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2546 16 18 20 22 24 26 28 30
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2547 18 20 22 24 26 28 30 32
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2548 20 22 24 26 28 30 32 34
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2549 22 24 26 30 32 32 34 36
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2550 24 26 28 32 34 34 36 38
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2551 26 28 30 32 34 36 38 40
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2552 28 30 32 34 36 38 42 42
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2553 30 32 34 36 38 40 42 44
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2554 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2555 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2556
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2557 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2558 Usage:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2559 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2560 $ mencoder <replaceable>input.avi</replaceable> -o <replaceable>output.avi</replaceable> -oac copy -ovc lavc -lavcopts inter_matrix=...:intra_matrix=...
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2561 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2562 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2563
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2564 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2565 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2566 $ mencoder <replaceable>input.avi</replaceable> -ovc lavc -lavcopts
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2567 vcodec=mpeg2video:intra_matrix=8,9,12,22,26,27,29,34,9,10,14,26,27,29,34,37,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2568 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,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2569 29,34,37,38,40,48,58,29,34,37,38,40,48,58,69,34,37,38,40,48,58,69,79
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2570 :inter_matrix=16,18,20,22,24,26,28,30,18,20,22,24,26,28,30,32,20,22,24,26,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2571 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,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2572 36,38,40,28,30,32,34,36,38,42,42,30,32,34,36,38,40,42,44 -oac copy -o svcd.mpg
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2573 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2574 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2575 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2576
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2577
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2578 <sect2 id="menc-feat-dvd-mpeg4-example">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2579 <title>Example</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2580
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2581 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2582 So, you have just bought your shiny new copy of Harry Potter and the Chamber
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2583 of Secrets (widescreen edition, of course), and you want to rip this DVD
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2584 so that you can add it to your Home Theatre PC. This is a region 1 DVD,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2585 so it is NTSC. The example below will still apply to PAL, except you will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2586 omit <option>-ofps 24000/1001</option> (because the output framerate is the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2587 same as the input framerate), and of course the crop dimensions will be
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2588 different.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2589 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2590
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2591 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2592 After running <option>mplayer dvd://1</option>, we follow the process
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2593 detailed in the section <link linkend="menc-feat-telecine">How to deal
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2594 with telecine and interlacing in NTSC DVDs</link> and discover that it is
16340
5ceeeb85804c Avoid short forms.
diego
parents: 16339
diff changeset
2595 24000/1001 fps progressive video, which means that we need not use an inverse
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2596 telecine filter, such as <option>pullup</option> or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2597 <option>filmdint</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2598 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2599
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2600 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2601 Next, we want to determine the appropriate crop rectangle, so we use the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2602 cropdetect filter:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2603
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2604 <screen>mplayer dvd://1 -vf cropdetect</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2605
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2606 Make sure you seek to a fully filled frame (such as a bright scene), and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2607 you will see in <application>MPlayer</application>'s console output:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2608
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2609 <screen>crop area: X: 0..719 Y: 57..419 (-vf crop=720:362:0:58)</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2610
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2611 We then play the movie back with this filter to test its correctness:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2612
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2613 <screen>mplayer dvd://1 -vf crop=720:362:0:58</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2614
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2615 And we see that it looks perfectly fine. Next, we ensure the width and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2616 height are a multiple of 16. The width is fine, however the height is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2617 not. Since we did not fail 7th grade math, we know that the nearest
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2618 multiple of 16 lower than 362 is 352.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2619 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2620
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2621 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2622 We could just use <option>crop=720:352:0:58</option>, but it would be nice
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2623 to take a little off the top and a little off the bottom so that we
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2624 retain the center. We have shrunk the height by 10 pixels, but we do not
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2625 want to increase the y-offset by 5-pixels since that is an odd number and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2626 will adversely affect quality. Instead, we will increase the y-offset by
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2627 4 pixels:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2628
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2629 <screen>mplayer dvd://1 -vf crop=720:352:0:62</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2630
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2631 Another reason to shave pixels from both the top and the bottom is that we
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2632 ensure we have eliminated any half-black pixels if they exist. Note that if
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2633 your video is telecined, make sure the <option>pullup</option> filter (or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2634 whichever inverse telecine filter you decide to use) appears in the filter
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2635 chain before you crop. If it is interlaced, deinterlace before cropping.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2636 (If you choose to preserve the interlaced video, then make sure your
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2637 vertical crop offset is a multiple of 4.)
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2638 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2639
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2640 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2641 If you are really concerned about losing those 10 pixels, you might
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2642 prefer instead to scale the dimensions down to the nearest multiple of 16.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2643 The filter chain would look like:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2644
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2645 <screen>-vf crop=720:362:0:58,scale=720:352</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2646
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2647 Scaling the video down like this will mean that some small amount of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2648 detail is lost, though it probably will not be perceptible. Scaling up will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2649 result in lower quality (unless you increase the bitrate). Cropping
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2650 discards those pixels altogether. It is a tradeoff that you will want to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2651 consider for each circumstance. For example, if the DVD video was made
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2652 for television, you might want to avoid vertical scaling, since the line
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2653 sampling corresponds to the way the content was originally recorded.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2654 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2655
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2656 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2657 On inspection, we see that our movie has a fair bit of action and high
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2658 amounts of detail, so we pick 2400Kbit for our bitrate.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2659 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2660
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2661 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2662 We are now ready to do the two pass encode. Pass one:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2663
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2664 <screen>mencoder dvd://1 -ofps 24000/1001 -oac copy -vf crop=720:352:0:62,hqdn3d=2:1:2 -ovc lavc \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2665 -lavcopts vcodec=mpeg4:vbitrate=2400:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:autoaspect:vpass=1 \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2666 -o Harry_Potter_2.avi</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2667
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2668 And pass two is the same, except that we specify <option>vpass=2</option>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2669
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2670 <screen>mencoder dvd://1 -ofps 24000/1001 -oac copy -vf crop=720:352:0:62,hqdn3d=2:1:2 -ovc lavc \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2671 -lavcopts vcodec=mpeg4:vbitrate=2400:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:autoaspect:vpass=2 \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2672 -o Harry_Potter_2.avi</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2673 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2674
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2675 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2676 The options <option>v4mv:mbd=2:trell</option> will greatly increase the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2677 quality at the expense of encoding time. There is little reason to leave
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2678 these options out when the primary goal is quality. The options
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2679 <option>cmp=3:subcmp=3:mbcmp=3</option> select a comparison function that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2680 yields higher quality than the defaults. You might try experimenting with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2681 this parameter (refer to the man page for the possible values) as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2682 different functions can have a large impact on quality depending on the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2683 source material. For example, if you find
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2684 <systemitem class="library">libavcodec</systemitem> produces too much
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2685 blocky artifacting, you could try selecting the experimental NSSE as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2686 comparison function via <option>*cmp=10</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2687 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2688
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2689 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2690 For this movie, the resulting AVI will be 138 minutes long and nearly
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2691 3GB. And because you said that file size does not matter, this is a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2692 perfectly acceptable size. However, if you had wanted it smaller, you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2693 could try a lower bitrate. Increasing bitrates have diminishing
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2694 returns, so while we might clearly see an improvement from 1800Kbit to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2695 2000Kbit, it might not be so noticeable above 2000Kbit. Feel
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2696 free to experiment until you are happy.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2697 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2698
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2699 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2700 Because we passed the source video through a denoise filter, you may want
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2701 to add some of it back during playback. This, along with the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2702 <option>spp</option> post-processing filter, drastically improves the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2703 perception of quality and helps eliminate blocky artifacts in the video.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2704 With <application>MPlayer</application>'s <option>autoq</option> option,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2705 you can vary the amount of post-processing done by the spp filter
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2706 depending on available CPU. Also, at this point, you may want to apply
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2707 gamma and/or color correction to best suit your display. For example:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2708
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2709 <screen>mplayer Harry_Potter_2.avi -vf spp,noise=9ah:5ah,eq2=1.2 -autoq 3</screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2710
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2711 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2712 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2713 </sect1>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2714
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2715
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2716 <sect1 id="menc-feat-xvid">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2717 <title>Encoding with the <systemitem class="library">XviD</systemitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2718 codec</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2719 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2720 <systemitem class="library">XviD</systemitem> is a free library for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2721 encoding MPEG-4 ASP video streams.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2722 Before starting to encode, you need to <link linkend="xvid">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2723 set up <application>MEncoder</application> to support it</link>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2724 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2725 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2726 This guide mainly aims at featuring the same kind of information
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2727 as x264's encoding guide.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2728 Therefore, please begin by reading
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2729 <link linkend="menc-feat-x264-encoding-options-intro">the first part</link>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2730 of that guide.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2731 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2732
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2733
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2734 <sect2 id="menc-feat-xvid-intro">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2735 <title>What options should I use to get the best results?</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2736
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2737 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2738 Please begin by reviewing the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2739 <systemitem class="library">XviD</systemitem> section of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2740 <application>MPlayer</application>'s man page.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2741 This section is intended to be a supplement to the man page.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2742 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2743 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2744 The XviD default settings are already a good tradeoff between
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2745 speed and quality, therefore you can safely stick to them if
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2746 the following section puzzles you.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2747 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2748 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2749
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2750 <sect2 id="menc-feat-xvid-encoding-options">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2751 <title>Encoding options of <systemitem class="library">XviD</systemitem></title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2752
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2753 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2754 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2755 <emphasis role="bold">vhq</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2756 This setting affects the macroblock decision algorithm, where the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2757 higher the setting, the wiser the decision.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2758 The default setting may be safely used for every encode, while
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2759 higher settings always help PSNR but are significantly slower.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2760 Please note that a better PSNR does not necessarily mean
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2761 that the picture will look better, but tells you that it is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2762 closer to the original.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2763 Turning it off will noticeably speed up encoding; if speed is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2764 critical for you, the tradeoff may be worth it.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2765 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2766
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2767 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2768 <emphasis role="bold">bvhq</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2769 This does the same job as vhq, but does it on B-frames.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2770 It has a negligible impact on speed, and slightly improves quality
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2771 (around +0.1dB PSNR).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2772 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2773
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2774 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2775 <emphasis role="bold">max_bframes</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2776 A higher number of consecutive allowed B-frames usually improves
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2777 compressibility, although it may also lead to more blocking artifacts.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2778 The default setting is a good tradeoff between compressibility and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2779 quality, but you may increase it up to 3 if you are bitrate-starved.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2780 You may also decrease it to 1 or 0 if you are aiming at perfect
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2781 quality, though in that case you should make sure your
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2782 target bitrate is high enough to ensure that the encoder does not
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2783 have to increase quantizers to reach it.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2784 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2785
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2786 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2787 <emphasis role="bold">bf_threshold</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2788 This controls the B-frame sensitivity of the encoder, where a higher
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2789 value leads to more B-frames being used (and vice versa).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2790 This setting is to be used together with <option>max_bframes</option>;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2791 if you are bitrate-starved, you should increase both
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2792 <option>max_bframes</option> and <option>bf_threshold</option>,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2793 while you may increase <option>max_bframes</option> and reduce
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2794 <option>bf_threshold</option> so that the encoder may use more
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2795 B-frames in places that only <emphasis role="bold">really</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2796 need them.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2797 A low number of <option>max_bframes</option> and a high value of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2798 <option>bf_threshold</option> is probably not a wise choice as it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2799 will force the encoder to put B-frames in places that would not
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2800 benefit from them, therefore reducing visual quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2801 However, if you need to be compatible with standalone players that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2802 only support old DivX profiles (which only supports up to 1
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2803 consecutive B-frame), this would be your only way to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2804 increase compressibility through using B-frames.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2805 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2806
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2807 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2808 <emphasis role="bold">trellis</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2809 Optimizes the quantization process to get an optimal tradeoff
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2810 between PSNR and bitrate, which allows significant bit saving.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2811 These bits will in return be spent elsewhere on the video,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2812 raising overall visual quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2813 You should always leave it on as its impact on quality is huge.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2814 Even if you are looking for speed, do not disable it until you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2815 have turned down <option>vhq</option> and all other more
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2816 CPU-hungry options to the minimum.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2817 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2818
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2819 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2820 <emphasis role="bold">hq_ac</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2821 Activates a better coefficient cost estimation method, which slightly
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2822 reduces filesize by around 0.15 to 0.19%, while having a negligible
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2823 impact on speed.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2824 It is therefore recommended to always leave it on.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2825 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2826
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2827 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2828 <emphasis role="bold">cartoon</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2829 Designed to better encode cartoon content, and has no impact on
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2830 speed as it just tunes the mode decision heuristics for this type
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2831 of content.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2832 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2833
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2834 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2835 <emphasis role="bold">me_quality</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2836 This setting is to control the precision of the motion estimation.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2837 The higher <option>me_quality</option>, the more
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2838 precise the estimation of the original motion will be, and the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2839 better the resulting clip will capture the original motion.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2840 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2841 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2842 The default setting is best in all cases;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2843 thus it is not recommended to turn it down unless you are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2844 really looking for speed, as all the bits saved by a good motion
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2845 estimation would be spent elsewhere, raising overall quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2846 Therefore, do not go any lower than 5, and even that only as a last
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2847 resort.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2848 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2849
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2850 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2851 <emphasis role="bold">chroma_me</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2852 Improves motion estimation by also taking the chroma (color)
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2853 information into account, whereas <option>me_quality</option>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2854 alone only uses luma (grayscale).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2855 This slows down encoding by 5-10% but improves visual quality
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2856 quite a bit by reducing blocking effects and reduces filesize by
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2857 around 1.3%.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2858 If you are looking for speed, you should disable this option before
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2859 starting to consider reducing <option>me_quality</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2860 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2861
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2862 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2863 <emphasis role="bold">chroma_opt</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2864 Is intended to increase chroma image quality around pure
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2865 white/black edges, rather than improving compression.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2866 This can help to reduce the "red stairs" effect.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2867 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2868
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2869 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2870 <emphasis role="bold">lumi_mask</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2871 Tries to give less bitrate to part of the picture that the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2872 human eye cannot see very well, which should allow the encoder
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2873 to spend the saved bits on more important parts of the picture.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2874 The quality of the encode yielded by this option highly depends
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2875 on personal preferences and on the type and monitor settings
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2876 used to watch it (typically, it will not look as good if it is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2877 bright or if it is a TFT monitor).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2878 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2879
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2880 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2881 <emphasis role="bold">qpel</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2882 Raise the number of candidate motion vectors by increasing
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2883 the precision of the motion estimation from halfpel to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2884 quarterpel.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2885 The idea is to find better motion vectors which will in return
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2886 reduce bitrate (hence increasing quality).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2887 However, motion vectors with quarterpel precision require a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2888 few extra bits to code, but the candidate vectors do not always
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2889 give (much) better results.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2890 Quite often, the codec still spends bits on the extra precision,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2891 but little or no extra quality is gained in return.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2892 Unfortunately, there is no way to foresee the possible gains of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2893 <option>qpel</option>, so you need to actually encode with and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2894 without it to know for sure.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2895 </para><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2896 <option>qpel</option> can be almost double encoding time, and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2897 requires as much as 25% more processing power to decode.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2898 It is not supported by all standalone players.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2899 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2900
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2901 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2902 <emphasis role="bold">gmc</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2903 Tries to save bits on panning scenes by using a single motion
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2904 vector for the whole frame.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2905 This almost always raises PSNR, but significantly slows down
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2906 encoding (as well as decoding).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2907 Therefore, you should only use it when you have turned
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2908 <option>vhq</option> to the maximum.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2909 <systemitem class="library">XviD</systemitem>'s GMC is more
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2910 sophisticated than DivX's, but is only supported by few
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2911 standalone players.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2912 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2913
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2914 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
2915 </sect2>
16486
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2916
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2917 <sect2 id="menc-feat-xvid-encoding-profiles">
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2918 <title>Encoding profiles</title>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2919 <para>
16502
gpoirier
parents: 16486
diff changeset
2920 XviD supports encoding profiles through the <option>profile</option> option,
16486
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2921 which are used to impose restrictions on the properties of the XviD video
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2922 stream such that it will be playable on anything which supports the
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2923 chosen profile.
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2924 The restrictions relate to resolutions, bitrates and certain MPEG-4
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2925 features.
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2926 The following table shows what each profile supports.
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2927 </para>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2928 <informaltable>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2929 <tgroup cols="16" align="center">
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2930 <colspec colnum="1" colname="col1"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2931 <colspec colnum="2" colname="col2"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2932 <colspec colnum="3" colname="col3"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2933 <colspec colnum="4" colname="col4"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2934 <colspec colnum="5" colname="col5"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2935 <colspec colnum="6" colname="col6"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2936 <colspec colnum="7" colname="col7"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2937 <colspec colnum="8" colname="col8"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2938 <colspec colnum="9" colname="col9"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2939 <colspec colnum="10" colname="col10"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2940 <colspec colnum="11" colname="col11"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2941 <colspec colnum="12" colname="col12"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2942 <colspec colnum="13" colname="col13"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2943 <colspec colnum="14" colname="col14"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2944 <colspec colnum="15" colname="col15"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2945 <colspec colnum="16" colname="col16"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2946 <colspec colnum="17" colname="col17"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2947 <spanspec spanname="spa2-5" namest="col2" nameend="col5"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2948 <spanspec spanname="spa6-11" namest="col6" nameend="col11"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2949 <spanspec spanname="spa12-17" namest="col12" nameend="col17"/>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2950 <tbody>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2951 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2952 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2953 <entry spanname="spa2-5">Simple</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2954 <entry spanname="spa6-11">Advanced Simple</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2955 <entry spanname="spa12-17">DivX</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2956 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2957 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2958 <entry>Profile name</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2959 <entry>0</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2960 <entry>1</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2961 <entry>2</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2962 <entry>3</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2963 <entry>0</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2964 <entry>1</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2965 <entry>2</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2966 <entry>3</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2967 <entry>4</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2968 <entry>5</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2969 <entry>Handheld</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2970 <entry>Portable NTSC</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2971 <entry>Portable PAL</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2972 <entry>Home Theater NTSC</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2973 <entry>Home Theater PAL</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2974 <entry>HDTV</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2975 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2976 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2977 <entry>Width [pixels]</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2978 <entry>176</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2979 <entry>176</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2980 <entry>352</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2981 <entry>352</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2982 <entry>176</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2983 <entry>176</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2984 <entry>352</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2985 <entry>352</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2986 <entry>352</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2987 <entry>720</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2988 <entry>176</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2989 <entry>352</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2990 <entry>352</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2991 <entry>720</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2992 <entry>720</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2993 <entry>1280</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2994 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2995 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2996 <entry>Height [pixels]</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2997 <entry>144</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2998 <entry>144</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
2999 <entry>288</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3000 <entry>288</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3001 <entry>144</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3002 <entry>144</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3003 <entry>288</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3004 <entry>288</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3005 <entry>576</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3006 <entry>576</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3007 <entry>144</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3008 <entry>240</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3009 <entry>288</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3010 <entry>480</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3011 <entry>576</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3012 <entry>720</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3013 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3014 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3015 <entry>Frame rate [fps]</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3016 <entry>15</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3017 <entry>15</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3018 <entry>15</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3019 <entry>15</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3020 <entry>30</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3021 <entry>30</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3022 <entry>15</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3023 <entry>30</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3024 <entry>30</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3025 <entry>30</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3026 <entry>15</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3027 <entry>30</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3028 <entry>25</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3029 <entry>30</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3030 <entry>25</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3031 <entry>30</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3032 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3033 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3034 <entry>Max average bitrate [kbps]</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3035 <entry>64</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3036 <entry>64</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3037 <entry>128</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3038 <entry>384</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3039 <entry>128</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3040 <entry>128</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3041 <entry>384</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3042 <entry>768</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3043 <entry>3000</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3044 <entry>8000</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3045 <entry>537.6</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3046 <entry>4854</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3047 <entry>4854</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3048 <entry>4854</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3049 <entry>4854</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3050 <entry>9708.4</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3051 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3052 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3053 <entry>Peak average bitrate over 3 secs [kbps]</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3054 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3055 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3056 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3057 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3058 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3059 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3060 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3061 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3062 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3063 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3064 <entry>800</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3065 <entry>8000</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3066 <entry>8000</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3067 <entry>8000</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3068 <entry>8000</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3069 <entry>16000</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3070 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3071 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3072 <entry>Max. B-frames</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3073 <entry>0</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3074 <entry>0</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3075 <entry>0</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3076 <entry>0</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3077 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3078 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3079 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3080 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3081 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3082 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3083 <entry>0</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3084 <entry>1</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3085 <entry>1</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3086 <entry>1</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3087 <entry>1</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3088 <entry>2</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3089 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3090 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3091 <entry>MPEG quantization</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3092 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3093 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3094 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3095 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3096 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3097 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3098 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3099 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3100 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3101 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3102 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3103 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3104 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3105 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3106 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3107 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3108 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3109 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3110 <entry>Adaptive quantization</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3111 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3112 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3113 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3114 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3115 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3116 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3117 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3118 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3119 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3120 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3121 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3122 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3123 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3124 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3125 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3126 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3127 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3128 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3129 <entry>Interlaced encoding</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3130 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3131 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3132 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3133 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3134 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3135 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3136 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3137 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3138 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3139 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3140 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3141 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3142 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3143 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3144 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3145 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3146 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3147 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3148 <entry>Quaterpixel</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3149 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3150 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3151 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3152 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3153 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3154 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3155 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3156 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3157 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3158 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3159 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3160 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3161 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3162 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3163 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3164 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3165 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3166 <row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3167 <entry>Global motion compensation</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3168 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3169 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3170 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3171 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3172 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3173 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3174 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3175 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3176 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3177 <entry>X</entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3178 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3179 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3180 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3181 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3182 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3183 <entry></entry>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3184 </row>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3185 </tbody>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3186 </tgroup>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3187 </informaltable>
e017e67b8660 Illustrate by a nice table what each profiles supported by XviD features.
gpoirier
parents: 16420
diff changeset
3188 </sect2>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3189 </sect1>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3190
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3191 <sect1 id="menc-feat-x264">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3192 <title>Encoding with the <systemitem class="library">x264</systemitem> codec</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3193 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3194 <systemitem class="library">x264</systemitem> is a free library for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3195 encoding H.264/AVC video streams.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3196 Before starting to encode, you need to <link linkend="codec-x264-encode">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3197 set up <application>MEncoder</application> to support it</link>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3198 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3199
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3200 <sect2 id="menc-feat-x264-encoding-options">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3201 <title>Encoding options of x264</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3202
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3203 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3204 Please begin by reviewing the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3205 <systemitem class="library">x264</systemitem> section of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3206 <application>MPlayer</application>'s man page.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3207 This section is intended to be a supplement to the man page.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3208 Here you will find quick hints about which options are most
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3209 likely to interest most people. The man page is more terse,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3210 but also more exhaustive, and it sometimes offers much better
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3211 technical detail.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3212 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3213
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3214 <sect3 id="menc-feat-x264-encoding-options-intro">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3215 <title>Introduction</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3216 <para>This guide considers two major categories of encoding options:</para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3217
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3218 <orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3219 <listitem><para>Options which mainly trade off encoding time vs. quality
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3220 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3221 <listitem><para>Options which may be useful for fulfilling various personal
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3222 preferences and special requirements</para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3223 </orderedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3224
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3225 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3226 Ultimately, only you can decide which options are best for your
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3227 purposes. The decision for the first class of options is the simplest:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3228 you only have to decide whether you think the quality differences
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3229 justify the speed differences. For the second class of options,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3230 preferences may be far more subjective, and more factors may be
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3231 involved. Note that some of the "personal preferences and special
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3232 requirements" options can still have large impacts on speed or quality,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3233 but that is not what they are primarily useful for. A couple of the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3234 "personal preference" options may even cause changes that look better
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3235 to some people, but look worse to others.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3236 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3237
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3238 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3239 Before continuing, you need to understand that this guide uses only one
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3240 quality metric: global PSNR.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3241 For a brief explanation of what PSNR is, see
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3242 <ulink url="http://en.wikipedia.org/wiki/PSNR">the Wikipedia article on PSNR</ulink>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3243 Global PSNR is the last PSNR number reported when you include
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3244 the <option>psnr</option> option in <option>x264encopts</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3245 Any time you read a claim about PSNR, one of the assumptions
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3246 behind the claim is that equal bitrates are used.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3247 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3248
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3249 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3250 Nearly all of this guide's comments assume you are using
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3251 two pass.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3252 When comparing options, there are two major reasons for using
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3253 two pass encoding.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3254 First, using two pass often gains around 1dB PSNR, which is a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3255 very big difference.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3256 Secondly, testing options by doing direct quality comparisons
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3257 with one pass encodes introduces a major confounding
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3258 factor: bitrate often varies significantly with each encode.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3259 It is not always easy to tell whether quality changes are due
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3260 mainly to changed options, or if they mostly reflect essentially
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3261 random differences in the achieved bitrate.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3262 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3263
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3264 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3265
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3266 <sect3 id="menc-feat-x264-encoding-options-speedvquality">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3267 <title>Options which primarily affect speed and quality</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3268
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3269 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3270 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3271 <emphasis role="bold">subq</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3272 Of the options which allow you to trade off speed for quality,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3273 <option>subq</option> and <option>frameref</option> (see below) are usually
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3274 by far the most important.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3275 If you are interested in tweaking either speed or quality, these
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3276 are the first options you should consider.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3277 On the speed dimension, the <option>frameref</option> and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3278 <option>subq</option> options interact with each other fairly
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3279 strongly.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3280 Experience shows that, with one reference frame,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3281 <option>subq=5</option> (the default setting) takes about 35% more time than
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3282 <option>subq=1</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3283 With 6 reference frames, the penalty grows to over 60%.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3284 <option>subq</option>'s effect on PSNR seems fairly constant
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3285 regardless of the number of reference frames.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3286 Typically, <option>subq=5</option> achieves 0.2-0.5 dB higher global
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3287 PSNR in comparison <option>subq=1</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3288 This is usually enough to be visible.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3289 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3290 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3291 <option>subq=6</option> is the slowest, highest quality mode.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3292 In comparison to <option>subq=5</option>, it usually gains 0.1-0.4 dB
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3293 global PSNR with speed costs varying from 25%-100%.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3294 Unlike other levels of <option>subq</option>, the behavior of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3295 <option>subq=6</option> does not depend much on <option>frameref</option>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3296 and <option>me</option>. Instead, the effectiveness of <option>subq=6
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3297 </option> depends mostly upon the number of B-frames used. In normal
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3298 usage, this means <option>subq=6</option> has a large impact on both speed
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3299 and quality in complex, high motion scenes, but it may not have much effect
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3300 in low-motion scenes. Note that it is still recommended to always set
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3301 <option>bframes</option> to something other than zero (see below).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3302 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3303 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3304 <emphasis role="bold">frameref</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3305 <option>frameref</option> is set to 1 by default, but this
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3306 should not be taken to imply that it is reasonable to set it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3307 to 1.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3308 Merely raising <option>frameref</option> to 2 gains around
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3309 0.15dB PSNR with a 5-10% speed penalty; this seems like a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3310 good tradeoff.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3311 <option>frameref=3</option> gains around 0.25dB PSNR over
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3312 <option>frameref=1</option>, which should be a visible
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3313 difference.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3314 <option>frameref=3</option> is around 15% slower than
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3315 <option>frameref=1</option>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3316 Unfortunately, diminishing returns set in rapidly.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3317 <option>frameref=6</option> can be expected to gain only
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3318 0.05-0.1 dB over <option>frameref=3</option> at an additional
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3319 15% speed penalty.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3320 Above <option>frameref=6</option>, the quality gains are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3321 usually very small (although you should keep in mind throughout
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3322 this whole discussion that it can vary quite a lot depending on
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3323 your source).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3324 In a fairly typical case, <option>frameref=12</option>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3325 will improve global PSNR by a tiny 0.02dB over
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3326 <option>frameref=6</option>, at a speed cost of 15%-20%.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3327 At such high <option>frameref</option> values, the only really
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3328 good thing that can be said is that increasing it even further will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3329 almost certainly never <emphasis role="bold">harm</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3330 PSNR, but the additional quality benefits are barely even
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3331 measurable, let alone perceptible.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3332 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3333 <note><title>Note:</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3334 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3335 Raising <option>frameref</option> to unnecessarily high values
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3336 <emphasis role="bold">can</emphasis> and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3337 <emphasis role="bold">usually does</emphasis>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3338 hurt coding efficiency if you turn CABAC off.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3339 With CABAC on (the default behavior), the possibility of setting
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3340 <option>frameref</option> "too high" currently seems too remote
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3341 to even worry about, and in the future, optimizations may remove
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3342 the possibility altogether.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3343 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3344 </note>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3345 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3346 If you care about speed, a reasonable compromise is to use low
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3347 <option>subq</option> and <option>frameref</option> values on
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3348 the first pass, and then raise them on the second pass.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3349 Typically, this has a negligible negative effect on the final
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3350 quality: You will probably lose well under 0.1dB PSNR, which
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3351 should be much too small of a difference to see.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3352 However, different values of <option>frameref</option> can
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3353 occasionally affect frametype decision.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3354 Most likely, these are rare outlying cases, but if you want to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3355 be pretty sure, consider whether your video has either
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3356 fullscreen repetitive flashing patterns or very large temporary
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3357 occlusions which might force an I-frame.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3358 Adjust the first-pass <option>frameref</option> so it is large
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3359 enough to contain the duration of the flashing cycle (or occlusion).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3360 For example, if the scene flashes back and forth between two images
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3361 over a duration of three frames, set the first pass
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3362 <option>frameref</option> to 3 or higher.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3363 This issue is probably extremely rare in live action video material,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3364 but it does sometimes come up in video game captures.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3365 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3366
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3367 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3368 <emphasis role="bold">me</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3369 This option is for choosing the motion estimation search method.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3370 Altering this option provides a straightforward quality-vs-speed
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3371 tradeoff. <option>me=1</option> is only a few percent faster than
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3372 the default search, at a cost of under 0.1dB global PSNR. The
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3373 default setting (<option>me=2</option>) is a reasonable tradeoff
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3374 between speed and quality. <option>me=3</option> gains a little under
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3375 0.1dB global PSNR, with a speed penalty that varies depending on
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3376 <option>frameref</option>. At high values of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3377 <option>frameref</option> (e.g. 12 or so), <option>me=3</option>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3378 is about 40% slower than the default <option> me=2</option>. With
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3379 <option>frameref=3</option>, the speed penalty incurred drops to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3380 25%-30%.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3381 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3382 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3383 <option>me=4</option> uses an exhaustive search that is too slow for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3384 practical use.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3385 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3386 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3387
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3388 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3389 <emphasis role="bold">4x4mv</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3390 This option enables the use of 8x4, 4x8 and 4x4 subpartitions in
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3391 predicted macroblocks. Enabling it results in a fairly consistent
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3392 10%-15% loss of speed. This option is rather useless in source
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3393 containing only low motion, however in some high-motion source,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3394 particularly source with lots of small moving objects, gains of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3395 about 0.1dB can be expected.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3396 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3397 </listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3398
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3399 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3400 <emphasis role="bold">bframes</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3401 If you are used to encoding with other codecs, you may have found
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3402 that B-frames are not always useful.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3403 In H.264, this has changed: there are new techniques and block
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3404 types that are possible in B-frames.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3405 Usually, even a naive B-frame choice algorithm can have a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3406 significant PSNR benefit.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3407 It is interesting to note that using B-frames usually speeds up
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3408 the second pass somewhat, and may also speed up a single
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3409 pass encode if adaptive B-frame decision is turned off.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3410 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3411 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3412 With adaptive B-frame decision turned off
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3413 (<option>x264encopts</option>'s <option>nob_adapt</option>),
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3414 the optimal value for this setting is usually no more than
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3415 <option>bframes=1</option>, or else high-motion scenes can suffer.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3416 With adaptive B-frame decision on (the default behavior), it is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3417 safe to use higher values; the encoder will reduce the use of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3418 B-frames in scenes where they would hurt compression.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3419 The encoder rarely chooses to use more than 3 or 4 B-frames;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3420 setting this option any higher will have little effect.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3421 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3422
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3423 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3424 <emphasis role="bold">b_adapt</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3425 Note: This is on by default.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3426 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3427 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3428 With this option enabled, the encoder will use a reasonably fast
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3429 decision process to reduce the number of B-frames used in scenes that
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3430 might not benefit from them as much.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3431 You can use <option>b_bias</option> to tweak how B-frame-happy
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3432 the encoder is.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3433 The speed penalty of adaptive B-frames is currently rather modest,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3434 but so is the potential quality gain.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3435 It usually does not hurt, however.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3436 Note that this only affects speed and frametype decision on the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3437 first pass.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3438 <option>b_adapt</option> and <option>b_bias</option> have no
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3439 effect on subsequent passes.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3440 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3441
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3442 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3443 <emphasis role="bold">b_pyramid</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3444 You might as well enable this option if you are using >=2 B-frames;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3445 as the man page says, you get a little quality improvement at no
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3446 speed cost.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3447 Note that these videos cannot be read by libavcodec-based decoders
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3448 older than about March 5, 2005.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3449 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3450
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3451 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3452 <emphasis role="bold">weight_b</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3453 In typical cases, there is not much gain with this option.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3454 However, in crossfades or fade-to-black scenes, weighted
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3455 prediction gives rather large bitrate savings.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3456 In MPEG-4 ASP, a fade-to-black is usually best coded as a series
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3457 of expensive I-frames; using weighted prediction in B-frames
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3458 makes it possible to turn at least some of these into much smaller
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3459 B-frames.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3460 Encoding time cost is minimal, as no extra decisions need to be made.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3461 Also, contrary to what some people seem to guess, the decoder
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3462 CPU requirements are not much affected by weighted prediction,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3463 all else being equal.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3464 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3465 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3466 Unfortunately, the current adaptive B-frame decision algorithm
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3467 has a strong tendency to avoid B-frames during fades.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3468 Until this changes, it may be a good idea to add
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3469 <option>nob_adapt</option> to your x264encopts, if you expect
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3470 fades to have a large effect in your particular video
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3471 clip.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3472 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3473 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3474 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3475
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3476 <sect3 id="menc-feat-x264-encoding-options-misc-preferences">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3477 <title>Options pertaining to miscellaneous preferences</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3478 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3479 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3480 <emphasis role="bold">Two pass encoding</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3481 Above, it was suggested to always use two pass encoding, but there
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3482 are still reasons for not using it. For instance, if you are capturing
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3483 live TV and encoding in realtime, you are forced to use single-pass.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3484 Also, one pass is obviously faster than two passes; if you use the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3485 exact same set of options on both passes, two pass encoding is almost
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3486 twice as slow.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3487 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3488 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3489 Still, there are very good reasons for using two pass encoding. For
16340
5ceeeb85804c Avoid short forms.
diego
parents: 16339
diff changeset
3490 one thing, single pass ratecontrol is not psychic, and it often makes
5ceeeb85804c Avoid short forms.
diego
parents: 16339
diff changeset
3491 unreasonable choices because it cannot see the big picture. For example,
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3492 suppose you have a two minute long video consisting of two distinct
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3493 halves. The first half is a very high-motion scene lasting 60 seconds
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3494 which, in isolation, requires about 2500kbps in order to look decent.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3495 Immediately following it is a much less demanding 60-second scene
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3496 that looks good at 300kbps. Suppose you ask for 1400kbps on the theory
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3497 that this is enough to accomodate both scenes. Single pass ratecontrol
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3498 will make a couple of "mistakes" in such a case. First of all, it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3499 will target 1400kbps in both segments. The first segment may end up
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3500 heavily overquantized, causing it to look unacceptably and unreasonably
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3501 blocky. The second segment will be heavily underquantized; it may look
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3502 perfect, but the bitrate cost of that perfection will be completely
16340
5ceeeb85804c Avoid short forms.
diego
parents: 16339
diff changeset
3503 unreasonable. What is even harder to avoid is the problem at the
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3504 transition between the two scenes. The first seconds of the low motion
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3505 half will be hugely over-quantized, because the ratecontrol is still
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3506 expecting the kind of bitrate requirements it met in the first half
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3507 of the video. This "error period" of heavily over-quantized low motion
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3508 will look jarringly bad, and will actually use less than the 300kbps
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3509 it would have taken to make it look decent. There are ways to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3510 mitigate the pitfalls of single-pass encoding, but they may tend to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3511 increase bitrate misprediction.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3512 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3513 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3514 Multipass ratecontrol can offer huge advantages over a single pass.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3515 Using the statistics gathered from the first pass encode, the encoder
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3516 can estimate, with reasonable accuracy, the "cost" (in bits) of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3517 encoding any given frame, at any given quantizer. This allows for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3518 a much more rational, better planned allocation of bits between the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3519 expensive (high-motion) and cheap (low-motion) scenes. See
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3520 <option>qcomp</option> below for some ideas on how to tweak this
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3521 allocation to your liking.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3522 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3523 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3524 Moreover, two passes need not take twice as long as one pass. You can
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3525 tweak the options in the first pass for higher speed and lower quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3526 If you choose your options well, you can get a very fast first pass.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3527 The resulting quality in the second pass will be slightly lower because size
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3528 prediction is less accurate, but the quality difference is normally much
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3529 too small to be visible. Try, for example, adding
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3530 <option>subq=1:frameref=1</option> to the first pass
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3531 <option>x264encopts</option>. Then, on the second pass, use slower,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3532 higher-quality options:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3533 <option>subq=6:frameref=15:4x4mv:me=3</option>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3534 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3535 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3536 <emphasis role="bold">Three pass encoding</emphasis>?
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3537
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3538 x264 offers the ability to make an arbitrary number of consecutive
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3539 passes. If you specify <option>pass=1</option> on the first pass,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3540 then use <option>pass=3</option> on a subsequent pass, the subsequent
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3541 pass will both read the statistics from the previous pass, and write
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3542 its own statistics. An additional pass following this one will have
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3543 a very good base from which to make highly accurate predictions of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3544 framesizes at a chosen quantizer. In practice, the overall quality
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3545 gain from this is usually close to zero, and quite possibly a third
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3546 pass will result in slightly worse global PSNR than the pass before
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3547 it. In typical usage, three passes help if you get either bad bitrate
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3548 prediction or bad looking scene transitions when using only two passes.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3549 This is somewhat likely to happen on extremely short clips. There are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3550 also a few special cases in which three (or more) passes are handy
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3551 for advanced users, but for brevity, this guide omits discussing those
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3552 special cases.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3553
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3554 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3555 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3556 <emphasis role="bold">qcomp</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3557 <option>qcomp</option> trades off the number of bits allocated
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3558 to "expensive" high-motion versus "cheap" low-motion frames. At
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3559 one extreme, <option>qcomp=0</option> aims for true constant
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3560 bitrate. Typically this would make high-motion scenes look completely
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3561 awful, while low-motion scenes would probably look absolutely
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3562 perfect, but would also use many times more bitrate than they
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3563 would need in order to look merely excellent. At the other extreme,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3564 <option>qcomp=1</option> achieves nearly constant quantization parameter
16340
5ceeeb85804c Avoid short forms.
diego
parents: 16339
diff changeset
3565 (QP). Constant QP does not look bad, but most people think it is more
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3566 reasonable to shave some bitrate off of the extremely expensive scenes
16340
5ceeeb85804c Avoid short forms.
diego
parents: 16339
diff changeset
3567 (where the loss of quality is not as noticeable) and reallocate it to
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3568 the scenes that are easier to encode at excellent quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3569 <option>qcomp</option> is set to 0.6 by default, which may be slightly
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3570 low for many peoples' taste (0.7-0.8 are also commonly used).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3571 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3572 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3573 <emphasis role="bold">keyint</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3574 <option>keyint</option> is solely for trading off file seekability against
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3575 coding efficiency. By default, <option>keyint</option> is set to 250. In
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3576 25fps material, this guarantees the ability to seek to within 10 seconds
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3577 precision. If you think it would be important and useful to be able to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3578 seek within 5 seconds of precision, set <option>keyint=125</option>;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3579 this will hurt quality/bitrate slightly. If you care only about quality
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3580 and not about seekability, you can set it to much higher values
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3581 (understanding that there are diminishing returns which may become
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3582 vanishingly low, or even zero). The video stream will still have seekable
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3583 points as long as there are some scene changes.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3584 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3585 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3586 <emphasis role="bold">deblockalpha, deblockbeta</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3587 This topic is going to be a bit controversial.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3588 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3589 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3590 H.264 defines a simple deblocking procedure on I-blocks that uses
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3591 pre-set strengths and thresholds depending on the QP of the block
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3592 in question.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3593 By default, high QP blocks are filtered heavily, and low QP blocks
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3594 are not deblocked at all.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3595 The pre-set strengths defined by the standard are well-chosen and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3596 the odds are very good that they are PSNR-optimal for whatever
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3597 video you are trying to encode.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3598 The <option>deblockalpha</option> and <option>deblockbeta</option>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3599 parameters allow you to specify offsets to the preset deblocking
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3600 thresholds.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3601 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3602 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3603 Many people seem to think it is a good idea to lower the deblocking
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3604 filter strength by large amounts (say, -3).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3605 This is however almost never a good idea, and in most cases,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3606 people who are doing this do not understand very well how
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3607 deblocking works by default.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3608 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3609 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3610 The first and most important thing to know about the in-loop
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3611 deblocking filter is that the default thresholds are almost always
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3612 PSNR-optimal.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3613 In the rare cases that they are not optimal, the ideal offset is
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3614 plus or minus 1.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3615 Adjusting deblocking parameters by a larger amount is almost
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3616 guaranteed to hurt PSNR.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3617 Strengthening the filter will smear more details; weakening the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3618 filter will increase the appearance of blockiness.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3619 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3620 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3621 It is definitely a bad idea to lower the deblocking thresholds if
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3622 your source is mainly low in spacial complexity (i.e., not a lot
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3623 of detail or noise).
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3624 The in-loop filter does a rather excellent job of concealing
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3625 the artifacts that occur.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3626 If the source is high in spacial complexity, however, artifacts
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3627 are less noticeable.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3628 This is because the ringing tends to look like detail or noise.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3629 Human visual perception easily notices when detail is removed,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3630 but it does not so easily notice when the noise is wrongly
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3631 represented.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3632 When it comes to subjective quality, noise and detail are somewhat
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3633 interchangeable.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3634 By lowering the deblocking filter strength, you are most likely
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3635 increasing error by adding ringing artifacts, but the eye does
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3636 not notice because it confuses the artifacts with detail.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3637 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3638
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3639 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3640 This <emphasis role="bold">still</emphasis> does not justify
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3641 lowering the deblocking filter strength, however.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3642 You can generally get better quality noise from postprocessing.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3643 If your H.264 encodes look too blurry or smeared, try playing with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3644 <option>-vf noise</option> when you play your encoded movie.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3645 <option>-vf noise=8a:4a</option> should conceal most mild
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3646 artifacting.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3647 It will almost certainly look better than the results you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3648 would have gotten just by fiddling with the deblocking filter.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3649 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3650 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3651 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3652 </sect2>
16277
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3653
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3654 <sect2 id="menc-feat-x264-example-settings">
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3655 <title>Encoding settings examples</title>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3656
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3657 <para>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3658 The following settings are examples of different encoding
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3659 options combinations that affect the speed VS quality tradeoff
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3660 given the same target bitrate.
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3661
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3662 If you are aiming at perfect quality without too much thinking and
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3663 no size limitation, a low constant quantizer encode (like with
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3664 <option>qp_constant=18</option>) with no B-frames
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3665 (<option>bframes=0</option>) will probably look very good, but
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3666 will needlessly spend lots of bits to encode details that could be
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3667 coded more wisely using some advanced settings.
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3668 </para>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3669
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3670 <para>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3671 All the encoding settings were tested on a 720x448 @30000/1001 fps
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3672 video sample, the target bitrate was 900kbps, and the machine was an
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3673 AMD-64 3400+ at 2400 Mhz in 64 bits mode.
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3674 Each encoding setting is followed by the encoding speed (in frames
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3675 per seconds), the compression efficiency loss (in percent of bitrate)
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3676 compared to the "very high quality" setting, and the PSNR loss (in dB).
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3677 Please understand that depending on your source your machine type
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3678 and the development breakthrough, you may get very different results.
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3679 </para>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3680
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3681 <itemizedlist>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3682 <listitem><para><emphasis role="bold">Very high quality:</emphasis>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3683 <option>subq=6:4x4mv:8x8dct:me=3:frameref=5:bframes=3:b_pyramid:weight_b</option>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3684 6fps, 0%, 0dB.
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3685 </para></listitem>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3686 <listitem><para><emphasis role="bold">High quality:</emphasis>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3687 <option>subq=5:4x4mv:8x8dct:frameref=2:bframes=3:b_pyramid:weight_b:psnr</option>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3688 13fps, -13%, -0.89dB.
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3689 </para></listitem>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3690 <listitem><para><emphasis role="bold">Fast:</emphasis>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3691 <option>subq=4:bframes=2:b_pyramid:weight_b:psnr</option>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3692 17fps, -20%, -1.48dB.
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3693 </para></listitem>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3694 </itemizedlist>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3695 </sect2>
d5ff51c5970f Encoding setting examples for x264
gpoirier
parents: 16229
diff changeset
3696
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3697 </sect1>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3698
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3699 <sect1 id="menc-feat-vcd-dvd">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3700 <title>Using MEncoder to create VCD/SVCD/DVD-compliant files.</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3701
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3702 <sect2 id="menc-feat-vcd-dvd-constraints">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3703 <title>Format Constraints</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3704 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3705 <application>MEncoder</application> is capable of creating VCD, SCVD
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3706 and DVD format MPEG files using the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3707 <systemitem class="library">libavcodec</systemitem> library.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3708 These files can then be used in conjunction with
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3709 <ulink url="http://www.gnu.org/software/vcdimager/vcdimager.html">vcdimager</ulink>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3710 or
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3711 <ulink url="http://dvdauthor.sourceforge.net/">dvdauthor</ulink>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3712 to create discs that will play on a standard set-top player.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3713 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3714
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3715 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3716 The DVD, SVCD, and VCD formats are subject to heavy constraints.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3717 Only a small selection of encoded picture sizes and aspect ratios are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3718 available.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3719 If your movie does not already meet these requirements, you may have
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3720 to scale,crop or add black borders to the picture to make it
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3721 compliant.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3722 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3723
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3724 <sect3 id="menc-feat-vcd-dvd-constraints-resolution">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3725 <title>Format Constraints</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3726
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3727 <informaltable frame="all">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3728 <tgroup cols="9">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3729 <thead>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3730 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3731 <entry>Format</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3732 <entry>Resolution</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3733 <entry>V. Codec</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3734 <entry>V. Bitrate</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3735 <entry>Sample Rate</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3736 <entry>A. Codec</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3737 <entry>A. Bitrate</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3738 <entry>FPS</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3739 <entry>Aspect</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3740 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3741 </thead>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3742 <tbody>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3743 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3744 <entry>NTSC DVD</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3745 <entry>720x480, 704x480, 352x480, 352x240</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3746 <entry>MPEG-2</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3747 <entry>9800 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3748 <entry>48000 Hz</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3749 <entry>AC3,PCM</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3750 <entry>1536 kbps</entry>
16283
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3751 <entry>30000/1001, 24000/1001<footnote id="fn-ntsc-framerate"><para>
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3752 24000/1001 FPS can be achieved with a 3:2 pullup.
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3753 </para></footnote></entry>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3754 <entry>4:3, 16:9 (only for 720x480)</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3755 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3756 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3757 <entry>NTSC DVD</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3758 <entry>352x240<footnote id='fn-rare-resolutions'><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3759 These resolutions are rarely used for DVDs because
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3760 they are fairly low quality.</para></footnote></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3761 <entry>MPEG-1</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3762 <entry>1856 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3763 <entry>48000 Hz</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3764 <entry>AC3,PCM</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3765 <entry>1536 kbps</entry>
16283
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3766 <entry>30000/1001, 24000/1001<footnoteref linkend='fn-ntsc-framerate'/></entry>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3767 <entry>4:3, 16:9</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3768 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3769 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3770 <entry>NTSC SVCD</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3771 <entry>480x480</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3772 <entry>MPEG-2</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3773 <entry>2600 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3774 <entry>44100 Hz</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3775 <entry>MP2</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3776 <entry>384 kbps</entry>
16283
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3777 <entry>30000/1001</entry>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3778 <entry>4:3</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3779 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3780 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3781 <entry>NTSC VCD</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3782 <entry>352x240</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3783 <entry>MPEG-1</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3784 <entry>1150 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3785 <entry>44100 Hz</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3786 <entry>MP2</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3787 <entry>224 kbps</entry>
16283
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3788 <entry>24000/1001, 30000/1001</entry>
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3789 <entry>4:3</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3790 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3791 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3792 <entry>PAL DVD</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3793 <entry>720x576, 704x576, 352x576, 352x288</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3794 <entry>MPEG-2</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3795 <entry>9800 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3796 <entry>48000 Hz</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3797 <entry>MP2,AC3,PCM</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3798 <entry>1536 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3799 <entry>25</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3800 <entry>4:3, 16:9 (only for 720x576)</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3801 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3802 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3803 <entry>PAL DVD</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3804 <entry>352x288<footnoteref linkend='fn-rare-resolutions'/></entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3805 <entry>MPEG-1</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3806 <entry>1856 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3807 <entry>48000 Hz</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3808 <entry>MP2,AC3,PCM</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3809 <entry>1536 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3810 <entry>25</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3811 <entry>4:3, 16:9</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3812 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3813 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3814 <entry>PAL SVCD</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3815 <entry>480x576</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3816 <entry>MPEG-2</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3817 <entry>2600 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3818 <entry>44100 Hz</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3819 <entry>MP2</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3820 <entry>384 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3821 <entry>25</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3822 <entry>4:3</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3823 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3824 <row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3825 <entry>PAL VCD</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3826 <entry>352x288</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3827 <entry>MPEG-1</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3828 <entry>1150 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3829 <entry>44100 Hz</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3830 <entry>MP2</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3831 <entry>224 kbps</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3832 <entry>25</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3833 <entry>4:3</entry>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3834 </row>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3835 </tbody>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3836 </tgroup>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3837 </informaltable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3838
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3839 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3840 If your movie has 2.35:1 aspect (most recent action movies), you will
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3841 have to add black borders or crop the movie down to 16:9 to make a DVD
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3842 or VCD.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3843 If you add black borders, try to align them at 16-pixel boundaries in
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3844 order to minimize the impact on encoding performance.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3845 Thankfully DVD has sufficiently excessive bitrate that you do not have
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3846 to worry too much about encoding efficiency, but SVCD and VCD are
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3847 highly bitrate-starved and require effort to obtain acceptable quality.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3848 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3849 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3850
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3851 <sect3 id="menc-feat-vcd-dvd-constraints-gop">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3852 <title>GOP Size Constraints</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3853 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3854 DVD, VCD, and SVCD also constrain you to relatively low
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3855 GOP (Group of Pictures) sizes.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3856 For 30 fps material the largest allowed GOP size is 18.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3857 For 25 or 24 fps, the maximum is 15.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3858 The GOP size is set using the <option>keyint</option> option.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3859 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3860 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3861
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3862 <sect3 id="menc-feat-vcd-dvd-constraints-bitrate">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3863 <title>Bitrate Constraints</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3864 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3865 VCD video is required to be CBR at 1152 kbps.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3866 This highly limiting constraint also comes along with an extremly low vbv
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3867 buffer size of 327 kilobits.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3868 SVCD allows varying video bitrates up to 2500 kbps, and a somewhat less
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3869 restrictive vbv buffer size of 917 kilobits is allowed.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3870 DVD video bitrates may range anywhere up to 9800 kbps (though typical
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3871 bitrates are about half that), and the vbv buffer size is 1835 kilobits.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3872 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3873 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3874 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3875
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3876 <sect2 id="menc-feat-vcd-dvd-output">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3877 <title>Output Options</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3878 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3879 <application>MEncoder</application> has options to control the output
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3880 format.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3881 Using these options we can instruct it to create the correct type of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3882 file.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3883 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3884
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3885 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3886 The options for VCD and SVCD are called xvcd and xsvcd, because they
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3887 are extended formats.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3888 They are not strictly compliant, mainly because the output does not
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3889 contain scan offsets.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3890 If you need to generate an SVCD image, you should pass the output file
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3891 to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3892 <ulink url="http://www.gnu.org/software/vcdimager/vcdimager.html">vcdimager</ulink>.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3893 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3894
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3895 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3896 VCD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3897 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3898 -of mpeg -mpegopts format=xvcd
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3899 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3900 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3901
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3902 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3903 SVCD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3904 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3905 -of mpeg -mpegopts format=xsvcd
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3906 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3907 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3908
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3909 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3910 DVD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3911 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3912 -of mpeg -mpegopts format=dvd
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3913 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3914 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3915
16283
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3916 <para>
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3917 DVD with NTSC Pullup:
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3918 <screen>
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3919 -of mpeg -mpegopts format=dvd:telecine -ofps 24000/1001
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3920 </screen>
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3921 This allows 24000/1001 fps progressive content to be encoded at 30000/1001
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3922 fps whilst maintaing DVD-compliance.
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3923 </para>
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
3924
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3925 <sect3 id="menc-feat-vcd-dvd-output-aspect">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3926 <title>Aspect Ratio</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3927 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3928 The aspect argument of <option>-lavcopts</option> is used to encode
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3929 the aspect ratio of the file.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3930 During playback the aspect ratio is used to restore the video to the
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3931 correct size.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3932 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3933
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3934 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3935 16:9 or "Widescreen"
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3936 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3937 -lavcopts aspect=16/9
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3938 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3939 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3940
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3941 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3942 4:3 or "Fullscreen"
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3943 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3944 -lavcopts aspect=4/3
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3945 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3946 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3947
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3948 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3949 2.35:1 or "Cinemascope" NTSC
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3950 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3951 -vf scale=720:368,expand=720:480 -lavcopts aspect=16/9
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3952 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3953 To calculate the correct scaling size, use the expanded NTSC width of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3954 854/2.35 = 368
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3955 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3956
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3957 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3958 2.35:1 or "Cinemascope" PAL
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3959 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3960 -vf scale="720:432,expand=720:576 -lavcopts aspect=16/9
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3961 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3962 To calculate the correct scaling size, use the expanded PAL width of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3963 1024/2.35 = 432
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3964 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3965
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3966 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3967
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3968 <sect3 id="menc-feat-vcd-dvd-output-srate">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3969 <title>Sample Rate Conversion</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3970 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3971 If the audio sample rate in the original file is not the same as
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3972 required by the target format, sample rate conversion is required.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3973 This is achieved using the <option>-srate</option> option and
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3974 the <option>-af lavcresample</option> audio filter together.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3975 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3976 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3977 DVD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3978 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3979 -srate 48000 -af lavcresample=48000
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3980 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3981 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3982 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3983 VCD and SVCD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3984 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3985 -srate 44100 -af lavcresample=44100
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3986 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3987 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3988 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3989 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3990
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3991 <sect2 id="menc-feat-vcd-dvd-lavc">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3992 <title>Using libavcodec for VCD/SVCD/DVD Encoding</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3993
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3994 <sect3 id="menc-feat-vcd-dvd-lavc-intro">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3995 <title>Introduction</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3996 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3997 <systemitem class="library">libavcodec</systemitem> can be used to
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3998 create VCD/SVCD/DVD compliant video by using the appropriate options.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
3999 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4000 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4001
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4002 <sect3 id="menc-feat-vcd-dvd-lavc-options">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4003 <title>lavcopts</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4004 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4005 This is a list of fields in <option>-lavcopts</option> that you may
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4006 be required to change in order to make a complaint movie for VCD, SVCD,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4007 or DVD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4008 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4009
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4010 <itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4011 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4012 <emphasis role="bold">acodec</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4013 <option>mp2</option> for VCD, SVCD, or PAL DVD;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4014 <option>ac3</option> is most commonly used for DVD.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4015 PCM audio may also be used for DVD, but this is mostly a big waste of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4016 space.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4017 Note that MP3 audio is not compliant for any of these formats, but
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4018 players often have no problem playing it anyway.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4019 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4020
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4021 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4022 <emphasis role="bold">abitrate</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4023 224 for VCD; up to 384 for SVCD; up to 1536 for DVD, but commonly
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4024 used values range from 192 kbps for stereo to 384 kbps for 5.1 channel
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4025 sound.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4026 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4027
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4028 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4029 <emphasis role="bold">vcodec</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4030 <option>mpeg1video</option> for VCD;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4031 <option>mpeg2video</option> for SVCD;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4032 <option>mpeg2video</option> is usually used for DVD but you may also use
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4033 <option>mpeg1video</option> for CIF resolutions.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4034 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4035
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4036 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4037 <emphasis role="bold">keyint</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4038 Used to set the GOP size.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4039 18 for 30fps material, or 15 for 25/24 fps material.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4040 Commercial producers seem to prefer keyframe intervals of 12.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4041 It is possible to make this much larger and still retain compatibility
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4042 with most players.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4043 A <option>keyint</option> of 25 should never cause any problems.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4044 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4045
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4046 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4047 <emphasis role="bold">vrc_buf_size</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4048 327 for VCD, 917 for SVCD, and 1835 for DVD.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4049 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4050
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4051 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4052 <emphasis role="bold">vrc_minrate</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4053 1152, for VCD. May be left alone for SVCD and DVD.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4054 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4055
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4056 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4057 <emphasis role="bold">vrc_maxrate</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4058 1152 for VCD; 2500 for SVCD; 9800 for DVD.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4059 For SVCD and DVD, you might wish to use lower values depending on your
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4060 own personal preferences and requirements.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4061 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4062
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4063 <listitem><para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4064 <emphasis role="bold">vbitrate</emphasis>:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4065 1152 for VCD;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4066 up to 2500 for SVCD;
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4067 up to 9800 for DVD.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4068 For the latter two formats, vbitrate should be set based on personal
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4069 preference.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4070 For instance, if you insist on fitting 20 or so hours on a DVD, you
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4071 could use vbitrate=400.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4072 The resulting video quality would probably be quite bad.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4073 If you are trying to squeeze out the maximum possible quality on a DVD,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4074 use vbitrate=9800, but be warned that this could constrain you to less
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4075 than an hour of video on a single-layer DVD.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4076 </para></listitem>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4077 </itemizedlist>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4078 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4079
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4080 <sect3 id="menc-feat-vcd-dvd-lavc-examples">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4081 <title>Examples</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4082 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4083 This is a typical minimum set of <option>-lavcopts</option> for
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4084 encoding video:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4085 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4086 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4087 VCD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4088 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4089 -lavcopts vcodec=mpeg1video:vrc_buf_size=327:vrc_minrate=1152:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4090 vrc_maxrate=1152:vbitrate=1152:keyint=15:acodec=mp2
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4091 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4092 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4093
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4094 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4095 SVCD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4096 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4097 -lavcopts vcodec=mpeg2video:vrc_buf_size=917:vrc_maxrate=2500:vbitrate=1800:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4098 keyint=15:acodec=mp2
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4099 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4100 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4101
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4102 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4103 DVD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4104 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4105 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4106 keyint=15:acodec=ac3
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4107 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4108 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4109
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4110 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4111
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4112 <sect3 id="menc-feat-vcd-dvd-lavc-advanced">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4113 <title>Advanced Options</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4114 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4115 For higher quality encoding, you may also wish to add quality-enhancing
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4116 options to lavcopts, such as <option>trell</option>,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4117 <option>mbd=2</option>, and others.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4118 Note that <option>qpel</option> and <option>v4mv</option>, while often
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4119 useful with MPEG-4, are not usable with MPEG-1 or MPEG-2.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4120 Also, if you are trying to make a very high quality DVD encode, it may
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4121 be useful to add <option>dc=10</option> to lavcopts.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4122 Doing so may help reduce the appearance of blocks in flat-colored areas.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4123 Putting it all together, this is an example of a set of lavcopts for a
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4124 higher quality DVD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4125 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4126
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4127 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4128 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4129 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=8000:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4130 keyint=15:trell:mbd=2:precmp=2:subcmp=2:cmp=2:dia=-10:predia=-10:cbp:mv0:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4131 vqmin=1:lmin=1:dc=10
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4132 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4133 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4134
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4135 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4136 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4137
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4138 <sect2 id="menc-feat-vcd-dvd-audio">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4139 <title>Encoding Audio</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4140 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4141 VCD and SVCD support MPEG-1 layer II audio, using one of
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4142 <systemitem class="library">toolame</systemitem>,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4143 <systemitem class="library">twolame</systemitem>,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4144 or <systemitem class="library">libavcodec</systemitem>'s MP2 encoder.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4145 The libavcodec MP2 is far from being as good as the other two libraries,
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4146 however it should always be available to use.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4147 VCD only supports constant bitrate audio (CBR) whereas SVCD supports
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4148 variable bitrate (VBR), too.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4149 Be careful when using VBR because some bad standalone players might not
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4150 support it too well.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4151 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4152
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4153 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4154 For DVD audio, <systemitem class="library">libavcodec</systemitem>'s
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4155 AC3 codec is used.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4156 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4157
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4158 <sect3 id="menc-feat-vcd-dvd-audio-toolame">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4159 <title>toolame</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4160 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4161 For VCD and SVCD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4162 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4163 -oac toolame -toolameopts br=224
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4164 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4165 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4166 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4167
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4168 <sect3 id="menc-feat-vcd-dvd-audio-twolame">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4169 <title>twolame</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4170 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4171 For VCD and SVCD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4172 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4173 -oac twolame -twolameopts br=224
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4174 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4175 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4176 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4177
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4178 <sect3 id="menc-feat-vcd-dvd-audio-lavc">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4179 <title>libavcodec</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4180 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4181 For DVD with 2 channel sound:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4182 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4183 -oac lavc -lavcopts acodec=ac3:abitrate=192
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4184 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4185 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4186 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4187 For DVD with 5.1 channel sound:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4188 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4189 -channels 6 -oac lavc -lavcopts acodec=ac3:abitrate=384
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4190 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4191 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4192 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4193 For VCD and SVCD:
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4194 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4195 -oac lavc -lavcopts acodec=mp2:abitrate=224
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4196 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4197 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4198 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4199
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4200 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4201
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4202 <sect2 id="menc-feat-vcd-dvd-all">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4203 <title>Putting it all Together</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4204 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4205 This section shows some complete commands for creating VCD/SVCD/DVD
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4206 compliant videos.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4207 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4208
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4209 <sect3 id="menc-feat-vcd-dvd-all-pal-dvd">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4210 <title>PAL DVD</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4211 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4212 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4213 mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:576,\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4214 harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4215 vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:acodec=ac3:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4216 abitrate=192:aspect=16/9 -ofps 25 \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4217 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4218 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4219 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4220 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4221
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4222 <sect3 id="menc-feat-vcd-dvd-all-ntsc-dvd">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4223 <title>NTSC DVD</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4224 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4225 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4226 mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:480,\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4227 harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4228 vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:acodec=ac3:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4229 abitrate=192:aspect=16/9 -ofps 30000/1001 \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4230 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4231 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4232 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4233 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4234
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4235 <sect3 id="menc-feat-vcd-dvd-all-pal-ac3-copy">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4236 <title>PAL AVI Containing AC3 Audio to DVD</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4237 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4238 If the source already has AC3 audio, use -oac copy instead of re-encoding it.
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4239 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4240 mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd -vf scale=720:576,\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4241 harddup -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4242 vbitrate=5000:keyint=15:aspect=16/9 -ofps 25 \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4243 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4244 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4245 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4246 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4247
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4248 <sect3 id="menc-feat-vcd-dvd-all-ntsc-ac3-copy">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4249 <title>NTSC AVI Containing AC3 Audio to DVD</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4250 <para>
16283
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
4251 If the source already has AC3 audio, and is NTSC @ 24000/1001 fps:
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4252 <screen>
16283
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
4253 mencoder -oac copy -ovc lavc -of mpeg -mpegopts format=dvd:telecine \
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
4254 -vf scale=720:480,harddup -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:\
67dc03c037e7 How to encode with soft 3:2 pullup, patch by Brendan McCarthy
gpoirier
parents: 16277
diff changeset
4255 vrc_maxrate=9800:vbitrate=5000:keyint=15:aspect=16/9 -ofps 24000/1001 \
16080
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4256 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4257 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4258 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4259 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4260
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4261 <sect3 id="menc-feat-vcd-dvd-all-pal-svcd">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4262 <title>PAL SVCD</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4263 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4264 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4265 mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4266 scale=480:576,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4267 vcodec=mpeg2video:mbd=2:keyint=15:vrc_buf_size=917:vrc_minrate=600:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4268 vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 25 \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4269 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4270 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4271 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4272 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4273
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4274 <sect3 id="menc-feat-vcd-dvd-all-ntsc-svcd">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4275 <title>NTSC SVCD</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4276 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4277 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4278 mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xsvcd -vf \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4279 scale=480:480,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4280 vcodec=mpeg2video:mbd=2:keyint=18:vrc_buf_size=917:vrc_minrate=600:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4281 vbitrate=2500:vrc_maxrate=2500:acodec=mp2:abitrate=224 -ofps 30000/1001 \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4282 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4283 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4284 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4285 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4286
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4287 <sect3 id="menc-feat-vcd-dvd-all-pal-vcd">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4288 <title>PAL VCD</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4289 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4290 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4291 mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4292 scale=352:288,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4293 vcodec=mpeg1video:keyint=15:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4294 vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 25 \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4295 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4296 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4297 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4298 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4299
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4300 <sect3 id="menc-feat-vcd-dvd-all-ntsc-vcd">
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4301 <title>NTSC VCD</title>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4302 <para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4303 <screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4304 mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=xvcd -vf \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4305 scale=352:240,harddup -srate 44100 -af lavcresample=44100 -lavcopts \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4306 vcodec=mpeg1video:keyint=18:vrc_buf_size=327:vrc_minrate=1152:vbitrate=1152:\
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4307 vrc_maxrate=1152:acodec=mp2:abitrate=224 -ofps 30000/1001 \
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4308 -o <replaceable>movie.mpg</replaceable> <replaceable>movie.avi</replaceable>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4309 </screen>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4310 </para>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4311 </sect3>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4312
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4313 </sect2>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4314
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4315 </sect1>
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4316
baae7cdb0726 re-organize MEncoder doc in a more sensible way: splitting "basic mencoder usage" and "encoding with mencoder".
gpoirier
parents:
diff changeset
4317 </chapter>