mirror of https://github.com/mpv-player/mpv
Added (sigh, reHTMLized;)) Nick's VIDIX patch
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4200 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
576095dfb9
commit
a2402dd014
|
@ -113,6 +113,7 @@
|
|||
<LI><A HREF="video.html#2.3.1.12">2.3.1.12 VESA - megjelenítés a VESA BIOS segítségével</A></LI>
|
||||
<LI><A HREF="video.html#2.3.1.13">2.3.1.13 X11</A></LI>
|
||||
<LI><A HREF="video.html#2.3.1.14">2.3.1.14 Rage128 (Pro) és Radeon video overlay (radeon_vid)</A></LI>
|
||||
<LI><A HREF="video.html#2.3.1.15">2.3.1.15 Vidix</A></LI>
|
||||
<LI><A HREF="video.html#2.3.1.A">2.3.1.A TV kimenet</A></LI>
|
||||
<UL>
|
||||
<LI><A HREF="video.html#2.3.1.A.1">2.3.1.A.1 Matrox</A></LI>
|
||||
|
|
|
@ -49,6 +49,13 @@
|
|||
<TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
||||
size=2><a href=#2.3.1.12>vesa</a></TD><TD></TD><TD><FONT face="Verdana, Arial
|
||||
Helvetica, sans-serif" size=2>Kimenet VESA BIOS-ok segítségével.</TD><TR>
|
||||
<TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
||||
size=2><a href=#2.3.1.15>vidix</a></TD><TD></TD><TD><FONT face="Verdana, Arial
|
||||
Helvetica, sans-serif" size=2>VIDeo Interface for *niX (ez nem egy valós
|
||||
meghajtó, hanem a VIDIX leírása)</TD><TR>
|
||||
<TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
||||
size=2><a href=#2.3.1.15>xvidix</a></TD><TD></TD><TD><FONT face="Verdana, Arial
|
||||
Helvetica, sans-serif" size=2>VIDIX, X ablakban</TD><TR>
|
||||
<TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
||||
size=2>directfb</a></TD><TD></TD><TD><FONT face="Verdana, Arial
|
||||
Helvetica, sans-serif" size=2>Direct Framebuffer Device</TD><TR>
|
||||
|
@ -867,6 +874,102 @@ egyid
|
|||
küldj patchet.</P>
|
||||
|
||||
|
||||
<P><B><A NAME=2.3.1.15>2.3.1.15. VIDIX</A></B></P>
|
||||
|
||||
<P><B><I>MI IS AZ A VIDIX ?</I></B></P>
|
||||
|
||||
<P>A VIDIX a <B>VID</B>eo <B>I</B>nterface for *ni<B>X</B> szavak rövidítése.
|
||||
A VIDIX tervezésekor a cél egy - néhány userspace meghajtót egységbe fogó -
|
||||
interface létrehozása volt, ezáltal - az X11-től eltérően - mindenhol
|
||||
elérhetővé tenni a DGA-t, ahol ez lehetséges. Remélem hogy ezek a meghajtók
|
||||
legalább annyira portolhatóak lesznek mint az X11 (<B>és nem csak
|
||||
*nix-okon</B>).<BR>
|
||||
Amiből áll:
|
||||
<LI>Portolható utódja az mga_vid technológiának, de userspace-ben helyezkedik
|
||||
el.</LI>
|
||||
<LI>Az X11-től eltérően mindenhol elérhető vele a DGA, ahol csak
|
||||
lehetséges</LI>
|
||||
<LI>A v4l-től eltérően interface-t nyújt a videok lejátszására is</LI>
|
||||
<LI>Más Linuxos meghajtóktól eltérően matematikai libraryt használ</LI>
|
||||
</P>
|
||||
|
||||
<P>És ilyen szép nagy betűkkel :<BR>
|
||||
<B>A VIDIX KÖZVETLEN HOZZÁFÉRÉST NYÚJT A KÁRTYA BES YUV MEMÓRIÁJÁHOZ.</B>
|
||||
</P>
|
||||
|
||||
<P>Ez az interface a meglévő meghajtókat (amik mga_vid, mga_yuv, radeon_vid
|
||||
neveken ismertek) egy fix keretbe foglalja. Továbbá magas szintű interface-t
|
||||
nyújt a BES (BackEnd Scaler) vagy OV (Video Overlay) chip-ek eléréséhez.
|
||||
Nincs benne viszont alacsonyszintű interface a grafikus szerverekhez
|
||||
hasonlóan (nem akarok az X11-gyel versengeni). A jövőben el tudok képzelni
|
||||
valami olyasmit mint egy mini-X (nem összekeverendő a Minix-szel ;), ha
|
||||
elegendően jelentkeznek.
|
||||
</P>
|
||||
|
||||
<P><B><I>HASZNÁLAT</I></B></P>
|
||||
|
||||
<P>
|
||||
<LI>Használható például közvetlenül: <CODE>-vo xvidix</CODE><BR>
|
||||
Ez a meghajtó csak X alatt használható, es egyfajta frontend a VIDIX
|
||||
technológiához.</LI>
|
||||
<LI>A VIDIX használható alegységként is, más ismert kimeneteken keresztül,
|
||||
például :<BR>
|
||||
<CODE>-vo vesa:vidix</CODE> vagy <CODE>-vo fbdev:vidix</CODE></LI>
|
||||
A <B>VIDIX</B> számára mindez teljesen lényegtelen.
|
||||
</P>
|
||||
|
||||
<P><B><I>SZÜKSÉGES</I></B></P>
|
||||
|
||||
<P>
|
||||
<LI>Hogy a videokártya grafikus módban legyen (bár megnéztem szöveges
|
||||
módban is.. hát elég rettenetes ;) arra AAlib való).<BR>
|
||||
<I>Megjegyzés: ez kipróbálható, csak a vo_vesa meghajtóban kell
|
||||
kikommentezni a grafikus módba váltó sort.</I></LI>
|
||||
<LI>Az <B>MPlayer</B> választott video kimeneti meghajtójának tudnia kell
|
||||
a használt képernyő méreteiről, és ezt el is kell mondania a VIDIX
|
||||
almeghajtónak.</LI>
|
||||
Remélem hogy hamarosan az összes meghajtó el fogja fogadni a <CODE>:vidix</CODE>
|
||||
almeghajtót.
|
||||
</P>
|
||||
|
||||
<P><B><I>VARIÁCIÓK A HASZNÁLATRA</I></B></P>
|
||||
|
||||
<P>Amikor a VIDIX-et almeghajtóként használod, a tulajdonképpeni konfigurálást
|
||||
maga a "fő" meghajtó végzi (rövidebben a vo_server). Így használhatod
|
||||
azokat az opciókat is, amiket VIDIX nélkül is használhattál. Plusz,
|
||||
értelmezi a <CODE>-double</CODE> opciót (a használata ajánlott, legalábbis
|
||||
az ATI kártyákhoz).<BR>
|
||||
A <CODE>-vo xvidix</CODE> opció jelenleg a következő opciókat ismeri fel :
|
||||
<CODE>-fs -zoom -x -y</CODE>.<BR>
|
||||
</P>
|
||||
|
||||
<P>Továbbá, lehetséges átugrani az autodetektálást, a kívánt VIDIX
|
||||
meghajtó harmadik opcióként történő megadásával :<BR>
|
||||
<BR>
|
||||
<code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double
|
||||
file.avi</code><BR>
|
||||
vagy<BR>
|
||||
<code>mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp
|
||||
32 file.avi</code><BR>
|
||||
<BR>
|
||||
Viszont ez elég veszélyes, mivel ilyenkor mindenképp a megadott meghajtó
|
||||
lesz betöltve, és előre nem látható következményekhez vezethet, akár
|
||||
lefagyáshoz is. A helyes módszer az, amikor a VIDIX autodetektál.
|
||||
</P>
|
||||
|
||||
<P>
|
||||
A VIDIX nagyon új technológia, és nagyon valószínű hogy a Te rendszereden
|
||||
(számunkra ismeretlen OS, stb) nem fog működni. Ilyenkor az egyetlen
|
||||
lehetőség, ha átportolod (főleg a libdha-t). Nagyon valószínű hogy a VIDIX
|
||||
minden olyan rendszeren működőképes, ahol az X11.</P>
|
||||
|
||||
<P>És egy utolsó figyelmezetetés: sajnos/szerencsére a VIDIX <B>CSAK ROOT</B>
|
||||
jogosultsággal elérhető, mivel közvetlen hardveres hozzáférésre van
|
||||
szükség. A minimum, hogy a <B>suid</B> bitet bebillented az <B>MPlayer</B>
|
||||
binárison.
|
||||
</P>
|
||||
|
||||
|
||||
<P><B><A NAME=2.3.1.A>2.3.1.A. TV kimenet</A></B></P>
|
||||
|
||||
<P><B><A NAME=2.3.1.A.1>2.3.1.A.1. Matrox kártyák</A></B></P>
|
||||
|
@ -976,8 +1079,8 @@ A:Egy m
|
|||
a másolásvédelmet a chipjeiken. Ígyhát nincs esélyünk TV kimenetre.</P>
|
||||
|
||||
<P>Az ATI TV kimenetek jelenlegi támogatottsága :
|
||||
<LI><b>ATI Mach64</b> : <i>ImpacTV</i> van rajta, amit a <A HREF="http://www.linuxvideo.org/gatos">gatos</A> támogat.
|
||||
<LI><b>ASIC Radeon VIVO</b> : <i>Rage Theatre</i>, ami szintén támogatott a <A HREF="http://www.linuxvideo.org/gatos">gatos</A> által.
|
||||
<LI><b>ATI Mach64</b> : <i>ImpacTV</i> van rajta, amit a <A HREF="http://gatos.sourceforge.net">gatos</A> támogat.
|
||||
<LI><b>ASIC Radeon VIVO</b> : <i>Rage Theatre</i>, ami szintén támogatott a <A HREF="http://gatos.sourceforge.net">gatos</A> által.
|
||||
<LI><b>Radeon VE</b> és <b>Rage PRO LT</b> : <i>ImpacTV2+</i> ami jelenleg nem támogatott Linux alatt.
|
||||
Viszont <B>MPlayer</B>-rel teljeskörű <B>hardveres gyorsítást</B> és
|
||||
<B>TV kimenetet</B> kapsz Radeonokhoz ! Lásd a <a href=#2.3.1.12>VESA meghajtó</a> és
|
||||
|
|
|
@ -113,6 +113,7 @@
|
|||
<LI><A HREF="video.html#2.3.1.12">2.3.1.12 VESA - output to VESA BIOS</A></LI>
|
||||
<LI><A HREF="video.html#2.3.1.13">2.3.1.13 X11</A></LI>
|
||||
<LI><A HREF="video.html#2.3.1.14">2.3.1.14 Rage128 / Radeon video overlay</A></LI>
|
||||
<LI><A HREF="video.html#2.3.1.15">2.3.1.15 Vidix</A></LI>
|
||||
<LI><A HREF="video.html#2.3.1.A">2.3.1.A TVout</A></LI>
|
||||
<UL>
|
||||
<LI><A HREF="video.html#2.3.1.A.1">2.3.1.A.1 Matrox</A></LI>
|
||||
|
|
113
DOCS/video.html
113
DOCS/video.html
|
@ -50,6 +50,13 @@
|
|||
<TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
||||
size=2><a href=#2.3.1.12>vesa</a></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
||||
Helvetica, sans-serif" size=2>Output to VESA BIOS.</TD><TR>
|
||||
<TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
||||
size=2><a href=#2.3.1.15>vidix</a></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
||||
Helvetica, sans-serif" size=2>VIDeo Interface for *niX (this entry is not a
|
||||
real driver, but an explanation of VIDIX)</TD><TR>
|
||||
<TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
||||
size=2><a href=#2.3.1.15>xvidix</a></TD><TD></TD><TD><FONT face="Verdana, Arial,
|
||||
Helvetica, sans-serif" size=2>VIDIX in X window</TD><TR>
|
||||
<TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
|
||||
size=2>directfb</TD><TD></TD><TD><FONT face="Verdana, Arial,
|
||||
Helvetica, sans-serif" size=2>Direct Framebuffer Device</TD><TR>
|
||||
|
@ -883,6 +890,108 @@ it only from textmode console.</P>
|
|||
to improve something then simply send me your patches.
|
||||
</P>
|
||||
|
||||
<P><B><A NAME=2.3.1.15>2.3.1.15. VIDIX</A></B></P>
|
||||
|
||||
<P><B><I>WHAT IS VIDIX</I></B></P>
|
||||
|
||||
<P>VIDIX is the abbreviation for <b>VID</b>eo <b>I</b>nterface for
|
||||
*ni<b>X</b>.<BR>
|
||||
VIDIX was designed and introduced as an interface for fast user-space drivers
|
||||
providing <b>DGA</b> everywhere where it's possible (<b>unlike X11</b>). I
|
||||
hope that these drivers will be as portable as X11 (<b>not only on
|
||||
*nix</b>).<BR>
|
||||
What is it:
|
||||
<LI>It's a portable successor of mga_vid technology, but it's located in
|
||||
user-space.</LI>
|
||||
<LI>Unlike X11 it provides DGA everywhere it's possible</LI>
|
||||
<LI>Unlike v4l it provides interface for video playback</LI>
|
||||
<LI>Unlike linux's drivers it uses mathematics library</LI>
|
||||
</P>
|
||||
|
||||
<P>I can tell you in bold capital letters :<BR>
|
||||
<b>VIDIX PROVIDES DIRECT GRAPHICS ACCESS TO BES YUV MEMORY.</b>
|
||||
</P>
|
||||
|
||||
<P><i>Well (it's in my todo) - implement DGA to MPEG2 decoder.</i></P>
|
||||
|
||||
<P>This interface was designed as an attempt to fit existing video acceleration
|
||||
interfaces (known as mga_vid, mga_yuv, radeon_vid) into a fixed scheme. It
|
||||
provides highlevel interface to chips which are known as BES (BackEnd
|
||||
scalers) or OV (Video Overlays). It doesn't provide lowlevel interface to
|
||||
things which are known as graphics servers. (I don't want to compete with X11
|
||||
team in graphics mode switching). I.e. main goal of this interface is to
|
||||
provide maximal speed of video playback but not putting video signal on
|
||||
screen of your TV or on tape of your VCR. Although these things are also very
|
||||
significant - it's perfectly other task. (However I guess that it would be
|
||||
possible to implement something like mini-X (don't mix it with Minix ;) in
|
||||
the future, if some number of volunteers will be found.
|
||||
</P>
|
||||
|
||||
<P><B><I>USAGE</I></B></P>
|
||||
|
||||
<P>
|
||||
<LI>You can use standalone video output driver: <CODE>-vo xvidix</CODE><BR>
|
||||
This driver was developed as X11's front end to VIDIX technology. It
|
||||
requires XServer and can work only under XServer.</LI>
|
||||
<LI>You can use VIDIX subdevice which was applied to several video output
|
||||
drivers, such as:<BR>
|
||||
<CODE>-vo vesa:vidix</CODE> and <CODE>-vo fbdev:vidix</CODE></LI>
|
||||
Indeed it doesn't matter which video output driver is used with <b>VIDIX</b>.
|
||||
</P>
|
||||
|
||||
<P><B><I>REQUIREMENTS</I></B></P>
|
||||
|
||||
<P>
|
||||
<LI>video card should be in graphics mode (I write <b>should</b> simply
|
||||
because I tested it in text mode - it works but has awful output ;) Use
|
||||
AAlib for that).<BR>
|
||||
<I>Note: Everyone can try this trick by commenting out mode switching in
|
||||
vo_vesa driver.</I></LI>
|
||||
<LI><B>MPlayer</B>'s video output driver should know active video mode and be
|
||||
able to tell to VIDIX subdevice some video characteristics of server.</LI>
|
||||
I hope that probably every video output driver of <B>MPlayer</B> will
|
||||
recognize <CODE>:vidix</CODE> subdevice.
|
||||
</P>
|
||||
|
||||
<P><B><I>USAGE METHODS</I></B></P>
|
||||
|
||||
<P>When VIDIX is used as <b>subdevice</b> (<CODE>-vo vesa:xvidix</CODE>) then
|
||||
video mode configuration is performed by video output device
|
||||
(<b>vo_server</b> in short). Therefore you can pass into command line of
|
||||
<B>MPlayer</B> the same keys as for vo_server. In addition it understands
|
||||
<CODE>-double</CODE> key as globally visible parameter. (I recommend using
|
||||
this key with VIDIX at least for ATI's card).<BR>
|
||||
As for <CODE>-vo xvidix</CODE> : currently it recognizes the following
|
||||
options: <CODE>-fs -zoom -x -y</CODE>.<BR>
|
||||
</P>
|
||||
|
||||
<P>Also you can specify VIDIX's driver directly as third subargument in command
|
||||
line :<BR>
|
||||
<BR>
|
||||
<code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double
|
||||
file.avi</code><BR>
|
||||
or<BR>
|
||||
<code>mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp
|
||||
32 file.avi</code><BR>
|
||||
<BR>
|
||||
But it's dangerous, and you shouldn't do that. In this case given driver will
|
||||
be forced and result is unpredictable (it may <b>freeze</b> your
|
||||
computer). The Right Way is to use VIDIX without arguments to enable driver
|
||||
autodetection.
|
||||
</P>
|
||||
|
||||
<P>
|
||||
VIDIX is very new technology and it's extremely possible that on your system
|
||||
(OS=abc CPU=xyz) it won't work. In this case only solution for you it's port
|
||||
it (mainly libdha). But there is hope that it will work on those systems
|
||||
where X11 does.
|
||||
</P>
|
||||
|
||||
<P>And the last <b>WARNING</b>: (un)fortunately you <b>MUST</b> have
|
||||
<b>ROOT</b> privileges to use VIDIX due to direct hardware access. At least
|
||||
set the <b>suid</b> bit on the <B>MPlayer</B> excecutable.
|
||||
</P>
|
||||
|
||||
|
||||
<P><B><A NAME=2.3.1.A>2.3.1.A. TV-out support</A></B></P>
|
||||
|
||||
|
@ -994,8 +1103,8 @@ hackers will be able to disable copy protection on their chips. Therefore
|
|||
we have no chance to get working TV-out on ATI.</P>
|
||||
|
||||
<P>What's status of ATI's tv-out chips under Linux:
|
||||
<LI><b>ATI Mach64</b> has <i>ImpacTV</i> which is supported by <A HREF="http://www.linuxvideo.org/gatos">gatos</A>.
|
||||
<LI><b>ASIC Radeon VIVO</b> has <i>Rage Theatre</i> which is supported by <A HREF="http://www.linuxvideo.org/gatos">gatos</A>.
|
||||
<LI><b>ATI Mach64</b> has <i>ImpacTV</i> which is supported by <A HREF="http://gatos.sf.net">gatos</A>.
|
||||
<LI><b>ASIC Radeon VIVO</b> has <i>Rage Theatre</i> which is supported by <A HREF="http://gatos.sf.net">gatos</A>.
|
||||
<LI><b>Radeon VE</b> and <b>Rage PRO LT</b> have <i>ImpacTV2+</i> which is not supported under Linux.
|
||||
But with <B>MPlayer</B> you get <B>full hardware acceleration</B> and <B>TV out</B>
|
||||
for Radeons !
|
||||
|
|
Loading…
Reference in New Issue