Mercurial > mplayer.hg
annotate DOCS/encoding.html @ 8888:546db4583ad7
remove codec-cfg binary during make distclean (btw, why do we compile it anyway?)
author | alex |
---|---|
date | Sat, 11 Jan 2003 10:35:31 +0000 |
parents | 636c1e894a27 |
children | f51cf48503f3 |
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 | |
8851
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
13 <H1><A NAME="encoding">7. Encoding with MEncoder</A></H1> |
6974 | 14 |
8133
630360b15089
Redundant compilation section removed, MEncoder features section moved to
diego
parents:
8035
diff
changeset
|
15 <P>For the complete list of available MEncoder options and examples, please see |
630360b15089
Redundant compilation section removed, MEncoder features section moved to
diego
parents:
8035
diff
changeset
|
16 the man page.</P> |
3721 | 17 |
8851
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
18 |
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
19 <H2><A NAME="2pass">7.1 Encoding 2 or 3-pass MPEG-4 ("DIVX")</A></H2> |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2745
diff
changeset
|
20 |
6960 | 21 <P><U><B>2-pass encoding:</B></U> the name comes from the fact that this method |
22 encodes the file <I>twice</I>. The first encoding (dubbed <I>pass</I>) | |
23 creates some temporary files (*.log) with a size of few megabytes, do not | |
24 delete them yet (you can delete the AVI). In the second pass, the 2-pass | |
25 output file is created, using the bitrate data from the temporary files. The | |
26 resulting file will have much better image quality. If this is the first time | |
27 you heard about this, you should consult some guides available on the | |
28 Net.</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2745
diff
changeset
|
29 |
8816
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
30 <P>This example shows how to encode a DVD to a 2-pass MPEG-4 ("DIVX") AVI. Just |
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
31 two commands are needed:<BR> |
6960 | 32 <CODE> rm frameno.avi</CODE> - remove this file, which |
33 can come from a previous 3-pass encoding (it interferes with current | |
34 one)<BR> | |
7640 | 35 <CODE> mencoder -dvd 2 -ovc lavc -lavcopts |
8497 | 36 vcodec=mpeg4:vpass=1 -oac copy -o movie.avi<BR> |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7640
diff
changeset
|
37 mencoder -dvd 2 -ovc lavc -lavcopts |
8497 | 38 vcodec=mpeg4:vpass=2 -oac copy -o movie.avi</CODE></P> |
4397 | 39 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
40 <P><U><B>3-pass encoding:</B></U> this is an extension of 2-pass encoding, |
4397 | 41 where the audio encoding takes place in a separate pass. This method enables |
42 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
|
43 audio is encoded only once, unlike in 2-pass mode. The schematics:</P> |
4397 | 44 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
45 <OL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
46 <LI>Remove conflicting temporary file: |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
47 <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
|
48 <LI>First pass: |
8497 | 49 <P><CODE>mencoder <file/DVD> -ovc frameno -oac mp3lame -lameopts vbr=3 -o frameno.avi</CODE></P> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
50 <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
|
51 <B>only</B> the requested audio stream. Don't forget <CODE>-lameopts</CODE>, |
7814 | 52 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
|
53 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
|
54 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
|
55 <LI>Second pass: |
8035
533e212cd282
document new 2pass syntax, remove/fix lots of obsolete junk in docs
rfelker
parents:
7814
diff
changeset
|
56 <P><CODE>mencoder <file/DVD> -oac copy |
533e212cd282
document new 2pass syntax, remove/fix lots of obsolete junk in docs
rfelker
parents:
7814
diff
changeset
|
57 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=<bitrate></CODE></P> |
8816
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
58 <P>This is the first pass of video encoding. |
7814 | 59 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
|
60 the previous pass.</P></LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
61 <LI>Third pass: |
8035
533e212cd282
document new 2pass syntax, remove/fix lots of obsolete junk in docs
rfelker
parents:
7814
diff
changeset
|
62 <P><CODE>mencoder <file/DVD> -oac copy |
533e212cd282
document new 2pass syntax, remove/fix lots of obsolete junk in docs
rfelker
parents:
7814
diff
changeset
|
63 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=<bitrate></CODE></P> |
8816
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
64 <P>This is the second pass of video encoding. |
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
65 Specify the same bitrate as in the previous pass unless you really know |
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
66 what you are doing. In this pass, audio from <CODE>frameno.avi</CODE> |
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
67 will be inserted into the destination file.. and it's all ready!</P></LI> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
68 </OL> |
4397 | 69 |
7047 | 70 <H4>Example for 3-pass encoding:</H4> |
4397 | 71 |
72 <P><CODE> rm frameno.avi</CODE> - remove this file, | |
73 which can come from a previous 3-pass encoding (it interferes with current | |
74 one)<BR> | |
6960 | 75 <CODE> mencoder -dvd 2 -ovc frameno |
8497 | 76 -o frameno.avi -oac mp3lame -lameopts vbr=3<BR> |
7640 | 77 mencoder -dvd 2 -ovc lavc |
8497 | 78 -lavcopts vcodec=mpeg4:vpass=1 -oac copy -o movie.avi<BR> |
7640 | 79 mencoder -dvd 2 -ovc lavc |
8497 | 80 -lavcopts vcodec=mpeg4:vpass=2 -oac copy -o movie.avi</CODE></P> |
4397 | 81 |
8851
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
82 |
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
83 <H2><A NAME="rescaling">7.2 Rescaling movies</A></H2> |
3438 | 84 |
8260 | 85 <P>Often the need to resize movie images' size emerges. Its reasons can be |
86 many: decreasing file size, network bandwidth, etc. Most people | |
87 even do rescaling when converting DVDs or SVCDs to DivX AVI. <B>This is bad.</B> | |
88 Instead of even you doing so, read the <A HREF="#aspect">Preserving | |
89 aspect ratio</A> section.</P> | |
3438 | 90 |
5968 | 91 <P>The scaling process is handled by the <I>'scale'</I> video filter: |
8260 | 92 <CODE>-vop scale=widht:height</CODE>. Its quality can be set with the |
7814 | 93 <CODE>-sws</CODE> option. If it's not specified, MEncoder will use 0: |
5968 | 94 fast bilinear.</P> |
3438 | 95 |
8260 | 96 <H5>Usage:</H5> |
97 | |
98 <P><CODE> mencoder input.mpg -ovc lavc -lavcopts | |
8497 | 99 vcodec=mpeg4 -vop scale=640:480 -oac copy -o |
8260 | 100 output.avi</CODE></P> |
3438 | 101 |
4680 | 102 |
8851
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
103 <H2><A NAME="copying">7.3 Stream copying</A></H2> |
2868 | 104 |
7814 | 105 <P>MEncoder can handle input streams in two ways: <B>encode</B> or |
3438 | 106 <B>copy</B> them. This section is about <B>copying</B>.</P> |
2868 | 107 |
3438 | 108 <UL> |
6960 | 109 <LI><B>Video stream</B> (option <CODE>-ovc copy</CODE>): nice stuff can be |
110 done :)<BR> | |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6974
diff
changeset
|
111 Like, putting (not converting) FLI or VIVO or MPEG1 video into |
7814 | 112 an AVI file. Of course only MPlayer can play such files :) And it |
6960 | 113 probably has no real life value at all. Rationally: video stream copying |
114 can be useful for example when only the audio stream has to be encoded | |
115 (like, uncompressed PCM to MP3).</LI> | |
3438 | 116 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
117 <LI><B>Audio stream</B> (option <CODE>-oac copy</CODE>): straightforward. |
6960 | 118 It is possible to take an external audio file (MP3, Vorbis) and mux it |
119 into the output stream. Use the <CODE>-audiofile <filename></CODE> | |
120 option for this.</LI> | |
3438 | 121 </UL> |
122 | |
4680 | 123 |
8851
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
124 <H2><A NAME="fixing">7.4 Fixing AVIs with broken index or interleaving</A></H2> |
3583 | 125 |
126 <P>Easiest thing. We simply copy the video and audio streams, and | |
7814 | 127 MEncoder generates the index. Of course this cannot fix possible bugs |
6960 | 128 in the video and/or audio streams. It also fixes files with broken |
129 interleaving, thus the <CODE>-ni</CODE> option won't be needed for them | |
130 anymore.</P> | |
3583 | 131 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
132 <P>Command: <CODE>mencoder -idx input.avi -ovc copy -oac copy -o output.avi</CODE></P> |
3583 | 133 |
3721 | 134 |
8851
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
135 <H2><A NAME="libavcodec">7.5 Encoding with the libavcodec codec family</A></H2> |
3721 | 136 |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
137 <P><A HREF="codecs.html#libavcodec">libavcodec</A> provides simple encoding to a |
6960 | 138 lot of interesting video and audio formats (currently its audio codecs are |
139 unsupported). You can encode to the following codecs:</P> | |
3721 | 140 |
141 <UL> | |
142 <LI>mjpeg - Motion JPEG</LI> | |
3774 | 143 <LI>h263 - H263</LI> |
3721 | 144 <LI>h263p - H263 Plus</LI> |
8816
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
145 <LI>mpeg4 - ISO standard MPEG-4 (DivX 4/5, OpenDivX, XVID compatible)</LI> |
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
146 <LI>msmpeg4 - pre-standard MPEG-4 variant by MS, v3 (aka DivX3)</LI> |
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
147 <LI>msmpeg4v2 - pre-standard MPEG-4 by MS, v2 (used in old asf files)</LI> |
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
148 <LI>wmv1 - Windows Media Video, version 1 (aka WMV7)</LI> |
3721 | 149 <LI>rv10 - an old RealVideo codec</LI> |
150 <LI>mpeg1video - MPEG1 video :)</LI> | |
8816
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
151 <LI>huffyuv - lossless compression</LI> |
3721 | 152 </UL> |
153 | |
154 <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
|
155 <CODE>vcodec</CODE> config, like: <CODE>-lavcopts vcodec=msmpeg4</CODE></P> |
3721 | 156 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
157 <P>An example, with MJPEG compression:<BR> |
6960 | 158 <CODE> mencoder -dvd 2 -o title2.avi -ovc lavc |
7640 | 159 -lavcopts vcodec=mjpeg -oac copy</CODE></P> |
3912 | 160 |
4680 | 161 |
8851
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
162 <H2><A NAME="image_files">7.6 Encoding from multiple input image files (JPEGs, PNGs or TGAs)</A></H2> |
4919 | 163 |
7814 | 164 <P>MEncoder is capable of creating movies from one or more JPEG, PNG or TGA |
7366 | 165 files. With simple framecopy it can create MJPEG (Motion JPEG), MPNG |
166 (Motion PNG) or MTGA (Motion TGA) files.</P> | |
4919 | 167 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
168 Explanation of the process: |
4919 | 169 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
170 <OL> |
7814 | 171 <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
|
172 <CODE>libjpeg</CODE> (when decoding PNGs, it will use <B>libpng</B>).</LI> |
4919 | 173 |
7814 | 174 <LI>MEncoder then feeds the decoded image to the chosen video compressor |
8816
341d8083491a
fix lots of stuff that was outdated, unclear, inaccurate, or
rfelker
parents:
8497
diff
changeset
|
175 (DivX4, Xvid, ffmpeg msmpeg4, etc...).</LI> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7061
diff
changeset
|
176 </OL> |
4919 | 177 |
7047 | 178 <H4>Examples</H4> |
4919 | 179 |
180 <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
|
181 global <A HREF="#options">Options</A> section and in the man page.</P> |
4919 | 182 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
183 <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
|
184 <CODE>mencoder \*.jpg -mf on:w=800:h=600:fps=25 -ovc divx4 |
8454
1a558102e0d4
bunkus: Removed "-oac copy" from the mf examples. Removed the paragraph about the "internal lavc controller": the examples right above that paragraph already use this syntax.
mosu
parents:
8402
diff
changeset
|
185 -o output.avi</CODE></P> |
4919 | 186 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
187 <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
|
188 <CODE>mencoder frame001.jpg,frame002.jpg -mf on:w=800:h=600:fps=25 |
8454
1a558102e0d4
bunkus: Removed "-oac copy" from the mf examples. Removed the paragraph about the "internal lavc controller": the examples right above that paragraph already use this syntax.
mosu
parents:
8402
diff
changeset
|
189 -ovc divx4 -o output.avi</CODE></P> |
5378 | 190 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
191 <P><I>Creating a Motion JPEG (MJPEG) file from all the JPEG files in the current dir:</I><BR> |
4919 | 192 <CODE>mencoder \*.jpg -mf on:w=800:h=600:fps=25 -ovc copy |
8454
1a558102e0d4
bunkus: Removed "-oac copy" from the mf examples. Removed the paragraph about the "internal lavc controller": the examples right above that paragraph already use this syntax.
mosu
parents:
8402
diff
changeset
|
193 -o output.avi</CODE></P> |
4919 | 194 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
195 <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
|
196 <CODE>mencoder \*.png -mf on:w=800:h=600:fps=25:type=png -ovc raw |
8454
1a558102e0d4
bunkus: Removed "-oac copy" from the mf examples. Removed the paragraph about the "internal lavc controller": the examples right above that paragraph already use this syntax.
mosu
parents:
8402
diff
changeset
|
197 -o output.avi</CODE></P> |
4919 | 198 |
6427
41b149822666
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
199 <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
|
200 <CODE>mencoder \*.png -mf on:w=800:h=600:fps=25:type=png -ovc copy |
8454
1a558102e0d4
bunkus: Removed "-oac copy" from the mf examples. Removed the paragraph about the "internal lavc controller": the examples right above that paragraph already use this syntax.
mosu
parents:
8402
diff
changeset
|
201 -o output.avi</CODE></P> |
4919 | 202 |
7366 | 203 <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
|
204 <CODE>mencoder \*.tga -mf on:w=800:h=600:fps=25:type=tga -ovc copy |
8454
1a558102e0d4
bunkus: Removed "-oac copy" from the mf examples. Removed the paragraph about the "internal lavc controller": the examples right above that paragraph already use this syntax.
mosu
parents:
8402
diff
changeset
|
205 -o output.avi</CODE></P> |
7366 | 206 |
4919 | 207 |
8851
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
208 <H2><A NAME="vobsub">7.7 Extracting DVD subtitles to a Vobsub file</A></H2> |
6711 | 209 |
7814 | 210 <P>MEncoder is capable of extracting subtitles from a DVD into |
6960 | 211 Vobsub fomat files. They consist of a pair of files ending in |
212 <CODE>.idx</CODE> and <CODE>.sub</CODE> and are usually packaged in a single | |
7814 | 213 <CODE>.rar</CODE> archive. MPlayer can play these with the |
6960 | 214 <CODE>-vobsub</CODE> and <CODE>-vobsubid</CODE> options.</P> |
6711 | 215 |
6724
ab3d2c60b454
Some spellchecking, moved the section to the correct position, some
diego
parents:
6711
diff
changeset
|
216 <P>You specify the basename (i.e without the <CODE>.idx</CODE> or |
6960 | 217 <CODE>.sub</CODE> extension) of the output files with <CODE>-vobsubout</CODE> |
218 and the index for this subtitle in the resulting files with | |
219 <CODE>-vobsuboutindex</CODE>.</P> | |
6711 | 220 |
6724
ab3d2c60b454
Some spellchecking, moved the section to the correct position, some
diego
parents:
6711
diff
changeset
|
221 <P>If the input is not from a DVD you should use <CODE>-ifo</CODE> to |
6960 | 222 indicate the <CODE>.ifo</CODE> file needed to construct the resulting |
223 <CODE>.idx</CODE> file.</P> | |
6711 | 224 |
6960 | 225 <P>If the input is not from a DVD and you do not have the <CODE>.ifo</CODE> |
226 file you will need to use the <CODE>-vobsubid</CODE> option to let it know | |
227 what language id to put in the <CODE>.idx</CODE> file.</P> | |
6711 | 228 |
6724
ab3d2c60b454
Some spellchecking, moved the section to the correct position, some
diego
parents:
6711
diff
changeset
|
229 <P>Each run will append the running subtitle if the <CODE>.idx</CODE> and |
6960 | 230 <CODE>.sub</CODE> files already exist. So you should remove any before |
231 starting.</P> | |
6711 | 232 |
7047 | 233 <H4>Examples</H4> |
6711 | 234 |
235 <P><I>Copying two subtitles from a DVD while doing 3-pass encoding</I><BR> | |
6960 | 236 <CODE>rm subtitles.idx subtitles.sub</CODE><BR> |
237 <CODE>mencoder -dvd 1 -vobsubout subtitles -vobsuboutindex 0 | |
7640 | 238 -sid 2 -o frameno.avi -ovc frameno -oac mp3lame -lameopts vbr=3</CODE><BR> |
8035
533e212cd282
document new 2pass syntax, remove/fix lots of obsolete junk in docs
rfelker
parents:
7814
diff
changeset
|
239 <CODE>mencoder -dvd 1 -oac copy -ovc divx4 -divx4opts pass=1</CODE><BR> |
533e212cd282
document new 2pass syntax, remove/fix lots of obsolete junk in docs
rfelker
parents:
7814
diff
changeset
|
240 <CODE>mencoder -dvd 1 -oac copy -ovc divx4 -divx4opts pass=2 -vobsubout |
6960 | 241 subtitles -vobsuboutindex 1 -sid 5</CODE></P> |
6711 | 242 |
243 <P><I>Copying a french subtitle from an MPEG file</I><BR> | |
6960 | 244 <CODE>rm subtitles.idx subtitles.sub</CODE><BR> |
245 <CODE>mencoder movie.mpg -ifo movie.ifo -vobsubout subtitles | |
246 -vobsuboutindex 0 -vobsuboutid fr -sid 1</CODE></P> | |
6711 | 247 |
7047 | 248 |
8851
636c1e894a27
Appendix B and E numbered, encoding moved to a separate section.
diego
parents:
8816
diff
changeset
|
249 <H2><A NAME="aspect">7.8 Preserving aspect ratio</A></H2> |
8260 | 250 |
251 <P>DVDs and SVCDs (i.e. MPEG1/2) files contain an aspect ratio value, | |
252 which describes how should the player scale the video stream, so humans | |
253 won't have egg heads (ex.: 480x480 + 4:3 = 640x480). However when encoding | |
254 to AVI (DivX) files, you have be aware that AVI headers don't store this | |
255 value. Rescaling the movie is disgusting and time consuming, there | |
256 must be a better feature!</P> | |
257 | |
258 <P>There is.</P> | |
259 | |
260 <P>MPEG4 has an unique feature: the video stream can contain | |
261 its needed aspect ratio. Yes, just like MPEG1/2 files (DVD, SVCD). | |
262 Regretfully, there are <U>no</U> video players outside which support this | |
263 attribute. Except MPlayer.</P> | |
264 | |
265 <P>This feature can be used only with <B>libavcodec</B>'s <CODE>mpeg4</CODE> | |
266 codec. Keep in mind: although MPlayer will correctly play the created file, | |
267 other players will use the wrong aspect ratio.</P> | |
268 | |
269 <P>You seriously should crop the black bands over and below the movie image. | |
8402 | 270 See the manpage about the usage of the <CODE>cropdetect</CODE> and |
271 <CODE>crop</CODE> filters.</P> | |
8260 | 272 |
273 <H5>Usage:</H5> | |
274 | |
275 <P><CODE>$ mencoder sample-svcd.mpg -ovc lavc -lavcopts | |
276 vcodec=mpeg4:aspect=16.0/9.0 -vop crop=714:548:0:14 -oac copy -o output.avi</CODE></P> | |
277 | |
2674 | 278 </BODY> |
279 </HTML> |