Mercurial > mplayer.hg
annotate DOCS/xml/en/tvinput.xml @ 27018:d8e2eb33be6b
add missing <application> tag around MPlayer,
patch by Cedric Viou
author | gpoirier |
---|---|
date | Wed, 11 Jun 2008 20:25:09 +0000 |
parents | 90896a8ab7b7 |
children | b98fceff7bc7 |
rev | line source |
---|---|
20535 | 1 <?xml version="1.0" encoding="utf-8"?> |
10913
49b1a67e7381
Add revision keyword to english xml files, to ease translation synchronization
lumag
parents:
9948
diff
changeset
|
2 <!-- $Revision$ --> |
17321
7f9fcf5245a0
Improve overall structure by adding a few top-level chapters so that
diego
parents:
17280
diff
changeset
|
3 <chapter id="tv"> |
7f9fcf5245a0
Improve overall structure by adding a few top-level chapters so that
diego
parents:
17280
diff
changeset
|
4 <title>TV</title> |
7f9fcf5245a0
Improve overall structure by adding a few top-level chapters so that
diego
parents:
17280
diff
changeset
|
5 |
9675 | 6 <sect1 id="tv-input" xreflabel="TV input"> |
7 <title>TV input</title> | |
8 | |
9 <para> | |
10 This section is about how to enable <emphasis role="bold">watching/grabbing | |
9776
861a40949bf3
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
11 from V4L compatible TV tuner</emphasis>. See the man page for a description |
861a40949bf3
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
12 of TV options and keyboard controls. |
9675 | 13 </para> |
14 | |
21521 | 15 <!-- ********** --> |
9675 | 16 |
17 <sect2 id="tv-compilation"> | |
18 <title>Compilation</title> | |
19 | |
20 <procedure> | |
21 <step><para> | |
22 First, you have to recompile. <filename>./configure</filename> will | |
23 autodetect kernel headers of v4l stuff and the existence of | |
24 <filename>/dev/video*</filename> entries. If they exist, TV support will | |
25 be built (see the output of <filename>./configure</filename>). | |
21521 | 26 </para></step> |
9675 | 27 <step><para> |
28 Make sure your tuner works with another TV software in Linux, for | |
9776
861a40949bf3
fixes, some by Dmitry Baryshkov <lumag@qnc.ru>, some by me
nicolas
parents:
9683
diff
changeset
|
29 example <application>XawTV</application>. |
21521 | 30 </para></step> |
9675 | 31 </procedure> |
32 </sect2> | |
33 | |
21521 | 34 <!-- ********** --> |
35 | |
9675 | 36 <sect2 id="tv-tips"> |
37 <title>Usage tips</title> | |
21521 | 38 |
9675 | 39 <para> |
40 The full listing of the options is available on the manual page. | |
41 Here are just a few tips: | |
21521 | 42 |
9675 | 43 <itemizedlist> |
21521 | 44 <listitem><para> |
45 Use the <option>channels</option> option. An example: | |
46 <screen>-tv channels=26-MTV1,23-TV2</screen> | |
23516 | 47 Explanation: Using this option, only the 26 and 23 channels will be usable, |
21521 | 48 and there will be a nice OSD text upon channel switching, displaying the |
49 channel's name. Spaces in the channel name must be replaced by the | |
21596 | 50 "_" character. |
21521 | 51 </para></listitem> |
52 <listitem><para> | |
53 Choose some sane image dimensions. The dimensions of the resulting image | |
54 should be divisible by 16. | |
55 </para></listitem> | |
9675 | 56 <listitem> |
21521 | 57 <para> |
58 If you capture the video with the vertical resolution higher than half | |
59 of the full resolution (i.e. 288 for PAL or 240 for NTSC), then the | |
60 'frames' you get will really be interleaved pairs of fields. | |
61 Depending on what you want to do with the video you may leave it in | |
62 this form, destructively deinterlace, or break the pairs apart into | |
63 individual fields. | |
64 </para> | |
65 <para> | |
66 Otherwise you'll get a movie which is distorted during | |
67 fast-motion scenes and the bitrate controller will be probably even unable | |
68 to retain the specified bitrate as the interlacing artifacts produce high | |
69 amount of detail and thus consume lot of bandwidth. You can enable | |
70 deinterlacing with <option>-vf pp=DEINT_TYPE</option>. | |
71 Usually <option>pp=lb</option> does a good job, but it can be matter of | |
72 personal preference. | |
73 See other deinterlacing algorithms in the manual and give it a try. | |
74 </para> | |
9675 | 75 </listitem> |
21521 | 76 <listitem><para> |
77 Crop out the dead space. When you capture the video, the areas at the edges | |
78 are usually black or contain some noise. These again consume lots of | |
79 unnecessary bandwidth. More precisely it's not the black areas themselves | |
80 but the sharp transitions between the black and the brighter video image | |
81 which do but that's not important for now. Before you start capturing, | |
82 adjust the arguments of the <option>crop</option> option so that all the | |
83 crap at the margins is cropped out. Again, don't forget to keep the resulting | |
84 dimensions sane. | |
85 </para></listitem> | |
86 <listitem><para> | |
87 Watch out for CPU load. It shouldn't cross the 90% boundary for most of the | |
88 time. If you have a large capture buffer, <application>MEncoder</application> | |
89 can survive an overload for few seconds but nothing more. It's better to | |
90 turn off the 3D OpenGL screensavers and similar stuff. | |
91 </para></listitem> | |
92 <listitem><para> | |
93 Don't mess with the system clock. <application>MEncoder</application> uses the | |
94 system clock for doing A/V sync. If you adjust the system clock (especially | |
95 backwards in time), <application>MEncoder</application> gets confused and you | |
96 will lose frames. This is an important issue if you are hooked to a network | |
97 and run some time synchronization software like NTP. You have to turn NTP | |
98 off during the capture process if you want to capture reliably. | |
99 </para></listitem> | |
100 <listitem><para> | |
101 Don't change the <option>outfmt</option> unless you know what you are doing | |
102 or your card/driver really doesn't support the default (YV12 colorspace). | |
103 In the older versions of <application>MPlayer</application>/ | |
104 <application>MEncoder</application> it was necessary to specify the output | |
105 format. This issue should be fixed in the current releases and | |
106 <option>outfmt</option> isn't required anymore, and the default suits the | |
107 most purposes. For example, if you are capturing into DivX using | |
108 <systemitem class="library">libavcodec</systemitem> and specify | |
109 <option>outfmt=RGB24</option> in order to increase the quality of the captured | |
110 images, the captured image will be actually later converted back into YV12 so | |
111 the only thing you achieve is a massive waste of CPU power. | |
112 </para></listitem> | |
113 <listitem><para> | |
114 To specify the I420 colorspace (<option>outfmt=i420</option>), you have to | |
115 add an option <option>-vc rawi420</option> due to a fourcc conflict with an | |
116 Intel Indeo video codec. | |
117 </para></listitem> | |
118 <listitem><para> | |
119 There are several ways of capturing audio. You can grab the sound either using | |
120 your sound card via an external cable connection between video card and | |
121 line-in, or using the built-in ADC in the bt878 chip. In the latter case, you | |
122 have to load the <emphasis role="bold">btaudio</emphasis> driver. Read the | |
123 <filename>linux/Documentation/sound/btaudio</filename> file (in the kernel | |
124 tree, not <application>MPlayer</application>'s) for some instructions on using | |
125 this driver. | |
126 </para></listitem> | |
127 <listitem><para> | |
128 If <application>MEncoder</application> cannot open the audio device, make | |
129 sure that it is really available. There can be some trouble with the sound | |
130 servers like aRts (KDE) or ESD (GNOME). If you have a full duplex sound card | |
131 (almost any decent card supports it today), and you are using KDE, try to | |
132 check the "full duplex" option in the sound server preference menu. | |
133 </para></listitem> | |
9675 | 134 </itemizedlist> |
21732 | 135 </para> |
9675 | 136 </sect2> |
137 | |
21521 | 138 <!-- ********** --> |
9675 | 139 |
140 <sect2 id="tv-examples"> | |
141 <title>Examples</title> | |
142 | |
21521 | 143 <informalexample><para> |
9675 | 144 Dummy output, to AAlib :) |
21521 | 145 <screen>mplayer -tv driver=dummy:width=640:height=480 -vo aa tv://</screen> |
146 </para></informalexample> | |
9675 | 147 |
21521 | 148 <informalexample><para> |
9675 | 149 Input from standard V4L: |
150 <screen> | |
21521 | 151 mplayer -tv driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv tv:// |
152 </screen> | |
153 </para></informalexample> | |
9675 | 154 |
21521 | 155 <informalexample><para> |
11540 | 156 A more sophisticated example. This makes <application>MEncoder</application> |
157 capture the full PAL image, crop the margins, and deinterlace the picture | |
158 using a linear blend algorithm. Audio is compressed with a constant bitrate | |
159 of 64kbps, using LAME codec. This setup is suitable for capturing movies. | |
9675 | 160 <screen> |
21521 | 161 mencoder -tv driver=v4l:width=768:height=576 -oac mp3lame -lameopts cbr:br=64\ |
162 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=900 \ | |
163 -vf crop=720:544:24:16,pp=lb -o <replaceable>output.avi</replaceable> tv:// | |
9675 | 164 </screen> |
21521 | 165 </para></informalexample> |
9675 | 166 |
21521 | 167 <informalexample><para> |
9675 | 168 This will additionally rescale the image to 384x288 and compresses the |
169 video with the bitrate of 350kbps in high quality mode. The vqmax option | |
11271
252fb0cf331a
spelling fixes, mostly by <ismail.donmez@boun.edu.tr>
diego
parents:
10913
diff
changeset
|
170 looses the quantizer and allows the video compressor to actually reach so |
9675 | 171 low bitrate even at the expense of the quality. This can be used for |
172 capturing long TV series, where the video quality isn't so important. | |
173 <screen> | |
21521 | 174 mencoder -tv driver=v4l:width=768:height=576 \ |
175 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \ | |
176 -oac mp3lame -lameopts cbr:br=48 -sws 1 -o <replaceable>output.avi</replaceable>\ | |
177 -vf crop=720:540:24:18,pp=lb,scale=384:288 tv:// | |
9675 | 178 </screen> |
21521 | 179 It's also possible to specify smaller image dimensions in the |
180 <option>-tv</option> option and omit the software scaling but this approach | |
181 uses the maximum available information and is a little more resistant to noise. | |
182 The bt8x8 chips can do the pixel averaging only in the horizontal direction due | |
183 to a hardware limitation. | |
184 </para></informalexample> | |
9675 | 185 </sect2> |
186 </sect1> | |
17321
7f9fcf5245a0
Improve overall structure by adding a few top-level chapters so that
diego
parents:
17280
diff
changeset
|
187 |
24584 | 188 |
189 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | |
190 | |
191 | |
192 <sect1 id="tv-teletext"> | |
193 <title>Teletext</title> | |
194 | |
195 <para> | |
27018 | 196 Teletext is currently available only in <application>MPlayer</application> |
197 for v4l and v4l2 drivers. | |
24584 | 198 </para> |
199 | |
200 <sect2 id="tv-teletext-implementation-notes"> | |
201 <title>Implementation notes</title> | |
202 | |
203 <para> | |
204 <application>MPlayer</application> supports regular text, graphics and navigation links. | |
205 Unfortunately, colored pages are not fully supported yet - all pages are shown as grayscaled. | |
206 Subtitle pages (also known as Closed Captions) are supported, too. | |
207 </para> | |
208 | |
209 <para> | |
210 <application>MPlayer</application> starts caching all teletext pages upon | |
211 starting to receive TV input, so you do not need to wait until the requested page is loaded. | |
212 </para> | |
213 | |
214 <para> | |
215 Note: Using teletext with <option>-vo xv</option> causes strange colors. | |
216 </para> | |
217 </sect2> | |
218 | |
219 <sect2 id="tv-teletext-usage"> | |
220 <title>Using teletext</title> | |
221 | |
222 <para> | |
223 To enable teletext decoding you must specify the VBI device to get teletext data | |
224 from (usually <filename>/dev/vbi0</filename> for Linux). This can be done by specifying | |
225 <option>tdevice</option> in your configuration file, like shown below: | |
226 <screen>tv=tdevice=/dev/vbi0</screen> | |
227 </para> | |
228 | |
229 <para> | |
230 You might need to specify the teletext language code for your country. | |
231 To list all available country codes use | |
232 <screen>tv=tdevice=/dev/vbi0:tlang=<replaceable>-1</replaceable></screen> | |
233 Here is an example for Russian: | |
234 <screen>tv=tdevice=/dev/vbi0:tlang=<replaceable>33</replaceable></screen> | |
235 </para> | |
236 | |
237 <para> | |
238 </para> | |
239 </sect2> | |
240 | |
241 <sect2 id="tv-teletext-hotkeys"> | |
242 <title>Teletext hot keys</title> | |
243 | |
244 <informaltable frame="all"> | |
245 <tgroup cols="2"> | |
246 <thead> | |
247 <row> | |
248 <entry>Key</entry> | |
249 <entry>Description</entry> | |
250 </row> | |
251 </thead> | |
252 <tbody> | |
253 <row> | |
254 <entry>X</entry> | |
255 <entry>Switch teletext display on/off</entry> | |
256 </row> | |
257 <row> | |
258 <entry>C</entry> | |
259 <entry>Cycle through teletext rendering modes (opaque, transparent, inverted opaque, | |
260 inverted transparent</entry> | |
261 </row> | |
262 <row> | |
263 <entry>Left/Right</entry> | |
264 <entry>Go to previous/next teletext page</entry> | |
265 </row> | |
266 <row> | |
267 <entry>PageUp/PageDown</entry> | |
268 <entry>Go to next/previous teletext subpage</entry> | |
269 </row> | |
270 <row> | |
271 <entry>digits</entry> | |
272 <entry>Enter teletext page number to jump to</entry> | |
273 </row> | |
274 </tbody> | |
275 </tgroup> | |
276 </informaltable> | |
277 </sect2> | |
278 </sect1> | |
279 | |
17321
7f9fcf5245a0
Improve overall structure by adding a few top-level chapters so that
diego
parents:
17280
diff
changeset
|
280 </chapter> |