changeset 4199:bcaf75e384d8

Added (sigh, reHTMLized;)) Nick's VIDIX patch
author gabucino
date Wed, 16 Jan 2002 17:12:20 +0000
parents 7e2bf04c9a7c
children e5f53a91c2eb
files DOCS/Hungarian/documentation.html DOCS/Hungarian/video.html DOCS/documentation.html DOCS/video.html
diffstat 4 files changed, 218 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/DOCS/Hungarian/documentation.html	Wed Jan 16 15:22:45 2002 +0000
+++ b/DOCS/Hungarian/documentation.html	Wed Jan 16 17:12:20 2002 +0000
@@ -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>
--- a/DOCS/Hungarian/video.html	Wed Jan 16 15:22:45 2002 +0000
+++ b/DOCS/Hungarian/video.html	Wed Jan 16 17:12:20 2002 +0000
@@ -50,6 +50,13 @@
   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 @@
 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>
+  &nbsp;&nbsp;<code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double
+    file.avi</code><BR>
+  vagy<BR>
+  &nbsp;&nbsp;<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 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
--- a/DOCS/documentation.html	Wed Jan 16 15:22:45 2002 +0000
+++ b/DOCS/documentation.html	Wed Jan 16 17:12:20 2002 +0000
@@ -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>
--- a/DOCS/video.html	Wed Jan 16 15:22:45 2002 +0000
+++ b/DOCS/video.html	Wed Jan 16 17:12:20 2002 +0000
@@ -51,6 +51,13 @@
   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 @@
 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>
+  &nbsp;&nbsp;<code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double
+    file.avi</code><BR>
+  or<BR>
+  &nbsp;&nbsp;<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 @@
 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 !