Mercurial > mplayer.hg
annotate DOCS/video.html @ 8228:59e01995144c
Finally add the correct compile flags for SDL under cygwin automatically.
Patch by Sycotic Smith <sycotic@linuxmail.org> and me.
author | diego |
---|---|
date | Mon, 18 Nov 2002 01:02:27 +0000 |
parents | 1f00a3d29b20 |
children | 352b654c7787 |
rev | line source |
---|---|
6435
d0d74f9d8d4a
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"> |
1612 | 2 <HTML> |
4982
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4920
diff
changeset
|
3 |
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4920
diff
changeset
|
4 <HEAD> |
6882
f3f87f6bf5cf
Added a uniform title: something - MPlayer - The Movie Player for Linux.
diego
parents:
6732
diff
changeset
|
5 <TITLE>Video - MPlayer - The Movie Player for Linux</TITLE> |
6391 | 6 <LINK REL="stylesheet" TYPE="text/css" HREF="default.css"> |
6435
d0d74f9d8d4a
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:
4920
diff
changeset
|
8 </HEAD> |
6cb9d9a1716d
HTML: different font handling - idea from new hp dezign
gabucino
parents:
4920
diff
changeset
|
9 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
10 <BODY> |
1704 | 11 |
1612 | 12 |
7047 | 13 <H3><A NAME="video">2.3.1 Video output devices</A></H3> |
1612 | 14 |
15 | |
7699
5d4b0446a557
Cosmetics: Converted 2 spaces to one in section titles, changed some ugly
diego
parents:
7651
diff
changeset
|
16 <H4><A NAME="mtrr">2.3.1.1 Setting up MTRR</A></H4> |
1612 | 17 |
1946 | 18 <P>It is VERY recommended to check if the MTRR registers are set up properly, |
6960 | 19 because they can give a big performance boost.</P> |
1946 | 20 |
6960 | 21 <P>Do a '<CODE>cat /proc/mtrr</CODE>':</P> |
1946 | 22 |
23 <P><CODE> | |
6960 | 24 --($:~)-- cat /proc/mtrr<BR> |
25 reg00: base=0xe4000000 (3648MB), size= 16MB: write-combining, count=9<BR> | |
6974 | 26 reg01: base=0xd8000000 (3456MB), size= 128MB: write-combining, count=1</CODE></P> |
1946 | 27 |
6599 | 28 <P>It's right, shows my Matrox G400 with 16MB memory. I did this from |
6960 | 29 XFree 4.x.x , which sets up MTRR registers automatically.</P> |
1946 | 30 |
6960 | 31 <P>If nothing worked, you have to do it manually. First, you have to find the |
32 base address. You have 3 ways to find it:</P> | |
1612 | 33 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
34 <UL> |
6960 | 35 <LI>from X11 startup messages, for example: |
36 <P><CODE>(--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000<BR> | |
37 (--) SVGA: Linear framebuffer at 0xD8000000</CODE></P></LI> | |
38 <LI>from /proc/pci (use lspci -v command): | |
39 <P> | |
40 <CODE>01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525</CODE> | |
41 <CODE>Memory at d8000000 (32-bit, prefetchable)</CODE> | |
42 </P></LI> | |
7138 | 43 <LI>from mga_vid kernel driver messages (use <CODE>dmesg</CODE>): |
6960 | 44 <P><CODE>mga_mem_base = d8000000</CODE></P></LI> |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
45 </UL> |
1612 | 46 |
1682 | 47 <P>Then let's find the memory size. This is very easy, just convert video ram |
6960 | 48 size to hexadecimal, or use this table:</P> |
1612 | 49 |
1682 | 50 <TABLE BORDER=0> |
6974 | 51 <TR><TD> </TD><TD>1 MB</TD><TD WIDTH="10%"></TD><TD>0x100000</TD></TR> |
52 <TR><TD></TD><TD>2 MB</TD><TD></TD><TD>0x200000</TD></TR> | |
53 <TR><TD></TD><TD>4 MB</TD><TD></TD><TD>0x400000</TD></TR> | |
54 <TR><TD></TD><TD>8 MB</TD><TD></TD><TD>0x800000</TD></TR> | |
55 <TR><TD></TD><TD>16 MB</TD><TD></TD><TD>0x1000000</TD></TR> | |
56 <TR><TD></TD><TD>32 MB</TD><TD></TD><TD>0x2000000</TD></TR> | |
1682 | 57 </TABLE> |
1612 | 58 |
59 | |
6599 | 60 <P>You know base address and memory size, let's setup MTRR registers! |
6960 | 61 For example, for the Matrox card above (base=0xd8000000) with 32MB |
62 ram (size=0x2000000) just execute:</P> | |
1612 | 63 |
64 | |
1682 | 65 <P><CODE> echo "base=0xd8000000 size=0x2000000 type=write-combining" >| /proc/mtrr</CODE></P> |
1612 | 66 |
67 | |
6599 | 68 <P>Not all CPUs support MTRRs. For example older K6-2's [around 266MHz, |
6960 | 69 stepping 0] doesn't support MTRR, but stepping 12's do ('<CODE>cat |
70 /proc/cpuinfo</CODE>' to check it').</P> | |
1612 | 71 |
8177 | 72 <H4><A NAME="normal">2.3.1.2 Video outputs for traditional video cards</A></H4> |
6974 | 73 |
8177 | 74 <H4><A NAME="xv">2.3.1.2.1 Xv</A></H4> |
1612 | 75 |
1682 | 76 <P>Under XFree86 4.0.2 or newer, you can use your card's hardware YUV routines |
6960 | 77 using the XVideo extension. This is what the option '-vo xv' uses. Also, |
78 this is driver supports adjusting brightness/contrast/hue/etc (unless you use | |
79 the old, slow DirectShow DivX codec, which supports it everywhere), see the | |
80 man page.</P> | |
4498 | 81 |
82 <P>In order to make this work, be sure to check the following:</P> | |
6960 | 83 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
84 <UL> |
6960 | 85 <LI>You have to use XFree86 4.0.2 or newer (former versions don't have |
86 XVideo)</LI> | |
87 <LI>Your card actually supports hardware acceleration (modern cards do)</LI> | |
88 <LI>X loads the XVideo extension, it's something like this: | |
1612 | 89 |
6960 | 90 <P><CODE> (II) Loading extension XVideo</CODE></P> |
91 | |
92 <P>in /var/log/XFree86.0.log</P> | |
1612 | 93 |
6960 | 94 <P>NOTE: this loads only the XFree86's extension. In a good install, this |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
95 is always loaded, and doesn't mean that the <B>card's</B> XVideo support is |
6960 | 96 loaded!</P> |
97 </LI> | |
98 <LI>Your card has Xv support under Linux. To check, try 'xvinfo', it is the | |
99 part of the XFree86 distribution. It should display a long text, similar | |
100 to this: | |
101 <PRE> | |
1612 | 102 X-Video Extension version 2.2 |
103 screen #0 | |
104 Adaptor #0: "Savage Streams Engine" | |
105 number of ports: 1 | |
106 port base: 43 | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
107 operations supported: PutImage |
1612 | 108 supported visuals: |
109 depth 16, visualID 0x22 | |
110 depth 16, visualID 0x23 | |
111 number of attributes: 5 | |
112 (...) | |
113 Number of image formats: 7 | |
114 id: 0x32595559 (YUY2) | |
115 guid: 59555932-0000-0010-8000-00aa00389b71 | |
116 bits per pixel: 16 | |
117 number of planes: 1 | |
118 type: YUV (packed) | |
119 id: 0x32315659 (YV12) | |
120 guid: 59563132-0000-0010-8000-00aa00389b71 | |
121 bits per pixel: 12 | |
122 number of planes: 3 | |
123 type: YUV (planar) | |
124 (...etc...) | |
6960 | 125 </PRE> |
126 <P>It must support YUY2 packed, and YV12 planar pixel formats to be | |
7814 | 127 usable with MPlayer.</P> |
6960 | 128 </LI> |
7814 | 129 <LI>And finally, check if MPlayer was compiled with 'xv' support. |
6960 | 130 ./configure prints this.</LI> |
6974 | 131 </UL> |
1612 | 132 |
1682 | 133 |
8177 | 134 <H4><A NAME="xv_3dfx">2.3.1.2.1.1 3dfx cards</A></H4> |
1612 | 135 |
6960 | 136 <P>Older 3dfx drivers were known to have problems with XVideo acceleration, it |
137 didn't support either YUY2 or YV12, and so. Verify that you have XFree86 | |
138 version 4.2.0 or greater, it works OK with YV12 and YUY2. Previous versions, | |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
139 including 4.1.0, <B>crash with YV12</B>. If you experience strange effects |
6960 | 140 using -vo xv, try SDL (it has XVideo too) and see if it helps. Check the |
141 <A HREF="#sdl">SDL section</A> for details.</P> | |
1612 | 142 |
6960 | 143 <P><B>OR</B>, try the NEW -vo tdfxfb driver! See the |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
144 <A HREF="#tdfxfb">tdfxfb</A> section.</P> |
1612 | 145 |
2865 | 146 |
8177 | 147 <H4><A NAME="xv_s3">2.3.1.2.1.2 S3 cards</A></H4> |
1682 | 148 |
149 <P>S3 Savage3D's should work fine, but for Savage4, use XFree86 version 4.0.3 | |
6960 | 150 or greater (in case of image problems, try 16bpp). As for S3 Virge.. there is |
151 xv support, but the card itself is very slow, so you better sell it.</P> | |
1682 | 152 |
7640 | 153 <P><B>NOTE</B>: it's currently unclear which Savage models lack YV12 support, |
154 and convert by driver (slow). If you suspect your card, get a newer driver, | |
155 or ask politely on the mplayer-users mailing list for an MMX/3DNow enabled | |
6960 | 156 driver.</P> |
2865 | 157 |
158 | |
8177 | 159 <H4><A NAME="xv_nvidia">2.3.1.2.1.3 nVidia cards</A></H4> |
1612 | 160 |
6960 | 161 <P>nVidia isn't a very good choice under Linux (according to nVidia, this is |
162 <A HREF="users_against_developers.html#nvidia">not true</A>).. You'll have to | |
163 use the binary closed-source nVidia driver, available at nVidia's web site. | |
164 The standard XFree86 driver doesn't support XVideo for these cards, due to | |
165 nVidia's closed sources/specifications.</P> | |
1612 | 166 |
3290 | 167 <P>As far as I know the latest XFree86 driver contains XVideo support for |
6960 | 168 GeForce 2 and 3.</P> |
3290 | 169 |
6599 | 170 <P>Riva128 cards don't have XVideo support even with the nVidia driver :( |
6960 | 171 Complain to nVidia.</P> |
1612 | 172 |
173 | |
8177 | 174 <H4><A NAME="xv_ati">2.3.1.2.1.4 ATI cards</A></H4> |
1612 | 175 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
176 <UL> |
7937 | 177 <LI>The <A HREF="http://gatos.sourceforge.net">GATOS driver</A> (which you |
6960 | 178 should use, unless you have Rage128 or Radeon) has VSYNC enabled by |
179 default. It means that decoding speed (!) is synced to the monitor's | |
180 refresh rate. If playing seems to be slow, try disabling VSYNC somehow, or | |
181 set refresh rate to n*(fps of the movie) Hz.</LI> | |
182 <LI>Radeon VE - currently only XFree86 CVS has driver for this card, version | |
7814 | 183 4.1.0 doesn't. And no TV out support. Of course with MPlayer you can |
6960 | 184 happily get <B>accelerated</B> display, with or without <B>TV output</B>, and |
185 no libraries or X are needed. Read <A HREF="#vidix">Vidix</A> section.</LI> | |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
186 </UL> |
1612 | 187 |
188 | |
8177 | 189 <H4><A NAME="xv_neomagic">2.3.1.2.1.5 NeoMagic cards</A></H4> |
1922
5f0e4310dd4d
NeoMagic stuff added (legyen egyszer gyereknap...)
gabucino
parents:
1920
diff
changeset
|
190 |
4920
089485d69edd
added notes about enhanced Neomagic and Savage4 drivers
gabucino
parents:
4908
diff
changeset
|
191 <P>These cards can be found in many laptops. Unfortunately, the driver in |
089485d69edd
added notes about enhanced Neomagic and Savage4 drivers
gabucino
parents:
4908
diff
changeset
|
192 X 4.2.0 can't do Xv, but we have a modified, Xv-capable driver for you. |
089485d69edd
added notes about enhanced Neomagic and Savage4 drivers
gabucino
parents:
4908
diff
changeset
|
193 <A HREF="http://www.mplayerhq.hu/MPlayer/contrib/NeoMagic-driver/neomagic_drv.o.4.2.0.bz2">Download from here</A>. |
5359 | 194 Driver provided by Stefan Seyfried.</P> |
5378 | 195 |
6960 | 196 <P>To allow playback of DVD sized content change your XF86Config like this:</P> |
5378 | 197 |
6974 | 198 <P>Section "Device"<BR> |
6960 | 199 <I>[...]</I><BR> |
200 Driver "neomagic"<BR> | |
201 <B>Option "OverlayMem" "829440"</B><BR> | |
202 <I>[...]</I><BR> | |
6974 | 203 EndSection</P> |
1922
5f0e4310dd4d
NeoMagic stuff added (legyen egyszer gyereknap...)
gabucino
parents:
1920
diff
changeset
|
204 |
5378 | 205 |
8177 | 206 <H4><A NAME="xv_trident">2.3.1.2.1.6 Trident cards</A></H4> |
3794 | 207 |
7640 | 208 <P>If you want to use xv with a trident card, provided that it doesn't work |
209 with 4.1.0, install XFree 4.2.0. 4.2.0 adds support for fullscreen xv | |
210 support with the Cyberblade XP card.</P> | |
1922
5f0e4310dd4d
NeoMagic stuff added (legyen egyszer gyereknap...)
gabucino
parents:
1920
diff
changeset
|
211 |
6974 | 212 |
8177 | 213 <H4><A NAME="dga">2.3.1.2.2 DGA</A></H4> |
1612 | 214 |
6974 | 215 |
8177 | 216 <H4><A NAME="dga_summary">2.3.1.2.2.1 Summary</A></H4> |
1612 | 217 |
6960 | 218 <P>This document tries to explain in some words what DGA is in general and what |
7814 | 219 the DGA video output driver for MPlayer can do (and what it |
6960 | 220 can't).</P> |
1612 | 221 |
222 | |
8177 | 223 <H4><A NAME="dga_whatis">2.3.1.2.2.2 What is DGA</A></H4> |
1612 | 224 |
1682 | 225 <P>DGA is short for Direct Graphics Access and is a means for a program to |
6960 | 226 bypass the X-Server and directly modifying the framebuffer memory. |
227 Technically spoken this happens by mapping the framebuffer memory into | |
228 the memory range of your process. This is allowed by the kernel only | |
229 if you have superuser privileges. You can get these either by logging in | |
7814 | 230 as root or by setting the SUID bit on the MPlayer executable (<B>not |
7015
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
231 recommended</B>).</P> |
1612 | 232 |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
233 <P>There are two versions of DGA: DGA1 is used by XFree 3.x.x and DGA2 was |
6960 | 234 introduced with XFree 4.0.1.</P> |
1612 | 235 |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
236 <P>DGA1 provides only direct framebuffer access as described above. For |
6960 | 237 switching the resolution of the video signal you have to rely on the |
238 XVidMode extension.</P> | |
1612 | 239 |
1682 | 240 <P>DGA2 incorporates the features of XVidMode extension and also allows |
6960 | 241 switching the depth of the display. So you may, although basically |
242 running a 32 bit depth X server, switch to a depth of 15 bits and vice | |
243 versa. </P> | |
1612 | 244 |
1682 | 245 <P>However DGA has some drawbacks. It seems it is somewhat dependent on the |
6960 | 246 graphics chip you use and on the implementation of the X server's video |
247 driver that controls this chip. So it does not work on every system ...</P> | |
1612 | 248 |
249 | |
8177 | 250 <H4><A NAME="dga_installation">2.3.1.2.2.3 Installing DGA support for MPlayer</A></H4> |
1682 | 251 |
252 <P>First make sure X loads the DGA extension, see in /var/log/XFree86.0.log:</P> | |
253 | |
254 <P> <CODE>(II) Loading extension XFree86-DGA</CODE></P> | |
255 | |
7814 | 256 <P>See, XFree86 4.0.x or greater is VERY RECOMMENDED! MPlayer's DGA |
6960 | 257 driver is autodetected on ./configure, or you can force it with |
258 --enable-dga.</P> | |
1612 | 259 |
1682 | 260 <P>If the driver couldn't switch to a smaller resolution, experiment with |
6960 | 261 switches -vm (only with X 3.3.x), -fs, -bpp, -zoom to find a video mode that |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
262 the movie fits in. There is no converter right now :(</P> |
1612 | 263 |
7015
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
264 <P>Become root. DGA needs root access to be able to write directly to video |
7814 | 265 memory. If you want to run it as user, then install MPlayer SUID |
6960 | 266 root:</P> |
1612 | 267 |
1682 | 268 <P><CODE> |
6960 | 269 chown root /usr/local/bin/mplayer<BR> |
270 chmod 750 /usr/local/bin/mplayer<BR> | |
271 chmod +s /usr/local/bin/mplayer</CODE></P> | |
1612 | 272 |
1682 | 273 <P>Now it works as a simple user, too.</P> |
1612 | 274 |
7015
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
275 <BLOCKQUOTE> |
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
276 <B>Warning: security risk</B><BR> |
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
277 This is a <B>big</B> security risk! <B>Never</B> do this on a server or on |
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
278 a computer that can be accessed by other people because they can gain root |
7814 | 279 privileges through SUID root MPlayer. |
7015
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
280 </BLOCKQUOTE> |
1682 | 281 |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
282 <P>Now use the <CODE>-vo dga</CODE> option, and there you go (hope so :))! |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
283 You should also try if the <CODE>-vo sdl:dga</CODE> option works for you. It's |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
284 much faster.</P> |
1682 | 285 |
6974 | 286 |
8177 | 287 <H4><A NAME="dga_resolution">2.3.1.2.2.4 Resolution switching</A></H4> |
1682 | 288 |
6960 | 289 <P>The DGA driver allows for switching the resolution of the output signal. |
290 This avoids the need for doing (slow) software scaling and at the same time | |
291 provides a fullscreen image. Ideally it would switch to the exact resolution | |
292 (except for honoring aspect ratio) of the video data, but the X server only | |
293 allows switching to resolutions predefined in | |
294 <CODE>/etc/X11/XF86Config</CODE> (<CODE>/etc/X11/XF86Config-4</CODE> for | |
295 XFree 4.0.X respectively). Those are defined by so-called modelines and | |
296 depend on the capabilities of your video hardware. The X server scans this | |
297 config file on startup and disables the modelines not suitable for your | |
298 hardware. You can find out which modes survive with the X11 log file. It can | |
299 be found at: | |
300 <CODE>/var/log/XFree86.0.log</CODE>.</P> | |
301 | |
1682 | 302 <P>See appendix A for some sample modeline definitions.</P> |
303 | |
6974 | 304 |
8177 | 305 <H4><A NAME="dga_mplayer">2.3.1.2.2.5 DGA & MPlayer</A></H4> |
1612 | 306 |
7814 | 307 <P>DGA is used in two places with MPlayer: The SDL driver can be made to |
6960 | 308 make use of it (-vo sdl:dga) and within the DGA driver (-vo dga). The above |
309 said is true for both; in the following sections I'll explain how the DGA | |
7814 | 310 driver for MPlayer works.</P> |
1612 | 311 |
6974 | 312 |
8177 | 313 <H4><A NAME="dga_features">2.3.1.2.2.6 Features of the DGA driver</A></H4> |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
314 |
1682 | 315 <P>The DGA driver is invoked by specifying -vo dga at the command line. |
6960 | 316 The default behavior is to switch to a resolution matching the original |
317 resolution of the video as close as possible. It deliberately ignores the | |
318 -vm and -fs switches (enabling of video mode switching and fullscreen) - | |
319 it always tries to cover as much area of your screen as possible by switching | |
320 the video mode, thus refraining to use a single additional cycle of your CPU | |
321 to scale the image. | |
322 If you don't like the mode it chooses you may force it to choose the mode | |
323 matching closest the resolution you specify by -x and -y. | |
324 By providing the -v option, the DGA driver will print, among a lot of other | |
325 things, a list of all resolutions supported by your current XF86-Config | |
326 file. | |
327 Having DGA2 you may also force it to use a certain depth by using the -bpp | |
328 option. Valid depths are 15, 16, 24 and 32. It depends on your hardware | |
329 whether these depths are natively supported or if a (possibly slow) | |
330 conversion has to be done.</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
331 |
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
332 <P>If you should be lucky enough to have enough offscreen memory left to |
6960 | 333 put a whole image there, the DGA driver will use doublebuffering, which |
334 results in much smoother movie replaying. It will tell you whether double- | |
335 buffering is enabled or not.</P> | |
1612 | 336 |
1682 | 337 <P>Doublebuffering means that the next frame of your video is being drawn in |
6960 | 338 some offscreen memory while the current frame is being displayed. When the |
339 next frame is ready, the graphics chip is just told the location in memory | |
340 of the new frame and simply fetches the data to be displayed from there. | |
341 In the meantime the other buffer in memory will be filled again with new | |
342 video data.</P> | |
1682 | 343 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
344 <P>Doublebuffering may be switched on by using the option -double and may be |
6960 | 345 disabled with -nodouble. Current default option is to disable |
346 doublebuffering. When using the DGA driver, onscreen display (OSD) only | |
347 works with doublebuffering enabled. However, enabling doublebuffering may | |
348 result in a big speed penalty (on my K6-II+ 525 it used an additional 20% of | |
349 CPU time!) depending on the implementation of DGA for your hardware.</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
350 |
1682 | 351 |
8177 | 352 <H4><A NAME="dga_speed">2.3.1.2.2.7 Speed issues</A></H4> |
1682 | 353 |
354 <P>Generally spoken, DGA framebuffer access should be at least as fast as using | |
6960 | 355 the X11 driver with the additional benefit of getting a fullscreen image. |
7814 | 356 The percentage speed values printed by MPlayer have to be interpreted |
6960 | 357 with some care, as for example, with the X11 driver they do not include the |
358 time used by the X-Server needed for the actual drawing. Hook a terminal to a | |
359 serial line of your box and start top to see what is really going on in your | |
360 box...</P> | |
1682 | 361 |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
362 <P>Generally spoken, the speedup done by using DGA against 'normal' use of X11 |
6960 | 363 highly depends on your graphics card and how well the X-Server module for it |
364 is optimized.</P> | |
1682 | 365 |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
366 <P>If you have a slow system, better use 15 or 16bit depth since they require |
6960 | 367 only half the memory bandwidth of a 32 bit display.</P> |
1612 | 368 |
6960 | 369 <P>Using a depth of 24bit is even a good idea if your card natively just |
370 supports 32 bit depth since it transfers 25% less data compared to the 32/32 | |
371 mode.</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
372 |
6599 | 373 <P>I've seen some AVI files already be replayed on a Pentium MMX 266. AMD K6-2 |
6960 | 374 CPUs might work at 400 MHZ and above.</P> |
1612 | 375 |
6974 | 376 |
8177 | 377 <H4><A NAME="dga_bugs">2.3.1.2.2.8 Known bugs</A></H4> |
1682 | 378 |
6599 | 379 <P>Well, according to some developers of XFree, DGA is quite a beast. They |
6960 | 380 tell you better not to use it. Its implementation is not always flawless |
381 with every chipset driver for XFree out there.</P> | |
1612 | 382 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
383 <UL> |
6960 | 384 <LI>With XFree 4.0.3 and nv.o there is a bug resulting in strange |
385 colors.</LI> | |
386 <LI>ATI driver requires to switch mode back more than once after finishing | |
387 using of DGA.</LI> | |
388 <LI>Some drivers simply fail to switch back to normal resolution (use | |
389 Ctrl-Alt-Keypad +, - to switch back manually).</LI> | |
390 <LI>Some drivers simply display strange colors.</LI> | |
391 <LI>Some drivers lie about the amount of memory they map into the process's | |
392 address space, thus vo_dga won't use doublebuffering (SIS?).</LI> | |
393 <LI>some drivers seem to fail to report even a single valid mode. In this | |
394 case the DGA driver will crash telling you about a nonsense mode of | |
395 100000x100000 or the like ...</LI> | |
396 <LI>OSD only works with doublebuffering enabled.</LI> | |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
397 </UL> |
1682 | 398 |
6974 | 399 |
8177 | 400 <H4><A NAME="dga_future">2.3.1.2.2.9 Future work</A></H4> |
1682 | 401 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
402 <UL> |
6960 | 403 <LI>use of the new X11 render interface for OSD</LI> |
404 <LI>where is my TODO list ???? :-(((</LI> | |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
405 </UL> |
1612 | 406 |
407 | |
8177 | 408 <H4><A NAME="dga_modelines">2.3.1.2.2.A Some modelines</A></H4> |
1612 | 409 |
1682 | 410 <PRE> |
1612 | 411 Section "Modes" |
412 Identifier "Modes[0]" | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
413 Modeline "800x600" 40 800 840 968 1056 600 601 605 628 |
1612 | 414 Modeline "712x600" 35.0 712 740 850 900 400 410 412 425 |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
415 Modeline "640x480" 25.175 640 664 760 800 480 491 493 525 |
1612 | 416 Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan |
417 Modeline "352x288" 25.10 352 368 416 432 288 296 290 310 | |
418 Modeline "352x240" 15.750 352 368 416 432 240 244 246 262 Doublescan | |
419 Modeline "320x240" 12.588 320 336 384 400 240 245 246 262 Doublescan | |
420 EndSection | |
1682 | 421 </PRE> |
1612 | 422 |
6599 | 423 <P>These entries work fine with my Riva128 chip, using nv.o X server driver |
6960 | 424 module.</P> |
1612 | 425 |
426 | |
8177 | 427 <H4><A NAME="dga_bug_reports">2.3.1.2.2.B Bug Reports</A></H4> |
1612 | 428 |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
429 <P>If you experience troubles with the DGA driver please feel free to file |
7814 | 430 a bug report to me (e-mail address below). Please start MPlayer with |
6960 | 431 the -v option and include all lines in the bug report that start with |
432 vo_dga:</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
433 |
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
434 <P>Please do also include the version of X11 you are using, the graphics card |
6960 | 435 and your CPU type. The X11 driver module (defined in XF86-Config) might |
436 also help. Thanks!</P> | |
1612 | 437 |
1682 | 438 <P><I>Acki (acki@acki-netz.de, www.acki-netz.de)</I></P> |
1612 | 439 |
440 | |
8177 | 441 <H4><A NAME="sdl">2.3.1.2.3 SDL</A></H4> |
1612 | 442 |
6583 | 443 <P>SDL (Simple Directmedia Layer) is basically a unified video/audio |
3988 | 444 interface. Programs that use it know only about SDL, and not about what video |
445 or audio driver does SDL actually use. For example a Doom port using SDL can | |
446 run on svgalib, aalib, X, fbdev, and others, you only have to specify the | |
447 (for example) video driver to use with the SDL_VIDEODRIVER environment | |
448 variable. Well, in theory.</P> | |
449 | |
7814 | 450 <P>With MPlayer, we used its X11 driver's software scaler ability for |
3988 | 451 cards/drivers that doesn't support XVideo, until we made our own (faster, |
452 nicer) software scaler. Also we used its aalib output, but now we have ours | |
453 which is more comfortable. Its DGA mode was better than ours, until | |
454 recently. Get it now? :)</P> | |
455 | |
456 <P>It also helps with some buggy drivers/cards if the video is jerky | |
457 (not slow system problem), or audio is lagging.</P> | |
458 | |
5119 | 459 <P>SDL video output supports displaying subtitles under the movie, on the (if |
460 present) black bar.</P> | |
461 | |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
462 <P><B>There are several command line switches for SDL:</B></P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
463 <DL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
464 <DT><CODE>-vo sdl:name</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
465 <DD>specifies sdl video driver to use (i.e.. aalib, dga, x11)</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
466 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
467 <DT><CODE>-ao sdl:name</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
468 <DD>specifies sdl audio driver to use (i.e. dsp, esd, arts)</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
469 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
470 <DT><CODE>-noxv</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
471 <DD>disables XVideo hardware acceleration</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
472 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
473 <DT><CODE>-forcexv</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
474 <DD>tries to force XVideo acceleration</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
475 </DL> |
1612 | 476 |
6974 | 477 <TABLE BORDER=0> |
478 <TR><TD COLSPAN=4><P><B>SDL Keys:</B></P></TD></TR> | |
479 <TR><TD></TD><TD><CODE>F</CODE></TD><TD></TD><TD>toggles fullscreen/windowed mode</TD></TR> | |
480 <TR><TD></TD><TD><CODE>C</CODE></TD><TD></TD><TD>cycles available fullscreen modes</TD></TR> | |
481 <TR><TD></TD><TD><CODE>W/S</CODE></TD><TD></TD><TD>mappings for * and / (mixer control)</TD></TR> | |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
482 </TABLE> |
1612 | 483 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
484 <H4>Known bugs:</H4> |
6960 | 485 |
486 <UL> | |
487 <LI>Keys pressed under sdl:aalib console driver repeat forever. (use -vo aa!) | |
488 It's bug in SDL, I can't change it (tested with SDL 1.2.1).</LI> | |
8145 | 489 <LI>DO NOT USE SDL with GUI! It won't work as it should.</LI> |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
490 </UL> |
1612 | 491 |
6974 | 492 |
8177 | 493 <H4><A NAME="svgalib">2.3.1.2.4 SVGAlib</A></H4> |
1682 | 494 |
7047 | 495 <H4>Installation</H4> |
496 | |
497 <P>You'll have to install svgalib and its development package in order for | |
7814 | 498 MPlayer build its SVGAlib driver (autodetected, but can be forced), |
6499 | 499 and don't forget to edit /etc/vga/libvga.config to suit your card & |
500 monitor.</P> | |
501 | |
7047 | 502 <H4>Notes</H4> |
503 | |
504 <P>Be sure not to use the -fs switch, since it toggles the usage of the software | |
6499 | 505 scaler, and it's slow. If you really need it, use the <CODE>-sws 4</CODE> |
506 option which will produce bad quality, but is somewhat faster.</P> | |
507 | |
7047 | 508 <H4>EGA (4bpp) support</H4> |
509 | |
7814 | 510 <P>SVGAlib incorporates EGAlib, and MPlayer has the possibility to |
6499 | 511 display any movie in 16 colors, thus usable in the following sets:</P> |
1612 | 512 |
6499 | 513 <UL> |
514 <LI>EGA card with EGA monitor: 320x200x4bpp, 640x200x4bpp, 640x350x4bpp</LI> | |
515 <LI>EGA card with CGA monitor: 320x200x4bpp, 640x200x4bpp</LI> | |
516 </UL> | |
517 | |
518 <P>The bpp (bits per pixel) value must be set to 4 by hand:<BR> | |
519 <CODE>-bpp 4</CODE><BR> | |
520 The movie probably must be scaled down to fit in EGA mode:<BR> | |
521 <CODE>-vop scale=640:350</CODE> or<BR> | |
522 <CODE>-vop scale=320:200</CODE><BR> | |
523 For that we need fast but bad quality scaling routine:<BR> | |
524 <CODE>-sws 4</CODE><BR> | |
525 Maybe automatic aspect correction has to be shut off:<BR> | |
6974 | 526 <CODE>-noaspect</CODE></P> |
6499 | 527 |
1612 | 528 |
8177 | 529 <H4><A NAME="fbdev">2.3.1.2.5 Framebuffer output (FBdev)</A></H4> |
1682 | 530 |
531 <P>Whether to build the FBdev target is autodetected during ./configure . | |
6960 | 532 Read the framebuffer documentation in the kernel sources |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
533 (Documentation/fb/*) for more information.</P> |
1612 | 534 |
1682 | 535 <P>If your card doesn't support VBE 2.0 standard (older ISA/PCI |
6960 | 536 cards, such as S3 Trio64), only VBE 1.2 (or older?): |
537 Well, VESAfb is still available, but you'll have to load SciTech Display | |
8177 | 538 Doctor (formerly UniVBE) before booting Linux. Use a DOS boot disk or |
539 whatever. And don't forget to register your UniVBE ;))</P> | |
1612 | 540 |
1682 | 541 <P>The FBdev output takes some additional parameters above the others:</P> |
1612 | 542 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
543 <DL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
544 <DT><CODE>-fb</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
545 <DD>specify the framebuffer device to use (/dev/fb0)</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
546 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
547 <DT><CODE>-fbmode</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
548 <DD>mode name to use (according to /etc/fb.modes)</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
549 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
550 <DT><CODE>-fbmodeconfig</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
551 <DD>config file of modes (default /etc/fb.modes)</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
552 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
553 <DT><CODE>-monitor_hfreq</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
554 <DT><CODE>-monitor_vfreq</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
555 <DT><CODE>-monitor_dotclock</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
556 <DD><STRONG>Important</STRONG> values, see <CODE>example.conf</CODE></DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
557 </DL> |
1612 | 558 |
1682 | 559 <P>If you want to change to a specific mode, then use</P> |
1612 | 560 |
1682 | 561 <P><CODE> mplayer -vm -fbmode (NameOfMode) filename</CODE></P> |
1612 | 562 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
563 <UL> |
6960 | 564 <LI><B>-vm</B> alone will choose the most suitable mode from /etc/fb.modes. |
565 Can be used together with -x and -y options too. The -flip option is | |
566 supported only if the movie's pixel format matches the video mode's pixel | |
567 format. Pay attention to the bpp value, fbdev driver tries to use the | |
568 current, or if you specify the -bpp option, then that.</LI> | |
569 <LI><B>-zoom</B> option isn't supported (software scaling is slow). -fs | |
570 option isn't supported. You can't use 8bpp (or less) modes.</LI> | |
571 <LI>you possibly want to turn the cursor off: <CODE>echo -e | |
572 '\033[?25l'</CODE> or <CODE>setterm -cursor off</CODE><BR> | |
573 and the screen saver: <CODE>setterm -blank 0</CODE><BR> | |
574 To turn the cursor back on: <CODE>echo -e '\033[?25h'</CODE> | |
575 or <CODE>setterm -cursor on</CODE></LI> | |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
576 </UL> |
1612 | 577 |
1682 | 578 <P>NOTE: FBdev video mode changing _does not work_ with the VESA framebuffer, |
7814 | 579 and don't ask for it, since it's not an MPlayer limitation.</P> |
1612 | 580 |
6974 | 581 |
8177 | 582 <H4><A NAME="mga_vid">2.3.1.2.6 Matrox framebuffer (mga_vid)</A></H4> |
1612 | 583 |
1992 | 584 <P>This section is about the Matrox G200/G400/G450/G550 BES (Back-End Scaler) |
8177 | 585 support, the mga_vid kernel driver. It's active developed by me (A'rpi), and |
6960 | 586 it has hardware VSYNC support with triple buffering. It works on both |
587 framebuffer console and under X.</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
588 |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
589 <P><B>WARNING</B>: on non-Linux systems, use <A HREF="#vidix">VIDIX</A> for |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
590 mga_vid!</P> |
4505
fdeee8424d90
on non-Linux use Vidix instead of mga_vid kernelmodule
gabucino
parents:
4504
diff
changeset
|
591 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
592 <P><B>Installation:</B></P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
593 <OL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
594 <LI>To use it, you first have to compile mga_vid.o: |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
595 <P><CODE>cd drivers<BR> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
596 make</CODE></P></LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
597 <LI>Then create the <CODE>/dev/mga_vid</CODE> device: |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
598 <P><CODE>mknod /dev/mga_vid c 178 0</CODE></P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
599 <P>and load the driver with</P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
600 <P><CODE>insmod mga_vid.o</CODE></P></LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
601 <LI>You should verify the memory size detection using the <CODE>dmesg</CODE> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
602 command. If it's bad, use the <CODE>mga_ram_size</CODE> option |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
603 (<CODE>rmmod mga_vid</CODE> first), specify card's memory size in MB: |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
604 <P><CODE>insmod mga_vid.o mga_ram_size=16</CODE></P></LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
605 <LI>To make it load/unload automatically when needed, first insert the |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
606 following line at the end of <CODE>/etc/modules.conf</CODE>: |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
607 <P><CODE>alias char-major-178 mga_vid</CODE></P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
608 <P>Then copy the <CODE>mga_vid.o</CODE> module to the appropriate place |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
609 under <CODE>/lib/modules/<kernel version>/somewhere</CODE>.</P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
610 <P>Then run</P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
611 <P><CODE>depmod -a</CODE></P></LI> |
7814 | 612 <LI>Now you have to (re)compile MPlayer, <CODE>configure</CODE> will |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
613 detect <CODE>/dev/mga_vid</CODE> and build the 'mga' driver. Using it from |
7814 | 614 MPlayer goes by <CODE>-vo mga</CODE> if you have matroxfb console, |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
615 or <CODE>-vo xmga</CODE> under XFree86 3.x.x or 4.x.x.</LI> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
616 </OL> |
1682 | 617 |
2108 | 618 <P>The mga_vid driver cooperates with Xv.</P> |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
619 |
4504 | 620 <P>The <CODE>/dev/mga_vid</CODE> device file can be read (for example by |
621 <CODE>cat /dev/mga_vid</CODE>) for some info, and written for brightness | |
7076
3275af5787e0
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, slightly
diego
parents:
7061
diff
changeset
|
622 change: <CODE>echo "brightness=120" > /dev/mga_vid</CODE></P> |
4504 | 623 |
1612 | 624 |
8177 | 625 <H4><A NAME="tdfxfb">2.3.1.2.7 3dfx YUV support (tdfxfb)</A></H4> |
1612 | 626 |
1992 | 627 <P>This driver uses the kernel's tdfx framebuffer driver to play movies with |
6960 | 628 YUV acceleration. You'll need a kernel with tdfxfb support, and recompile |
629 with <CODE>./configure --enable-tdfxfb</CODE></P> | |
1612 | 630 |
6974 | 631 |
8177 | 632 <H4><A NAME="opengl">2.3.1.2.8 OpenGL output</A></H4> |
1612 | 633 |
7814 | 634 <P>MPlayer supports displaying movies using OpenGL, but if your |
6960 | 635 platform/driver supports xv as should be the case on a PC with Linux, use xv |
636 instead, OpenGL performance is considerably worse. If you have an X11 | |
637 implementation without xv support, OpenGL is a viable alternative.</P> | |
6309 | 638 |
639 <P>Unfortunately not all drivers support this feature. The Utah-GLX drivers | |
6960 | 640 (for XFree86 3.3.6) support it for all cards. See |
641 <A HREF="http://utah-glx.sourceforge.net">http://utah-glx.sourceforge.net</A> | |
642 for details about how to install it.</P> | |
1612 | 643 |
7076
3275af5787e0
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, slightly
diego
parents:
7061
diff
changeset
|
644 <P>XFree86(DRI) 4.0.3 or later supports OpenGL with Matrox and Radeon cards, |
3275af5787e0
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, slightly
diego
parents:
7061
diff
changeset
|
645 4.2.0 or later supports Rage128. See |
6960 | 646 <A HREF="http://dri.sourceforge.net">http://dri.sourceforge.net</A> |
647 for download and installation instructions.</P> | |
1612 | 648 |
6974 | 649 |
8177 | 650 <H4><A NAME="aalib">2.3.1.2.9 AAlib - text mode displaying</A></H4> |
1612 | 651 |
1682 | 652 <P><B>AAlib</B> is a library for displaying graphics in text mode, using powerful |
6960 | 653 ASCII renderer. There are LOTS of programs already supporting it, like Doom, |
7814 | 654 Quake, etc. MPlayer contains a very usable driver for it. |
6960 | 655 If ./configure detects aalib installed, the aalib libvo driver will be |
656 built.</P> | |
1612 | 657 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
658 <TABLE BORDER=0> |
6974 | 659 <TR><TD COLSPAN=4><P><B>You can use some keys in the AA Window to change rendering options:</B></P></TD></TR> |
660 <TR><TD> </TD><TD><CODE>1</CODE></TD><TD> </TD><TD>decrease contrast</TD></TR> | |
661 <TR><TD></TD><TD><CODE>2</CODE></TD><TD></TD><TD>increase contrast</TD></TR> | |
662 <TR><TD></TD><TD><CODE>3</CODE></TD><TD></TD><TD>decrease brightness</TD></TR> | |
663 <TR><TD></TD><TD><CODE>4</CODE></TD><TD></TD><TD>increase brightness</TD></TR> | |
664 <TR><TD></TD><TD><CODE>5</CODE></TD><TD></TD><TD>switch fast rendering on/off</TD></TR> | |
665 <TR><TD></TD><TD><CODE>6</CODE></TD><TD></TD><TD>set dithering mode (none, error distribution, Floyd Steinberg)</TD></TR> | |
666 <TR><TD></TD><TD><CODE>7</CODE></TD><TD></TD><TD>invert image</TD></TR> | |
7814 | 667 <TR><TD></TD><TD><CODE>a</CODE></TD><TD></TD><TD>toggles between aa and MPlayer control)</TD></TR> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
668 </TABLE> |
1612 | 669 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
670 <P><B>The following command line options can be used:</B></P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
671 <DL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
672 <DT><CODE>-aaosdcolor=V</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
673 <DD>change OSD color</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
674 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
675 <DT><CODE>-aasubcolor=V</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
676 <DD>change subtitle color |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
677 <P><I>where V can be: (0/normal, 1/dark, 2/bold, 3/bold font, 4/reverse, |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
678 5/special)</I></P></DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
679 </DL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
680 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
681 <P><B>AAlib itself provides a large sum of options. |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
682 Here are some important:</B></P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
683 <DL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
684 <DT><CODE>-aadriver</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
685 <DD>set recommended aa driver (X11, curses, Linux)</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
686 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
687 <DT><CODE>-aaextended</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
688 <DD>use all 256 characters</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
689 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
690 <DT><CODE>-aaeight</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
691 <DD>use eight bit ASCII</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
692 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
693 <DT><CODE>-aahelp</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
694 <DD>prints out all aalib options</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
695 </DL> |
1682 | 696 |
697 <P>NOTE: the rendering is very CPU intensive, especially when using AA-on-X | |
6960 | 698 (using aalib on X), and it's least CPU intensive on standard, |
699 non-framebuffer console. Use SVGATextMode to set up a big textmode, | |
700 then enjoy! (secondary head Hercules cards rock :)) (anyone can enhance | |
701 fbdev to do conversion/dithering to hgafb? Would be neat :)</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
702 |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
703 <P>Use the <CODE>-framedrop</CODE> option if your computer isn't fast enough to |
6960 | 704 render all frames!</P> |
1612 | 705 |
6960 | 706 <P>Playing on terminal you'll get better speed and quality using the Linux |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
707 driver, not curses (<CODE>-aadriver linux</CODE>). But therefore you need write access on |
8177 | 708 <CODE>/dev/vcsa<terminal></CODE>. That isn't autodetected by aalib, but vo_aa tries |
709 to find the best mode. See | |
6960 | 710 <A HREF="http://aa-project.sourceforge.net/tune/">http://aa-project.sourceforge.net/tune/</A> |
711 for further tuning issues.</P> | |
1612 | 712 |
2471 | 713 |
8177 | 714 <H4><A NAME="vesa">2.3.1.2.10 VESA - output to VESA BIOS</A></H4> |
6906
3274d0725fde
Changed all link names from the section number to a sensible label.
diego
parents:
6882
diff
changeset
|
715 |
6960 | 716 <P>This driver was designed and introduced as a <B>generic driver</B> for any |
7651 | 717 video card which has VESA VBE 2.0+ compatible BIOS. Another advantage of this |
6960 | 718 driver is that it tries to force TV output on.<BR> |
719 <B>VESA BIOS EXTENSION (VBE) Version 3.0 Date: September 16, 1998</B> (Page | |
720 70) says:</P> | |
2448
1e56c3381d55
'vesa' vo driver added. By Nick Kurshev. (spellchecked, fixed, mplayerdoxized)
gabucino
parents:
2408
diff
changeset
|
721 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
722 <BLOCKQUOTE> |
6974 | 723 <B>Dual-Controller Designs</B><BR> |
6960 | 724 VBE 3.0 supports the dual-controller design by assuming that since both |
725 controllers are typically provided by the same OEM, under control of a | |
726 single BIOS ROM on the same graphics card, it is possible to hide the fact | |
727 that two controllers are indeed present from the application. This has the | |
728 limitation of preventing simultaneous use of the independent controllers, | |
729 but allows applications released before VBE 3.0 to operate normally. The | |
730 VBE Function 00h (Return Controller Information) returns the combined | |
731 information of both controllers, including the combined list of available | |
732 modes. When the application selects a mode, the appropriate controller is | |
733 activated. Each of the remaining VBE functions then operates on the active | |
734 controller. | |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
735 </BLOCKQUOTE> |
2448
1e56c3381d55
'vesa' vo driver added. By Nick Kurshev. (spellchecked, fixed, mplayerdoxized)
gabucino
parents:
2408
diff
changeset
|
736 |
6960 | 737 <P>So you have chances to get working TV-out by using this driver.<BR> |
738 (I guess that TV-out frequently is standalone head or standalone output | |
739 at least.)</P> | |
740 | |
7047 | 741 <H4>Advantages:</H4> |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
742 |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
743 <UL> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
744 <LI>You have the possibility to watch movies <B>even if Linux doesn't know</B> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
745 your video hardware.</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
746 <LI>You don't need to have installed any graphics' related things on your Linux |
6960 | 747 (like X11 (aka XFree86), fbdev and so on). This driver can be run from |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
748 <B>text-mode</B>.</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
749 <LI>You have chances to get <B>working TV-out</B>. (It's known at least for |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
750 ATI's cards).</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
751 <LI>This driver calls <B>int 10h</B> handler thus it's not an emulator - it |
6960 | 752 calls <B>real</B> things of <B>real</B> BIOS in <B>real</B>-mode. (Finely - |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
753 in vm86 mode).</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
754 <LI>You can use Vidix with it, thus getting accelerated video display |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
755 <B>AND</B> TV output at the same time! (recommended for ATI cards)</LI> |
7793
6d8b4a1adb9d
Remove option descriptions that are in the man page, add some missing
diego
parents:
7699
diff
changeset
|
756 <LI>If you have VESA VBE 3.0+, and you had specified <CODE>monitor_hfreq</CODE>, |
6d8b4a1adb9d
Remove option descriptions that are in the man page, add some missing
diego
parents:
7699
diff
changeset
|
757 <CODE>monitor_vfreq</CODE>, <CODE>monitor_dotclock</CODE> somewhere (config |
6d8b4a1adb9d
Remove option descriptions that are in the man page, add some missing
diego
parents:
7699
diff
changeset
|
758 file, or commandline) you will get the highest possible refresh rate. (Using |
6d8b4a1adb9d
Remove option descriptions that are in the man page, add some missing
diego
parents:
7699
diff
changeset
|
759 General Timing Formula). To enable this feature you have to specify |
6d8b4a1adb9d
Remove option descriptions that are in the man page, add some missing
diego
parents:
7699
diff
changeset
|
760 <B>all</B> your monitor options.</LI> |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
761 </UL> |
2448
1e56c3381d55
'vesa' vo driver added. By Nick Kurshev. (spellchecked, fixed, mplayerdoxized)
gabucino
parents:
2408
diff
changeset
|
762 |
7047 | 763 <H4>Disadvantages:</H4> |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
764 |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
765 <UL> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
766 <LI>It works only on <B>x86 systems</B>.</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
767 <LI>It can be used only by <B>root</B>.</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
768 <LI>Currently it's available only for <B>Linux</B>.</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
769 </UL> |
2448
1e56c3381d55
'vesa' vo driver added. By Nick Kurshev. (spellchecked, fixed, mplayerdoxized)
gabucino
parents:
2408
diff
changeset
|
770 |
6960 | 771 <P>Don't use this driver with <B>GCC 2.96</B>! It won't work!</P> |
3141 | 772 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
773 <P><B>Command line options available for VESA:</B></P> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
774 <DL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
775 <DT><CODE>-vo vesa:opts</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
776 <DD>currently recognized: <B>dga</B> to force dga mode and <B>nodga</B> to |
7793
6d8b4a1adb9d
Remove option descriptions that are in the man page, add some missing
diego
parents:
7699
diff
changeset
|
777 disable dga mode. In dga mode you can enable double buffering via the |
6d8b4a1adb9d
Remove option descriptions that are in the man page, add some missing
diego
parents:
7699
diff
changeset
|
778 <CODE>-double</CODE> option. Note: you may omit these parameters to enable |
6d8b4a1adb9d
Remove option descriptions that are in the man page, add some missing
diego
parents:
7699
diff
changeset
|
779 <B>autodetection</B> of dga mode.</DD> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
780 </DL> |
2448
1e56c3381d55
'vesa' vo driver added. By Nick Kurshev. (spellchecked, fixed, mplayerdoxized)
gabucino
parents:
2408
diff
changeset
|
781 |
7047 | 782 <H4>Known problems and workaround:</H4> |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
783 |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
784 <UL> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
785 <LI>If you have installed <B>NLS</B> font on your Linux box and run VESA |
7814 | 786 driver from text-mode then after terminating MPlayer you will have |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
787 <B>ROM font</B> loaded instead of national. You can load national font again |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
788 by using <B><I>setsysfont</I></B> utility from the Mandrake distribution |
7076
3275af5787e0
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, slightly
diego
parents:
7061
diff
changeset
|
789 for example.<BR> |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
790 (<B>Hint:</B> The same utility is used for the localization of fbdev).</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
791 <LI>Some <B>Linux graphics drivers</B> don't update active <B>BIOS mode</B> in |
6960 | 792 DOS memory. So if you have such problem - always use VESA driver only from |
793 <B>text-mode</B>. Otherwise text-mode (#03) will be activated anyway and | |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
794 you will need restart your computer.</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
795 <LI>Often after terminating VESA driver you get <B>black screen</B>. To return |
6960 | 796 your screen to original state - simply switch to other console (by pressing |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
797 <B>Alt-Fx</B>) then switch to your previous console by the same way.</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
798 <LI>To get <B>working TV-out</B> you need have plugged TV-connector in before |
6960 | 799 booting your PC since video BIOS initializes itself only once during POST |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
800 procedure.</LI> |
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
801 </UL> |
2448
1e56c3381d55
'vesa' vo driver added. By Nick Kurshev. (spellchecked, fixed, mplayerdoxized)
gabucino
parents:
2408
diff
changeset
|
802 |
1e56c3381d55
'vesa' vo driver added. By Nick Kurshev. (spellchecked, fixed, mplayerdoxized)
gabucino
parents:
2408
diff
changeset
|
803 |
8177 | 804 <H4><A NAME="x11">2.3.1.2.11 X11</A></H4> |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
805 |
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
806 <P>Avoid if possible. Outputs to X11 (uses shared memory extension), with no |
6960 | 807 hardware acceleration at all. Supports (MMX/3DNow/SSE accelerated, but still |
808 slow) software scaling, use the options <CODE>-fs -zoom</CODE>. Most cards | |
809 have hardware scaling support, use the <CODE>-vo xv</CODE> output for them, | |
810 or <CODE>-vo xmga</CODE> for Matroxes.</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
811 |
6960 | 812 <P>The problem is that most cards' driver doesn't support hardware acceleration |
813 on the second head/TV. In those cases, you see green/blue colored window | |
814 instead of the movie. This is where this driver comes in handy, but you need | |
815 powerful CPU to use software scaling. Don't use the SDL driver's software | |
816 output+scaler, it has worse image quality!</P> | |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
817 |
6960 | 818 <P>Software scaling is very slow, you better try changing video modes instead. |
819 It's very simple. See the <A HREF="#dga_modelines">DGA section's modelines</A>, | |
820 and insert them into your XF86Config.</P> | |
821 | |
3290 | 822 <UL> |
823 <LI>If you have XFree86 4.x.x - use the <CODE>-vm</CODE> option. It will | |
6960 | 824 change to a resolution your movie fits in. If it doesn't:</LI> |
3290 | 825 <LI>With XFree86 3.x.x - you have to cycle through available resolutions |
826 with the <B>CTRL-ALT-plus</B> and <B>minus</B> keys.</LI> | |
827 </UL> | |
828 | |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
829 <P>If you can't find the modes you inserted, browse XFree86's output. Some |
6960 | 830 drivers can't use low pixelclocks that are needed for low resolution |
831 video modes.</P> | |
3290 | 832 |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
833 |
8177 | 834 <H4><A NAME="vidix">2.3.1.2.12 VIDIX</A></H4> |
4199 | 835 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
836 <P>VIDIX is the abbreviation for <B>VID</B>eo <B>I</B>nterface for |
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
837 *ni<B>X</B>.<BR> |
4199 | 838 VIDIX was designed and introduced as an interface for fast user-space drivers |
6583 | 839 providing such video performance as mga_vid does for Matrox cards. It's |
840 also very portable.</P> | |
4199 | 841 |
842 <P>This interface was designed as an attempt to fit existing video acceleration | |
6583 | 843 interfaces (known as mga_vid, rage128_vid, radeon_vid, pm3_vid) into a fixed scheme. It |
4199 | 844 provides highlevel interface to chips which are known as BES (BackEnd |
845 scalers) or OV (Video Overlays). It doesn't provide lowlevel interface to | |
846 things which are known as graphics servers. (I don't want to compete with X11 | |
847 team in graphics mode switching). I.e. main goal of this interface is to | |
6974 | 848 maximize the speed of video playback.</P> |
4199 | 849 |
7047 | 850 <H4>USAGE</H4> |
4199 | 851 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
852 <UL> |
4199 | 853 <LI>You can use standalone video output driver: <CODE>-vo xvidix</CODE><BR> |
8177 | 854 This driver was developed as X11's front end to VIDIX technology. It |
8029
6ccd72982b88
Document xvidix pixmap corruption issue and known workarounds.
ranma
parents:
8021
diff
changeset
|
855 requires X server and can work only under X server. Note that, as it |
6ccd72982b88
Document xvidix pixmap corruption issue and known workarounds.
ranma
parents:
8021
diff
changeset
|
856 directly accesses the hardware and circumvents the X driver, pixmaps |
6ccd72982b88
Document xvidix pixmap corruption issue and known workarounds.
ranma
parents:
8021
diff
changeset
|
857 cached in the graphics card's memory may be corrupted. You can prevent |
6ccd72982b88
Document xvidix pixmap corruption issue and known workarounds.
ranma
parents:
8021
diff
changeset
|
858 this by limiting the amount of video memory used by X with the XF86Config |
6ccd72982b88
Document xvidix pixmap corruption issue and known workarounds.
ranma
parents:
8021
diff
changeset
|
859 option "VideoRam" in the device section. You should set this to the amount |
6ccd72982b88
Document xvidix pixmap corruption issue and known workarounds.
ranma
parents:
8021
diff
changeset
|
860 of memory installed on your card minus 4MB. If you have less than 8MB of |
6ccd72982b88
Document xvidix pixmap corruption issue and known workarounds.
ranma
parents:
8021
diff
changeset
|
861 video ram, you can use the option "XaaNoPixmapCache" in the screen section |
6ccd72982b88
Document xvidix pixmap corruption issue and known workarounds.
ranma
parents:
8021
diff
changeset
|
862 instead.</LI> |
4199 | 863 <LI>You can use VIDIX subdevice which was applied to several video output |
864 drivers, such as:<BR> | |
7015
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
865 <CODE>-vo vesa:vidix</CODE> (<B>Linux only</B>) and <CODE>-vo fbdev:vidix</CODE></LI> |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
866 </UL> |
6974 | 867 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
868 Indeed it doesn't matter which video output driver is used with <B>VIDIX</B>. |
4199 | 869 |
7047 | 870 <H4>REQUIREMENTS</H4> |
4199 | 871 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
872 <UL> |
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
873 <LI>video card should be in graphics mode (I write <B>should</B> simply |
4199 | 874 because I tested it in text mode - it works but has awful output ;) Use |
875 AAlib for that).<BR> | |
876 <I>Note: Everyone can try this trick by commenting out mode switching in | |
877 vo_vesa driver.</I></LI> | |
7814 | 878 <LI>MPlayer's video output driver should know active video mode and be |
4199 | 879 able to tell to VIDIX subdevice some video characteristics of server.</LI> |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
880 </UL> |
6974 | 881 |
7814 | 882 I hope that probably every video output driver of MPlayer will |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
883 recognize <CODE>:vidix</CODE> subdevice. |
4199 | 884 |
7047 | 885 <H4>USAGE METHODS</H4> |
4199 | 886 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
887 <P>When VIDIX is used as <B>subdevice</B> (<CODE>-vo vesa:vidix</CODE>) then |
4199 | 888 video mode configuration is performed by video output device |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
889 (<B>vo_server</B> in short). Therefore you can pass into command line of |
7814 | 890 MPlayer the same keys as for vo_server. In addition it understands |
4199 | 891 <CODE>-double</CODE> key as globally visible parameter. (I recommend using |
892 this key with VIDIX at least for ATI's card).<BR> | |
6960 | 893 As for <CODE>-vo xvidix</CODE>: currently it recognizes the following |
6974 | 894 options: <CODE>-fs -zoom -x -y -double</CODE>.</P> |
4199 | 895 |
896 <P>Also you can specify VIDIX's driver directly as third subargument in command | |
6960 | 897 line:<BR> |
4199 | 898 <BR> |
899 <code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double | |
900 file.avi</code><BR> | |
901 or<BR> | |
902 <code>mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp | |
903 32 file.avi</code><BR> | |
904 <BR> | |
905 But it's dangerous, and you shouldn't do that. In this case given driver will | |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
906 be forced and result is unpredictable (it may <B>freeze</B> your |
4339 | 907 computer). You should do that ONLY if you are absolutely sure it will work, |
7814 | 908 and MPlayer doesn't do it automatically. Please tell about it to the |
4339 | 909 developers. The Right Way is to use VIDIX without arguments to enable driver |
6974 | 910 autodetection.</P> |
4199 | 911 |
6974 | 912 <P>VIDIX is very new technology and it's extremely possible that on your system |
4199 | 913 (OS=abc CPU=xyz) it won't work. In this case only solution for you it's port |
914 it (mainly libdha). But there is hope that it will work on those systems | |
6974 | 915 where X11 does.</P> |
4199 | 916 |
7015
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
917 <BLOCKQUOTE> |
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
918 <B>Warning: security risk</B><BR> |
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
919 Unfortunately you <B>must</B> have <B>root</B> privileges to use VIDIX |
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
920 due to direct hardware access. At least the <B>SUID</B> bit on the |
7814 | 921 MPlayer executable must be set. |
7015
72059027f953
Applied patch by Andras Mohari <mayday at varoshaza nagyatad hu> in a
diego
parents:
6998
diff
changeset
|
922 </BLOCKQUOTE> |
4199 | 923 |
7047 | 924 <H4>VIDEO EQUALIZER</H4> |
4496 | 925 |
6974 | 926 <P>This is a video equalizer implemented especially for VIDIX. You can use |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
927 it either with <B>1-8</B> keys as described in the man page, or |
7814 | 928 by command line arguments. MPlayer recognizes the |
6974 | 929 following options:</P> |
4496 | 930 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
931 <DL> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
932 <DT><CODE>-brightness</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
933 <DD>Adjust <B>BRIGHTNESS</B> of video output. It's not equal to brightness |
6974 | 934 adjusting on monitor panel or on TV. It changes intensity of RGB components of |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
935 video signal from black to white screen.</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
936 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
937 <DT><CODE>-contrast</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
938 <DD>Adjust <B>CONTRAST</B> of video output. Works in similar manner as |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
939 brightness.</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
940 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
941 <DT><CODE>-saturation</CODE></DT> |
8177 | 942 <DD>Adjust <B>SATURATION</B> of video output. You can get grayscale |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
943 output with this option.</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
944 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
945 <DT><CODE>-hue</CODE></DT> |
8177 | 946 <DD>Adjust <B>HUE</B> of video signal. You can get colored negative |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
947 of image with this option.</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
948 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
949 <DT><CODE>-red_intensity</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
950 <DD>Adjust intensity of <B>RED</B> component of video signal.</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
951 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
952 <DT><CODE>-green_intensity</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
953 <DD>Adjust intensity of <B>GREEN</B> component of video signal.</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
954 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
955 <DT><CODE>-blue_intensity</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
956 <DD>Adjust intensity of <B>BLUE</B> component of video signal.</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
957 </DL> |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
958 |
6974 | 959 <P>Each parameter can accept values from <B>-1000</B> to <B>+1000</B>.<BR> |
960 Default value for each parameter is <B>0</B>.</P> | |
961 | |
962 <P><B>Note:</B> Not every driver provides support for each of those parameters. | |
6599 | 963 Currently only <B>radeon_vid.so</B> provides full support for video equalizing. |
6974 | 964 Other drivers only partly support these options.</P> |
965 | |
4496 | 966 <P><B>Examples:</B><BR> |
967 <CODE>mplayer -vo vesa:vidix -brightness -300 -contrast 200 | |
968 filename.avi</CODE><BR> | |
969 or<BR> | |
970 <CODE>mplayer -vo xvidix -red_intensity -50 -saturation 400 -hue 300 | |
6974 | 971 filename.vob</CODE></P> |
4496 | 972 |
2956
f6b51da0a50d
DOXized and applied Nick's radeon_vid patch. Nick, should I update
gabucino
parents:
2883
diff
changeset
|
973 |
8177 | 974 <H4><A NAME="directfb">2.3.1.2.13 DirectFB</A></H4> |
7192 | 975 |
8177 | 976 <P><I>"DirectFB is a graphics library which was designed with embedded systems in |
977 mind. It offers maximum hardware accelerated performance at a minimum of | |
978 resource usage and overhead."</I> - quoted from | |
979 <A HREF="http://www.directfb.org">http://www.directfb.org</A>.</P> | |
7192 | 980 |
8177 | 981 <P>I'll exclude DirectFB features from this section.</P> |
7192 | 982 |
8177 | 983 <P>Though MPlayer is not supported as a "video provider" in DirectFB, this |
984 output driver will enable video playback through DirectFB. It will - | |
985 of course - be accelerated, on my Matrox G400 DirectFB's speed was the | |
986 same as XVideo.</P> | |
4339 | 987 |
8177 | 988 <P>Always try to use the newest version of DirectFB. You can use DirectFB |
989 options on the command line, using the <CODE>-dfbopts</CODE> option. | |
990 Layer selection can be done by the subdevice method, e.g.: <CODE>-vo | |
991 directfb:2</CODE> (layer -1 is default: autodetect)</P> | |
4339 | 992 |
7367 | 993 |
8177 | 994 <H4><A NAME="dfbmga">2.3.1.2.14 DirectFB/Matrox (dfbmga)</A></H4> |
995 | |
996 <P>Please read the <A HREF=#directfb>main DirectFB section</A> for general | |
997 informations.</P> | |
998 | |
999 <P>This video output driver will enable CRTC2 (on the second head) on the | |
1000 Matrox G400 card, displaying video <B>independently</B> of the first head.</P> | |
1001 | |
1002 <P>Instructions on how to make it work can be found here: | |
1003 <A HREF="http://www.sci.fi/~syrjala/directfb/readme.txt">http://www.sci.fi/~syrjala/directfb/readme.txt</A></P> | |
1004 | |
1005 <P>Note: we haven't been able to make this work, but others did. Anyway, | |
1006 porting of the CRTC2 code to <B>mga_vid</B> is underway.</P> | |
1007 | |
1008 | |
1009 <H4><A NAME="mpegdec">2.3.1.3 MPEG decoders</A></H4> | |
1010 | |
1011 <H4><A NAME="dvb">2.3.1.3.1 DVB</A></H4> | |
6729 | 1012 |
7814 | 1013 <P>MPlayer supports cards with the Siemens DVB chipset from vendors like |
8177 | 1014 Siemens, Technotrend, Galaxis or Hauppauge. The latest DVB drivers are |
6960 | 1015 available from the <A HREF="http://www.linuxtv.org">Linux TV site</A>. If you |
1016 want to do software transcoding you should have at least a 1GHz CPU.</P> | |
6729 | 1017 |
1018 <P>Configure should detect your DVB card. If it did not, force detection with | |
1019 | |
1020 <PRE> | |
1021 ./configure --enable-dvb | |
1022 </PRE> | |
1023 | |
1024 <P>If you have ost headers at a non-standard path, set the path with</P> | |
1025 | |
1026 <PRE> | |
1027 ./configure --with-extraincdir=<DVB source directory>/ost/include | |
1028 </PRE> | |
1029 | |
1030 <P>Then compile and install as usual.</P> | |
1031 | |
7047 | 1032 <H4>USAGE</H4> |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
1033 |
6729 | 1034 <P>Hardware decoding (playing standard MPEG1/2 files) can be done with this |
6960 | 1035 command:</P> |
6729 | 1036 |
1037 <PRE> | |
1038 mplayer -ao mpegpes -vo mpegpes file.mpg|vob | |
1039 </PRE> | |
1040 | |
1041 <P>Software decoding or transcoding different formats to MPEG1 can be achieved | |
6960 | 1042 using a command like this:</P> |
6729 | 1043 |
1044 <PRE> | |
1045 mplayer -ao mpegpes -vo mpegpes -vop lavc yourfile.ext | |
1046 mplayer -ao mpegpes -vo mpegpes -vop fame,expand yourfile.ext | |
1047 </PRE> | |
1048 | |
1049 <P>Note that DVB cards only support heights 288 and 576 for PAL or 240 and 480 | |
6960 | 1050 for NTSC. You <B>must</B> rescale for other heights by adding |
1051 <CODE>scale=width:height</CODE> with the width and height you want to the | |
1052 <CODE>-vop</CODE> option. DVB cards accept various widths, like 720, 704, | |
1053 640, 512, 480, 352 etc and do hardware scaling in horizontal direction, so | |
1054 you do not need to scale horizontally in most cases. For a 512x384 (aspect | |
1055 4:3) DivX try:</P> | |
6729 | 1056 |
1057 <PRE> | |
1058 mplayer -ao mpegpes -vo mpegpes -vop lavc,scale=512:576 | |
1059 </PRE> | |
1060 | |
1061 <P>If you have a widescreen movie and you do not want to scale it to full height, | |
6960 | 1062 you can use the <CODE>expand=w:h</CODE> plugin to add black bands. To view a |
1063 640x384 DivX, try:</P> | |
6729 | 1064 |
1065 <PRE> | |
1066 mplayer -ao mpegpes -vo mpegpes -vop lavc,expand=640:576 file.avi | |
1067 </PRE> | |
1068 | |
1069 <P>If your CPU is too slow for a full size 720x576 DivX, try downscaling:</P> | |
1070 | |
1071 <PRE> | |
1072 mplayer -ao mpegpes -vo mpegpes -vop lavc,scale=352:576 file.avi | |
1073 </PRE> | |
1074 | |
1075 <P>If speed does not improve, try vertical downscaling, too:</P> | |
1076 | |
1077 <PRE> | |
1078 mplayer -ao mpegpes -vo mpegpes -vop lavc,scale=352:288 file.avi | |
1079 </PRE> | |
1080 | |
1081 <P>For OSD and subtitles use the expand feature of the OSD plugin. So, instead | |
6960 | 1082 of <CODE>expand=w:h</CODE> or <CODE>expand=w:h:x:y</CODE>, use |
1083 <CODE>expand=w:h:x:y:1</CODE> (the 5th parameter <CODE>:1</CODE> at the end | |
1084 will enable OSD rendering). You may want to move the image up a bit to get a | |
1085 bigger black zone for subtitles. You may also want to move subtitles up, if | |
7076
3275af5787e0
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, slightly
diego
parents:
7061
diff
changeset
|
1086 they are outside your TV screen, use the <CODE>-subpos <0-100></CODE> switch |
6960 | 1087 to adjust this (<CODE>-subpos 80</CODE> is a good choice).</P> |
6729 | 1088 |
1089 <P>In order to play non-25fps movies on a PAL TV or with a slow CPU, add the | |
6960 | 1090 <CODE>-framedrop</CODE> option.</P> |
6729 | 1091 |
1092 <P>To keep the aspect ratio of DivX files and get the optimal scaling parameters | |
6960 | 1093 (hardware horizontal scaling and software vertical scaling while keeping the |
1094 right aspect ratio), use the new dvbscale plugin:</P> | |
6729 | 1095 |
1096 <PRE> | |
1097 for 3:4 TV: -vop lavc,expand=-1:576:-1:-1:1,scale=-1:0,dvbscale | |
1098 for 16:9 TV: -vop lavc,expand=-1:576:-1:-1:1,scale=-1:0,dvbscale=1024 | |
1099 </PRE> | |
1100 | |
7047 | 1101 <H4>FUTURE</H4> |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
1102 |
6729 | 1103 <P>If you have questions or want to hear feature announcements and take part in |
6960 | 1104 discussions on this subject, join our |
1105 <A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-dvb">MPlayer-DVB</A> | |
1106 mailing list. Please remember that the list language is English.</P> | |
6729 | 1107 |
1108 <P>In the future you may expect the ability to display OSD and subtitles using | |
6960 | 1109 the native OSD feature of DVB cards, as well as more fluent playback of |
1110 non-25fps movies and realtime transcoding between MPEG2 and MPEG4 (partial | |
1111 decompression).</P> | |
6729 | 1112 |
4496 | 1113 |
8177 | 1114 <H4><A NAME="dxr2">2.3.1.3.2 DXR2</A></H4> |
1115 | |
1116 <P>TODO: somebody please fill this section with information.</P> | |
1117 | |
1118 | |
1119 <H4><A NAME="dxr3">2.3.1.3.3 DXR3/Hollywood+</A></H4> | |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
1120 |
7814 | 1121 <P>MPlayer supports hardware accelerated playback with the Creative DXR3 |
7270
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1122 and Sigma Designs Hollywood Plus cards. These cards both use the em8300 MPEG |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1123 decoder chip from Sigma Designs.</P> |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
1124 |
6960 | 1125 <P>First of all you will need properly installed DXR3/H+ drivers, version |
1126 0.12.0 or later. You can find the drivers and installation instructions at | |
1127 the <A HREF="http://dxr3.sourceforge.net/">DXR3 & Hollywood Plus for | |
1128 Linux</A> site. Configure should detect your card automatically, compilation | |
7270
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1129 should go without problems.</P> |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
1130 |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1131 <H4>Usage:</H4> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1132 <DL> |
7951
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1133 <DT><CODE>-vo dxr3:prebuf:sync:<device></CODE></DT> |
8088 | 1134 <DD><CODE>overlay</CODE> activates the overlay instead of TVOut. It requires |
1135 that you have a properly configured overlay setup to work right. The easiest | |
1136 way to configure the overlay is to first run autocal. Then run mplayer with | |
1137 dxr3 output and without overlay turned on, run dxr3view. In dxr3view you can | |
1138 tweak the overlay settings and see the effects in realtime, perhaps this | |
1139 feature will be supported by the MPlayer GUI in the future. When overlay is | |
1140 properly set up you will no longer need to use dxr3view.<BR> | |
1141 <CODE>prebuf</CODE> turns on prebuffering. Prebuffering is a feature | |
7270
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1142 of the em8300 chip that enables it to hold more than one frame of video at |
7951
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1143 a time. This means that when you are running with prebuffering |
7814 | 1144 MPlayer will try to keep the video buffer filled with data at all |
1145 times. If you are on a slow machine MPlayer will probably use close | |
7270
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1146 to, or precisely 100% of CPU. This is especially common if you play pure MPEG |
7814 | 1147 streams (like DVDs, SVCDs a.s.o.) since MPlayer will not have to |
7270
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1148 reencode it to MPEG it will fill the buffer very fast.<BR> |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1149 With prebuffering video playback is <B>much</B> less sensitive to other |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1150 programs hogging the CPU, it will not drop frames unless applications hog |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1151 the CPU for a long time.<BR> |
7951
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1152 When running without prebuffering the em8300 is much more sensitive to CPU |
7969 | 1153 load, so it is highly suggested that you turn on MPlayer's |
7951
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1154 <CODE>-framedrop</CODE> option to avoid further loss of sync.<BR> |
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1155 <CODE>sync</CODE> will turn on the new sync-engine. This is currently an |
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1156 experimental feature. With the sync feature turned on the em8300's internal |
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1157 clock will be monitored at all times, if it starts to deviate from MPlayer's |
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1158 clock it will be reset causing the em8300 to drop any frames that are lagging |
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1159 behind.<BR> |
6974 | 1160 <CODE><device></CODE> = device number to use if you have more than one |
1161 em8300 card. | |
1162 <BR> | |
8021
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1163 Any of these options may be left out.<BR> |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1164 <CODE>:prebuf:sync</CODE> seems to work great when playing DivX etc, even on |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1165 AMD's CPUs. But people have reported problems using these options when playing |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1166 normal MPEGs. You might want to try running without any options first, if you |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1167 have sync problems give <CODE>:sync</CODE> a try.</DD> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1168 |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1169 <DT><CODE>-ao oss:/dev/em8300_ma-X</CODE></DT> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1170 <DD>For audio output, where <CODE>X</CODE> is the device number |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1171 (0 if one card).</DD> |
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1172 |
7270
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1173 <DT><CODE>-aop list=resample:fout=xxxxx</CODE></DT> |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1174 <DD>The em8300 cannot play back samplerates lower than 44100Hz. If the sample |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1175 rate is below 44100Hz select either 44100Hz or 48000Hz depending on which |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1176 one matches closest. I.e. if the movie uses 22050Hz use 44100Hz as |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1177 44100 / 2 = 22050, if it is 24000Hz use 48000Hz as 48000 / 2 = 24000 and so |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1178 on. This does not work with digital audio output (<CODE>-ac hwac3</CODE>).</DD> |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1179 |
7270
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1180 <DT><CODE>-vop lavc/fame</CODE></DT> |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1181 <DD>To watch non-MPEG content on the em8300 (i.e. DivX or RealVideo) you have |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1182 to specify an MPEG1 video filter such as libavcodec (lavc) or libfame |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1183 (fame). At the moment lavc is both faster and gives better image quality, it |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1184 is suggested that you use that unless you have problems with it. See the man |
7951
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1185 page for further info about <CODE>-vop lavc/fame</CODE>.<BR> |
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1186 Using lavc is highly recommended. Currently there is no way of setting the |
32ae0a9d06aa
Updated the DXR3 section to reflect command changes, prebuf replaced
mswitch
parents:
7937
diff
changeset
|
1187 fps of the em8300 which means that it is fixed to 29.97fps. Because of this |
8021
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1188 it is highly recommended that you use <CODE>-vop lavc=<quality>:25</CODE>, |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1189 especially if you are using prebuffering. Then why 25 and not 29.97? Well, |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1190 the thing is that when you use 29.97 the picture becomes a bit jumpy. The |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1191 reason for this is unknown to us. If you set it to somewhere between 25 and |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1192 27 the picture becomes stable. For now all we can do is accept this for a |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1193 fact.</DD> |
8177 | 1194 |
1195 <DT><CODE>-vop lavc,expand=-1:-1:-1:-1:1</CODE></DT> | |
1196 <DD>Altough the DXR3 driver can put some OSD onto the MPEG1/2/4 video, | |
1197 it has much lower quality than MPlayer's traditional OSD, and has several | |
1198 refresh problems as well. The command line above will firstly convert the | |
1199 input video to MPEG4 (this is mandatory, sorry), then apply an expand | |
1200 filter which won't expand anything (-1: default), but apply the normal OSD | |
1201 onto the picture (that's what the "1" at the end does).</DD> | |
1202 | |
7270
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1203 <DT><CODE>-ac hwac3</CODE></DT> |
60a3b83b73bf
DXR3 docs updated. Patch by David Holm <david@realityrift.com>, further
diego
parents:
7192
diff
changeset
|
1204 <DD>The em8300 supports playing back AC3 audio (surround sound) through the |
7640 | 1205 digital audio output of the card. See the <CODE>-ao oss</CODE> option |
1206 above, it must be used to specify the DXR3's output instead of | |
1207 a soundcard. Also read <A HREF="codecs.html#hardware_ac3">hardware AC3</A> | |
1208 section for further information on AC3.</DD> | |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1209 </DL> |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
1210 |
7047 | 1211 <H4>MPEG1, MPEG2, VCD and DVD Notes</H4> |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
1212 |
6960 | 1213 <P>In some instances, subtitles may not appear properly in sync with the A/V |
8021
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1214 stream when using hardware decoding. This is a known bug. The em8300 will |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1215 also improperly handle subtitles that are too big, and may hang for a second |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1216 or two. At this time, the only workaround is to use <CODE>-vop lavc</CODE> |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1217 when viewing DVDs with subtitles. When running with <CODE>-vop lavc</CODE> |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1218 MPlayer will reencode video to MPEG (even if it already is MPEG). This means |
66c0515d234f
Cleaned up the DXR3 section (lots of old stuff which was no longer
mswitch
parents:
7969
diff
changeset
|
1219 that it will need more CPU power, and you might loose some picture quality.</P> |
6732
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
1220 |
8460a77203de
DXR3 moved to video.html. TOC updated, added <CODE> where appropiate.
diego
parents:
6729
diff
changeset
|
1221 |
8177 | 1222 <H4><A NAME="other">2.3.1.4 Other visualization hardware</A></H4> |
1223 | |
1224 <H4><A NAME="zr">2.3.1.4.1 Zr</A></H4> | |
1225 | |
1226 <P>This is a display-driver (<CODE>-vo zr</CODE>) for a number of MJPEG | |
1227 capture/playback cards (tested for DC10+ and Buz, and it should work for the | |
1228 LML33 and the original DC10). The driver works by encoding the frame to jpeg | |
1229 and then sending it to the card. For the jpeg encoding <B>libavcodec</B> is | |
1230 used, and required. With the special <I>cinerama</I> mode, you can watch | |
1231 movies in true wide screen provided that you have two beamers and two | |
1232 MJPEG cards. Depending on resolution and quality settings, this driver | |
1233 may require a lot of CPU power, remember to specify <CODE>-framedrop</CODE> | |
1234 if your machine is too slow. Note: My AMD K6-2 350MHz is (with <CODE> | |
1235 -framedrop</CODE>) quite adequate for watching VCD sized material and | |
1236 downscaled movies. | |
1237 | |
1238 <P>This driver talks to the kernel driver available at | |
1239 <A HREF="http://mjpeg.sourceforge.net">http://mjpeg.sourceforge.net</A>, so | |
1240 you must get it working first. The presence of an MJPEG card is autodetected | |
1241 by the configure script, if autodetection fails, force detection with | |
1242 | |
1243 <PRE> | |
1244 ./configure --enable-zr | |
1245 </PRE> | |
1246 | |
1247 <P>The output can be controlled by several options, a long description of the | |
1248 options can be found in the man page, a short list of options can be | |
1249 viewed by running | |
1250 | |
1251 <PRE> | |
1252 mplayer -zrhelp | |
1253 </PRE> | |
1254 | |
1255 <P>Things like scaling and the OSD (on screen display) are not handled by | |
1256 this driver but can be done using the video filters. For example, | |
1257 suppose that you have a movie with a resolution of <CODE>512x272</CODE> and | |
1258 you want to view it fullscreen on your DC10+. There are three main | |
1259 possibilities, you may scale the movie to a width of <CODE>768</CODE>, | |
1260 <CODE>384</CODE> or <CODE>192</CODE>. For performance and quality reasons, | |
1261 I would choose to scale the movie to <CODE>384x204</CODE> using the fast | |
1262 bilinear software scaler. The commandline is | |
1263 | |
1264 <PRE> | |
1265 mplayer -vo zr -sws 0 -vop scale=384:204 movie.avi | |
1266 </PRE> | |
1267 | |
1268 <P>Cropping can be done by the <CODE>crop</CODE> filter and by | |
1269 this driver itself. Suppose that a movie is too wide for display on your | |
1270 Buz and that you want to use <CODE>-zrcrop</CODE> to make the movie less | |
1271 wide, the you would issue the following command | |
1272 | |
1273 <PRE> | |
1274 mplayer -vo zr -zrcrop 720x320+80+0 benhur.avi | |
1275 </PRE> | |
1276 | |
1277 if you want to use the <CODE>crop</CODE> filter, you would do | |
1278 | |
1279 <PRE> | |
1280 mplayer -vo zr -vop crop=720:320:80:0 benhur.avi | |
1281 </PRE> | |
1282 | |
1283 <P>Extra occurances of <CODE>-zrcrop</CODE> invoke <I>cinerama</I> mode, i.e. | |
1284 you can distribute the movie over several TV's or beamers to create a larger | |
1285 screen. Suppose you have two beamers. The left one is connected to your Buz | |
1286 at <CODE>/dev/video1</CODE> and the right one is connected to your DC10+ at | |
1287 <CODE>/dev/video0</CODE>. The movie has a resolution of <CODE>704x288</CODE>. | |
1288 Suppose also that you want the right beamer in black and white and that | |
1289 the right beamer should have jpeg frames at quality <CODE>10</CODE>, | |
1290 then you would issue the following command | |
1291 | |
1292 <PRE> | |
1293 mplayer -vo zr -zrdev /dev/video0 -zrcrop 352x288+352+0 -zrxdoff 0 -zrbw \ | |
1294 -zrcrop 352x288+0+0 -zrdev /dev/video1 -zrquality 10 movie.avi | |
1295 </PRE> | |
1296 | |
1297 <P>You see that the options appearing before the second <CODE>-zrcrop</CODE> | |
1298 only apply to the DC10+ and that the options after the second | |
1299 <CODE>-zrcrop</CODE> apply to the Buz. The maximum number of MJPEG cards | |
1300 participating in <I>cinerama</I> is four, so you can buid a <CODE>2x2</CODE> | |
1301 vidiwall.</P> | |
1302 | |
1303 <P>Finally an important remark: Do not start or stop XawTV on the playback | |
1304 device during playback, it will crash your computer. It is, however, fine to | |
1305 <B>FIRST</B> start XawTV, <B>THEN</B> start MPlayer, wait for | |
1306 MPlayer to finish and <B>THEN</B> stop XawTV.</P> | |
1612 | 1307 |
6974 | 1308 |
8177 | 1309 <H4><A NAME="blinken">2.3.1.4.2 Blinkenlights</A></H4> |
1310 | |
1311 <P>This driver is capable of playback using the Blinkenlights UPD protocol. | |
1312 If you don't know what Blinkenlights is, you don't need this driver.</P> | |
1313 | |
1314 | |
1315 <H4><A NAME="tv-out">2.3.1.5 TV-out support</A></H4> | |
1316 | |
1317 | |
1318 <H4><A NAME="tv-out_matrox">2.3.1.5.1 Matrox G400 cards</A></H4> | |
1612 | 1319 |
6960 | 1320 <P>Under Linux you have 2 methods to get G400 TV out working:</P> |
5116 | 1321 |
7377 | 1322 <P><B>IMPORTANT:</B> for Matrox G450/G550 TV-out instructions, please see the |
1323 next section!</P> | |
2309 | 1324 |
2486 | 1325 <UL> |
1326 <LI><B>XFree86</B>: using the driver and the HAL module, available from | |
1327 <A HREF="http://www.matrox.com">Matrox's site</A>. This will give you X on | |
1328 the TV.<BR> <B>This method doesn't give you accelerated playback</B> as | |
1329 under Windoze! The second head has only YUV framebuffer, the <I>BES</I> | |
1330 (Back End Scaler, the YUV scaler on G200/G400/G450/G550 cards) doesn't work | |
7061 | 1331 on it! The Windows driver somehow works around this, probably by using the |
2486 | 1332 3D engine to zoom, and the YUV framebuffer to display the zoomed |
2848
33c32f3d9f1f
many small updates, fixes (some/more to be completed soon)
gabucino
parents:
2747
diff
changeset
|
1333 image. If you really want to use X, use the <CODE>-vo x11 -fs -zoom</CODE> |
6599 | 1334 options, but it will be <B>SLOW</B>, and has <B>Macrovision</B> copy protection |
4177 | 1335 enabled (you can "workaround" Macrovision using |
1336 <A HREF="http://avifile.sourceforge.net/mgamacro.pl">this</A> perl | |
1337 script.</LI> | |
2486 | 1338 <LI><B>Framebuffer</B>: using the <B>matroxfb modules</B> in the 2.4 kernels. |
1339 2.2 kernels don't have the TVout feature in them, thus unusable for this. | |
3030 | 1340 You have to enable ALL matroxfb-specific feature during compilation (except |
5713 | 1341 MultiHead), and compile them into <B>modules</B>! You'll also need I2C |
1342 enabled. | |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1343 <OL> |
2486 | 1344 <LI> |
1345 Enter <CODE>TVout/matroxset</CODE> and type <CODE>make</CODE>. Install | |
1346 <CODE>matroxset</CODE> into somewhere in your PATH.</LI> | |
1347 <LI> | |
1348 If you don't have <CODE>fbset</CODE> installed, enter | |
1349 <CODE>TVout/fbset</CODE> and type <CODE>make</CODE>. Install | |
1350 <CODE>fbset</CODE> into somewhere in your PATH.</LI> | |
1351 <LI> | |
7814 | 1352 Then enter into the <CODE>TVout/</CODE> directory in the MPlayer |
2486 | 1353 source, and execute <CODE>./modules</CODE> as root. Your text-mode console |
1354 will enter into framebuffer mode (no way back!).</LI> | |
7454 | 1355 <LI>Next, EDIT and run the <CODE>./matroxtv</CODE> script. This will present you |
2486 | 1356 to a very simple menu. Press <B>2</B> and <B>ENTER</B>. Now you should |
7454 | 1357 have the same picture on your monitor, and TV. If |
1358 the TV (PAL by default) picture has some weird stripes on it, the script wasn't able to | |
1359 set the resolution correctly (to 640x512 by default). Try other | |
1360 resolutions from the menu and/or experiment with fbset.</LI> | |
7099
0b70f3dc34eb
Applied patch by Andras Mohari <mayday@varoshaza.nagyatad.hu>, with some
diego
parents:
7076
diff
changeset
|
1361 </OL> |
2486 | 1362 |
6974 | 1363 <P>Yoh. Next task is to make the cursor on tty1 (or whatever) to disappear, |
2486 | 1364 and turn off screen blanking. Execute the following commands:</P> |
1365 | |
6974 | 1366 <P><CODE>echo -e '\033[?25l'</CODE> or <CODE>setterm -cursor off<BR> |
1367 setterm -blank 0</CODE></P> | |
2486 | 1368 |
6974 | 1369 <P>You possibly want to put the above into a script, and also clear |
6960 | 1370 the screen.. To turn the cursor back:<BR><CODE>echo -e '\033[?25h'</CODE> |
6974 | 1371 or <CODE>setterm -cursor on</CODE></P> |
2486 | 1372 |
1373 <P>Yeah kewl. Start movie playing with <CODE>mplayer -vo mga -fs -screenw 640 | |
1374 -screenh 512 <filename></CODE><BR> | |
6960 | 1375 (if you use X, now change to matroxfb with for example CTRL-ALT-F1!)<BR> |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
1376 Change 640x512 if you set the resolution to other.<BR> |
6974 | 1377 <B>Enjoy the ultra-fast ultra-featured Matrox TV output (better than Xv)!</B></P> |
2486 | 1378 </LI> |
1379 </UL> | |
2309 | 1380 |
8177 | 1381 <H4>Building a Matrox TV-out cable</H4> |
2309 | 1382 |
8177 | 1383 <P>This information was contributed by <B>Rácz Balázs</B>. Of course |
1384 no one takes any responsibility, nor guarantee for any damage caused | |
1385 by this documentation.</P> | |
1386 | |
1387 <P>The CRTC2 connector's fourth pin is the composite video signal. The ground | |
1388 are the sixth, seventh and eighth pins.</P> | |
1389 | |
1390 | |
1391 <H4><A NAME="tv-out_matrox_g450">2.3.1.5.2 Matrox G450/G550 cards</A></H4> | |
7377 | 1392 |
1393 <P>TV output support for these cards has only been recently introduced, and is | |
1394 not yet in the mainstream kernel. Currently the <B>mga_vid</B> module | |
1395 can't be used AFAIK, because the G450/G550 driver works only in one | |
1396 configuration: the first CRTC chip (with much more features) on the first | |
1397 display (on monitor), and the second CRTC (no <B>BES</B> - for explanation | |
1398 on BES, please see the G400 section above) on TV. So you can only use | |
7969 | 1399 MPlayer's <I>fbdev</I> output driver at the present.</P> |
7377 | 1400 |
1401 <P>The first CRTC can't be routed to the second head currently. | |
1402 The author of the kernel matroxfb driver - Petr Vandrovec - will maybe make | |
1403 support for this, by displaying the first CRTC's output onto both of the | |
1404 heads at once, as currently recommended for G400, see the section above.</P> | |
1405 | |
1406 <P>The necessary kernel patch and the detailed howto is downloadable from | |
7937 | 1407 <A HREF="http://www3.sympatico.ca/dan.eriksen/matrox_tvout/">http://www3.sympatico.ca/dan.eriksen/matrox_tvout/</A></P> |
7377 | 1408 |
1409 | |
8177 | 1410 <H4><A NAME="tv-out_ati">2.3.1.5.3 ATI cards</A></H4> |
2206 | 1411 |
7047 | 1412 <H5>PREAMBLE</H5> |
1413 | |
1414 <P>Currently ATI doesn't want to support any of its TV-out chips under Linux, | |
6960 | 1415 because of their licensed Macrovision technology.</P> |
6583 | 1416 |
7047 | 1417 <H5>ATI CARDS TV-OUT STATUS ON LINUX</H5> |
2206 | 1418 |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
1419 <UL> |
6960 | 1420 <LI><B>ATI Mach64</B>: supported by |
1421 <A HREF="http://gatos.sf.net">gatos</A>.</LI> | |
1422 <LI><B>ASIC Radeon VIVO</B>: supported by | |
1423 <A HREF="http://gatos.sf.net">gatos</A>.</LI> | |
7814 | 1424 <LI><B>Radeon</B> and <B>Rage128</B>: supported by MPlayer! |
6998
83a386e88f9e
Applied patch by Andras Mohari <mayday at varoshaza . nagyatad . hu>
diego
parents:
6981
diff
changeset
|
1425 Check <a href="#vesa">VESA driver</a> and <A HREF="#vidix">VIDIX</A> |
6960 | 1426 sections.</LI> |
6435
d0d74f9d8d4a
Background now set by CSS, added doctype and charset.
diego
parents:
6393
diff
changeset
|
1427 </UL> |
2206 | 1428 |
6974 | 1429 <P>On other cards, just use the <a href="#vesa">VESA driver</a>, without |
1430 VIDIX. Powerful CPU is needed, though.</P> | |
2206 | 1431 |
6583 | 1432 <P>Only thing you need to do - <B>have TV connector plugged in before |
1433 booting your PC</B> since video BIOS initializes itself only once during | |
6974 | 1434 POST procedure.</P> |
2206 | 1435 |
2472
487f5bbb38ae
link to tomi ollila's voodoo3 tvout text. if he has interest to integrate
gabucino
parents:
2471
diff
changeset
|
1436 |
8177 | 1437 <H4><A NAME="tv-out_voodoo">2.3.1.5.4 Voodoo 3</A></H4> |
2472
487f5bbb38ae
link to tomi ollila's voodoo3 tvout text. if he has interest to integrate
gabucino
parents:
2471
diff
changeset
|
1438 |
6974 | 1439 <P>Check <A HREF="http://www.iki.fi/too/tvout-voodoo3-3000-xfree">this URL</A>.</P> |
2472
487f5bbb38ae
link to tomi ollila's voodoo3 tvout text. if he has interest to integrate
gabucino
parents:
2471
diff
changeset
|
1440 |
1612 | 1441 </BODY> |
1442 </HTML> |