Mercurial > mplayer.hg
annotate DOCS/encoding.html @ 7866:732a8bfc7681
Added the -geometry option (supports fbdev and tdfxfb drivers)
author | mark |
---|---|
date | Wed, 23 Oct 2002 16:52:54 +0000 |
parents | 988498df1996 |
children | 533e212cd282 |
rev | line source |
---|---|
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
2674 | 2 <HTML> |
4982
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4919
diff
changeset
|
3 |
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4919
diff
changeset
|
4 <HEAD> |
6882
f3f87f6bf5cf
Added a uniform title: something - MPlayer - The Movie Player for Linux.
diego
parents:
6724
diff
changeset
|
5 <TITLE>Encoding - MEncoder - The Movie Encoder for Linux</TITLE> |
6391 | 6 <LINK REL="stylesheet" TYPE="text/css" HREF="default.css"> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
7 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> |
4982
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4919
diff
changeset
|
8 </HEAD> |
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4919
diff
changeset
|
9 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
10 <BODY> |
2674 | 11 |
12 | |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
13 <H2><A NAME="encoding">2.4 Encoding with MEncoder</A></H2> |
6974 | 14 |
7814 | 15 <P>MEncoder (MPlayer's Movie Encoder) is a simple movie encoder, |
6960 | 16 designed to encode MPlayer-playable movies |
7640 | 17 (<B>AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET/PVA</B>) to other |
6960 | 18 MPlayer-playable formats (see below). It can encode with various codecs, like |
19 <B>DivX4</B> (1 or 2 passes), libavcodec, | |
20 <B>PCM</B>/<B>MP3</B>/<B>VBR MP3</B> audio. Also has powerful plugin system | |
21 for video manipulation.</P> | |
2674 | 22 |
6974 | 23 |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
24 <H3><A NAME="compilation">2.4.1 Compilation</A></H3> |
3721 | 25 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
26 <UL> |
7814 | 27 <LI><B>OPTIONAL</B> - read MPlayer's compilation instruction.</LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
28 <LI><B>OPTIONAL (LINUX ONLY)</B> - download the newest <B>DivX4linux</B> libs |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
29 from <A HREF="http://avifile.sourceforge.net/download.htm">avifile.sourceforge.net</A>, |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
30 and have them PROPERLY installed. You need them if you want DivX4 |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
31 (1/2 pass) encoding.</LI> |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
32 <LI><B>OPTIONAL</B> - <A HREF="codecs.html#xvid">download and install |
6583 | 33 <B>XViD</B></A>. Not very useful, libavcodec's <I>mpeg4</I> codec |
34 can encode with much better speed AND quality than XViD or DivX4/5.</LI> | |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
35 <LI><B>OPTIONAL</B> - for libavcodec support, install libavcodec as |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
36 described in the <A HREF="codecs.html#libavcodec">libavcodec section</A>.</LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
37 <LI><B>OPTIONAL</B> - download and compile <B>libmp3lame</B> (from lame 3.89beta or lame CVS).<BR> |
6575 | 38 <B>WARNING: DO NOT COMPILE LAME < 3.90 WITH <U>GCC 2.96</U>! It won't |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
39 work properly!</B><BR> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
40 This |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
41 is needed for CBR/VBR MP3 audio encoding ability. Note that a single |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
42 <CODE>lame</CODE> binary isn't sufficient. BTW: the less optimization |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
43 you use for lame, the better the quality will be. You can test |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
44 quality by running <CODE>make test</CODE> after lame's compiling process |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
45 is over. The resulting number should be less than <B>30</B>. Don't |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
46 panic if it's <B>400</B> or so, you shouldn't heard any audible |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
47 quality decrease. Oh, and if your compiler doesn't even run |
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
48 <CODE>make test</CODE> ... Well, delete that <B>GCC 2.96</B> or upgrade |
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
49 lame to at least <B>3.90</B>.</LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
50 <LI><B>OPTIONAL</B> - <CODE>libjpeg</CODE> and <CODE>libpng</CODE> - |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
51 as described in the <A HREF="documentation.html#installation">Installation</A> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
52 section</LI> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
53 </UL> |
2674 | 54 |
55 <P>You are ready. As you probably know, other encoding tools need the | |
7814 | 56 <I>avifile</I> library installed. MEncoder doesn't need it at all.</P> |
2674 | 57 |
6974 | 58 |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
59 <H3><A NAME="features">2.4.2 MEncoder features</A></H3> |
3721 | 60 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
61 <UL> |
7814 | 62 <LI>encoding from the wide range of fileformats and decoders of MPlayer</LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
63 <LI>encoding to all the codecs of ffmpeg's |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
64 <A HREF="codecs.html#libavcodec">libavcodec</A></LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
65 <LI>video encoding from <B>V4L compatible TV tuners</B></LI> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
66 <LI>encoding/multiplexing to interleaved AVI files with proper index</LI> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
67 <LI>creating files from external audio stream</LI> |
7001 | 68 <LI>1, 2 or 3 pass encoding</LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
69 <LI><B>VBR</B> MP3 audio - <B>IMPORTANT NOTE:</B> VBR MP3 audio doesn't |
7061 | 70 always play nicely on Windows players! On the other hand, currently |
7814 | 71 MEncoder's CBR encoding is totally broken on Win32 players :)</LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
72 <LI>PCM audio</LI> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
73 <LI>stream copying</LI> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
74 <LI>input A/V synchronizing (PTS-based, can be disabled with -mc 0 option)</LI> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
75 <LI>FPS correction with <CODE>-ofps</CODE> option (useful when encoding |
6960 | 76 29.97fps VOB to 24fps AVI)</LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
77 <LI>using our very powerful plugin system (crop, expand, flip, postprocess, |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
78 rotate, scale, rgb/yuv conversion)</LI> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
79 <LI>can encode DVD/VOBsub <B>AND</B> text subtitles into the output file</LI> |
6711 | 80 <LI>can rip DVD subtitles to Vobsub format</LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
81 </UL> |
2674 | 82 |
7047 | 83 <H4>Planned features:</H4> |
84 | |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
85 <UL> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
86 <LI>even wider variety of available en/decoding formats/codecs |
6960 | 87 (creating VOB files with DivX4/Indeo5/VIVO streams :)</LI> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
88 <LI>audio encoding from v4l (DONE for FreeBSD ?)</LI> |
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
89 </UL> |
2674 | 90 |
6974 | 91 |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
92 <H4><A NAME="2pass">2.4.2.1 Encoding 2 or 3-pass DivX4</A></H4> |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2745
diff
changeset
|
93 |
6960 | 94 <P><U><B>2-pass encoding:</B></U> the name comes from the fact that this method |
95 encodes the file <I>twice</I>. The first encoding (dubbed <I>pass</I>) | |
96 creates some temporary files (*.log) with a size of few megabytes, do not | |
97 delete them yet (you can delete the AVI). In the second pass, the 2-pass | |
98 output file is created, using the bitrate data from the temporary files. The | |
99 resulting file will have much better image quality. If this is the first time | |
100 you heard about this, you should consult some guides available on the | |
101 Net.</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2745
diff
changeset
|
102 |
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2745
diff
changeset
|
103 <P>This example shows how to encode a DVD to a 2-pass DivX4 AVI. Just two |
6960 | 104 commands are needed:<BR> |
105 <CODE> rm frameno.avi</CODE> - remove this file, which | |
106 can come from a previous 3-pass encoding (it interferes with current | |
107 one)<BR> | |
7640 | 108 <CODE> mencoder -dvd 2 -ovc lavc -lavcopts |
109 vcodec=mpeg4:more_options -oac copy -o movie.avi -pass 1<BR> | |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
110 mencoder -dvd 2 -ovc lavc -lavcopts |
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
111 vcodec=mpeg4:more_options -oac copy -o movie.avi -pass 2</CODE></P> |
4397 | 112 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
113 <P><U><B>3-pass encoding:</B></U> this is an extension of 2-pass encoding, |
4397 | 114 where the audio encoding takes place in a separate pass. This method enables |
115 estimation of recommended video bitrate in order to fit on a CD. Also, the | |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
116 audio is encoded only once, unlike in 2-pass mode. The schematics:</P> |
4397 | 117 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
118 <OL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
119 <LI>Remove conflicting temporary file: |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
120 <P><CODE>rm frameno.avi</CODE></P></LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
121 <LI>First pass: |
7640 | 122 <P><CODE>mencoder <file/DVD> -ovc frameno -oac mp3lame -lameopts vbr=3:more_options -o frameno.avi</CODE></P> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
123 <P>An audio-only avi file will be created, containing |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
124 <B>only</B> the requested audio stream. Don't forget <CODE>-lameopts</CODE>, |
7814 | 125 if you need to set it. If you were encoding a long movie, MEncoder |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
126 prints the recommended bitrate values for 650Mb, 700Mb, and 800Mb |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
127 destination sizes, after this pass finishes.</P></LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
128 <LI>Second pass: |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
129 <P><CODE>mencoder <file/DVD> -oac copy -pass 1 |
7640 | 130 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=<bitrate></CODE></P> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
131 <P>Alias the first pass of DivX4 video encoding. |
7814 | 132 Optionally specify the video bitrate MEncoder printed at the end of |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
133 the previous pass.</P></LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
134 <LI>Third pass: |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
135 <P><CODE>mencoder <file/DVD> -oac copy -pass 2 |
7640 | 136 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=<bitrate></CODE></P> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
137 <P>Alias the second pass of DivX4 video encoding. |
7814 | 138 Optionally specify the video bitrate MEncoder printed at the end of |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
139 the previous pass. In this pass, audio from <CODE>frameno.avi</CODE> will |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
140 be inserted into the destination file.. and it's all ready!</P></LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
141 </OL> |
4397 | 142 |
7047 | 143 <H4>Example for 3-pass encoding:</H4> |
4397 | 144 |
145 <P><CODE> rm frameno.avi</CODE> - remove this file, | |
146 which can come from a previous 3-pass encoding (it interferes with current | |
147 one)<BR> | |
6960 | 148 <CODE> mencoder -dvd 2 -ovc frameno |
7640 | 149 -o frameno.avi -oac mp3lame -lameopts vbr=3:more_options<BR> |
150 mencoder -dvd 2 -ovc lavc | |
6960 | 151 -lavcopts vcodec=mpeg4:more_options -oac copy -o movie.avi -pass 1<BR> |
7640 | 152 mencoder -dvd 2 -ovc lavc |
6974 | 153 -lavcopts vcodec=mpeg4:more_options -oac copy -o movie.avi -pass 2</CODE></P> |
4397 | 154 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
155 <P><U><B>2 or 3-pass encoding using internal libavcodec controller:</B></U> |
6960 | 156 Optionally you can use libavcodec's internal 2 or 3-pass mode, it may give |
157 you better final rate accuracy than using the external, DivX4-inspired 2-pass | |
158 rate controler with libavcodec.</P> | |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
159 |
5811 | 160 <UL> |
6960 | 161 <LI><B>2-pass encoding:</B><BR> |
162 <CODE>rm -f lavc_stats.txt<BR> | |
163 mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 (audio-options) -o | |
164 movie.avi<BR> | |
165 mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 (audio-options) -o | |
166 movie.avi</CODE></LI> | |
167 <LI><B>3-pass encoding:</B><BR> | |
168 <CODE>rm -f frameno.avi lavc_stats.txt<BR> | |
169 mencoder -dvd 2 -ovc frameno (audio-options) -o frameno.avi<BR> | |
170 mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o | |
171 movie.avi<BR> | |
172 mencoder -dvd 2 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o | |
173 movie.avi</CODE></LI> | |
5811 | 174 </UL> |
2868 | 175 |
6974 | 176 |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
177 <H4><A NAME="rescaling">2.4.2.2 Rescaling movies</A></H4> |
3438 | 178 |
179 <P>Often the need to resize movie images' size emerges. Its reasons can be many, | |
180 examples are decreasing output file size, encoding SVCDs to DivX. Ripped DVDs | |
181 are mostly rescaled, for example a 4:3 DVD should be 640x480, especially | |
182 when you want it to fit to 1 CD, and have good quality at the same time. | |
183 SVCDs have 480x480 size, and their header contains the aspect ratio the | |
184 player should use (Ex.: 480x480 + 4:3 = 640x480). However when encoding to | |
185 AVI (DivX) files, you have be aware that AVI headers don't store this | |
186 value. Thus, the only solution is rescaling.</P> | |
187 | |
5968 | 188 <P>The scaling process is handled by the <I>'scale'</I> video filter: |
189 <CODE>-vop scale=X:Y</CODE>. Its quality can be set with the | |
7814 | 190 <CODE>-sws</CODE> option. If it's not specified, MEncoder will use 0: |
5968 | 191 fast bilinear.</P> |
3438 | 192 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
193 <P>Usage:<BR> |
7640 | 194 <CODE> mencoder sample-svcd.mpg -ovc lavc -lavcopts |
195 vcodec=mpeg4:more_options -vop scale=640:480 -oac copy -o | |
6960 | 196 output.avi</CODE></P> |
3438 | 197 |
4680 | 198 |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
199 <H4><A NAME="copying">2.4.2.3 Stream copying</A></H4> |
2868 | 200 |
7814 | 201 <P>MEncoder can handle input streams in two ways: <B>encode</B> or |
3438 | 202 <B>copy</B> them. This section is about <B>copying</B>.</P> |
2868 | 203 |
3438 | 204 <UL> |
6960 | 205 <LI><B>Video stream</B> (option <CODE>-ovc copy</CODE>): nice stuff can be |
206 done :)<BR> | |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6974
diff
changeset
|
207 Like, putting (not converting) FLI or VIVO or MPEG1 video into |
7814 | 208 an AVI file. Of course only MPlayer can play such files :) And it |
6960 | 209 probably has no real life value at all. Rationally: video stream copying |
210 can be useful for example when only the audio stream has to be encoded | |
211 (like, uncompressed PCM to MP3).</LI> | |
3438 | 212 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
213 <LI><B>Audio stream</B> (option <CODE>-oac copy</CODE>): straightforward. |
6960 | 214 It is possible to take an external audio file (MP3, Vorbis) and mux it |
215 into the output stream. Use the <CODE>-audiofile <filename></CODE> | |
216 option for this.</LI> | |
3438 | 217 </UL> |
218 | |
4680 | 219 |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
220 <H4><A NAME="fixing">2.4.2.4 Fixing AVIs with broken index or interleaving</A></H4> |
3583 | 221 |
222 <P>Easiest thing. We simply copy the video and audio streams, and | |
7814 | 223 MEncoder generates the index. Of course this cannot fix possible bugs |
6960 | 224 in the video and/or audio streams. It also fixes files with broken |
225 interleaving, thus the <CODE>-ni</CODE> option won't be needed for them | |
226 anymore.</P> | |
3583 | 227 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
228 <P>Command: <CODE>mencoder -idx input.avi -ovc copy -oac copy -o output.avi</CODE></P> |
3583 | 229 |
3721 | 230 |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
231 <H4><A NAME="libavcodec">2.4.2.5 Encoding with the libavcodec codec family</A></H4> |
3721 | 232 |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
233 <P><A HREF="codecs.html#libavcodec">libavcodec</A> provides simple encoding to a |
6960 | 234 lot of interesting video and audio formats (currently its audio codecs are |
235 unsupported). You can encode to the following codecs:</P> | |
3721 | 236 |
237 <UL> | |
238 <LI>mjpeg - Motion JPEG</LI> | |
3774 | 239 <LI>h263 - H263</LI> |
3721 | 240 <LI>h263p - H263 Plus</LI> |
241 <LI>mpeg4 - DivX4</LI> | |
242 <LI>msmpeg4 - the old DivX</LI> | |
5973 | 243 <LI>msmpeg4v2 - Micro$oft MPEG4 V2 (DivX alias MP43 predecessor)</LI> |
3721 | 244 <LI>rv10 - an old RealVideo codec</LI> |
245 <LI>mpeg1video - MPEG1 video :)</LI> | |
246 </UL> | |
247 | |
248 <P>The first column contains the codec names that should be passed after the | |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
249 <CODE>vcodec</CODE> config, like: <CODE>-lavcopts vcodec=msmpeg4</CODE></P> |
3721 | 250 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
251 <P>An example, with MJPEG compression:<BR> |
6960 | 252 <CODE> mencoder -dvd 2 -o title2.avi -ovc lavc |
7640 | 253 -lavcopts vcodec=mjpeg -oac copy</CODE></P> |
3912 | 254 |
4680 | 255 |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
256 <H4><A NAME="image_files">2.4.2.6 Encoding from multiple input image files (JPEGs, PNGs or TGAs)</A></H4> |
4919 | 257 |
7814 | 258 <P>MEncoder is capable of creating movies from one or more JPEG, PNG or TGA |
7366 | 259 files. With simple framecopy it can create MJPEG (Motion JPEG), MPNG |
260 (Motion PNG) or MTGA (Motion TGA) files.</P> | |
4919 | 261 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
262 Explanation of the process: |
4919 | 263 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
264 <OL> |
7814 | 265 <LI>MEncoder <I>decodes</I> the input image(s) with |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
266 <CODE>libjpeg</CODE> (when decoding PNGs, it will use <B>libpng</B>).</LI> |
4919 | 267 |
7814 | 268 <LI>MEncoder then feeds the decoded image to the chosen video compressor |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
269 (DivX4, Xvid, ffmpeg msmpeg4, etc...). Watch for the PNG decoder, as |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
270 currently it can output only to RGB formats, thus can't be used with codecs |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
271 that require YUV as input, like DivX4 or ffmpeg's msmpeg4.</LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
272 </OL> |
4919 | 273 |
7047 | 274 <H4>Examples</H4> |
4919 | 275 |
276 <P>The explanation of the <CODE>-mf</CODE> option can be found below in the | |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
277 global <A HREF="#options">Options</A> section and in the man page.</P> |
4919 | 278 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
279 <P><I>Creating a DivX4 file from all the JPEG files in the current dir:</I><BR> |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
280 <CODE>mencoder \*.jpg -mf on:w=800:h=600:fps=25 -ovc divx4 |
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
281 -oac copy -o output.avi</CODE></P> |
4919 | 282 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
283 <P><I>Creating a DivX4 file from some JPEG files in the current dir:</I><BR> |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
284 <CODE>mencoder frame001.jpg,frame002.jpg -mf on:w=800:h=600:fps=25 |
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
285 -ovc divx4 -oac copy -o output.avi</CODE></P> |
5378 | 286 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
287 <P><I>Creating a Motion JPEG (MJPEG) file from all the JPEG files in the current dir:</I><BR> |
4919 | 288 <CODE>mencoder \*.jpg -mf on:w=800:h=600:fps=25 -ovc copy |
7640 | 289 -oac copy -o output.avi</CODE></P> |
4919 | 290 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
291 <P><I>Creating an uncompressed file from all the PNG files in the current dir:</I><BR> |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
292 <CODE>mencoder \*.png -mf on:w=800:h=600:fps=25:type=png -ovc raw |
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
293 -oac copy -o output.avi</CODE></P> |
4919 | 294 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
295 <P><I>Creating a Motion PNG (MPNG) file from all the PNG files in the current dir:</I><BR> |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
296 <CODE>mencoder \*.png -mf on:w=800:h=600:fps=25:type=png -ovc copy |
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
297 -oac copy -o output.avi</CODE></P> |
4919 | 298 |
7366 | 299 <P><I>Creating a Motion TGA (MTGA) file from all the TGA files in the current dir:</I><BR> |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
300 <CODE>mencoder \*.tga -mf on:w=800:h=600:fps=25:type=tga -ovc copy |
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
301 -oac copy -o output.avi</CODE></P> |
7366 | 302 |
4919 | 303 |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
304 <H4><A NAME="vobsub">2.4.2.7 Extracting DVD subtitles to Vobsub file</A></H4> |
6711 | 305 |
7814 | 306 <P>MEncoder is capable of extracting subtitles from a DVD into |
6960 | 307 Vobsub fomat files. They consist of a pair of files ending in |
308 <CODE>.idx</CODE> and <CODE>.sub</CODE> and are usually packaged in a single | |
7814 | 309 <CODE>.rar</CODE> archive. MPlayer can play these with the |
6960 | 310 <CODE>-vobsub</CODE> and <CODE>-vobsubid</CODE> options.</P> |
6711 | 311 |
6724
ab3d2c60b454
Some spellchecking, moved the section to the correct position, some
diego
parents:
6711
diff
changeset
|
312 <P>You specify the basename (i.e without the <CODE>.idx</CODE> or |
6960 | 313 <CODE>.sub</CODE> extension) of the output files with <CODE>-vobsubout</CODE> |
314 and the index for this subtitle in the resulting files with | |
315 <CODE>-vobsuboutindex</CODE>.</P> | |
6711 | 316 |
6724
ab3d2c60b454
Some spellchecking, moved the section to the correct position, some
diego
parents:
6711
diff
changeset
|
317 <P>If the input is not from a DVD you should use <CODE>-ifo</CODE> to |
6960 | 318 indicate the <CODE>.ifo</CODE> file needed to construct the resulting |
319 <CODE>.idx</CODE> file.</P> | |
6711 | 320 |
6960 | 321 <P>If the input is not from a DVD and you do not have the <CODE>.ifo</CODE> |
322 file you will need to use the <CODE>-vobsubid</CODE> option to let it know | |
323 what language id to put in the <CODE>.idx</CODE> file.</P> | |
6711 | 324 |
6724
ab3d2c60b454
Some spellchecking, moved the section to the correct position, some
diego
parents:
6711
diff
changeset
|
325 <P>Each run will append the running subtitle if the <CODE>.idx</CODE> and |
6960 | 326 <CODE>.sub</CODE> files already exist. So you should remove any before |
327 starting.</P> | |
6711 | 328 |
7047 | 329 <H4>Examples</H4> |
6711 | 330 |
331 <P><I>Copying two subtitles from a DVD while doing 3-pass encoding</I><BR> | |
6960 | 332 <CODE>rm subtitles.idx subtitles.sub</CODE><BR> |
333 <CODE>mencoder -dvd 1 -vobsubout subtitles -vobsuboutindex 0 | |
7640 | 334 -sid 2 -o frameno.avi -ovc frameno -oac mp3lame -lameopts vbr=3</CODE><BR> |
6960 | 335 <CODE>mencoder -dvd 1 -oac copy -ovc divx4 -pass 1</CODE><BR> |
336 <CODE>mencoder -dvd 1 -oac copy -ovc divx4 -pass 2 -vobsubout | |
337 subtitles -vobsuboutindex 1 -sid 5</CODE></P> | |
6711 | 338 |
339 <P><I>Copying a french subtitle from an MPEG file</I><BR> | |
6960 | 340 <CODE>rm subtitles.idx subtitles.sub</CODE><BR> |
341 <CODE>mencoder movie.mpg -ifo movie.ifo -vobsubout subtitles | |
342 -vobsuboutindex 0 -vobsuboutid fr -sid 1</CODE></P> | |
6711 | 343 |
7047 | 344 |
7054 | 345 <H3><A NAME="options">2.4.3 Available options</A></H3> |
4680 | 346 |
7814 | 347 <P>For the complete list of available MEncoder options and examples, |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
348 please see the man page.</P> |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
349 |
2674 | 350 </BODY> |
351 </HTML> |