comparison DOCS/video.html @ 4199:bcaf75e384d8

Added (sigh, reHTMLized;)) Nick's VIDIX patch
author gabucino
date Wed, 16 Jan 2002 17:12:20 +0000
parents cab4ac1467e4
children 82d33038b2d0
comparison
equal deleted inserted replaced
4198:7e2bf04c9a7c 4199:bcaf75e384d8
48 size=2><A HREF=#2.3.1.11>aa</A></TD><TD></TD><TD><FONT face="Verdana, Arial, 48 size=2><A HREF=#2.3.1.11>aa</A></TD><TD></TD><TD><FONT face="Verdana, Arial,
49 Helvetica, sans-serif" size=2>textmode rendering with AAlib</TD><TR> 49 Helvetica, sans-serif" size=2>textmode rendering with AAlib</TD><TR>
50 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif" 50 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
51 size=2><a href=#2.3.1.12>vesa</a></TD><TD></TD><TD><FONT face="Verdana, Arial, 51 size=2><a href=#2.3.1.12>vesa</a></TD><TD></TD><TD><FONT face="Verdana, Arial,
52 Helvetica, sans-serif" size=2>Output to VESA BIOS.</TD><TR> 52 Helvetica, sans-serif" size=2>Output to VESA BIOS.</TD><TR>
53 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
54 size=2><a href=#2.3.1.15>vidix</a></TD><TD></TD><TD><FONT face="Verdana, Arial,
55 Helvetica, sans-serif" size=2>VIDeo Interface for *niX (this entry is not a
56 real driver, but an explanation of VIDIX)</TD><TR>
57 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
58 size=2><a href=#2.3.1.15>xvidix</a></TD><TD></TD><TD><FONT face="Verdana, Arial,
59 Helvetica, sans-serif" size=2>VIDIX in X window</TD><TR>
53 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif" 60 <TD></TD><TD VALIGN=top><FONT face="Verdana, Arial, Helvetica, sans-serif"
54 size=2>directfb</TD><TD></TD><TD><FONT face="Verdana, Arial, 61 size=2>directfb</TD><TD></TD><TD><FONT face="Verdana, Arial,
55 Helvetica, sans-serif" size=2>Direct Framebuffer Device</TD><TR> 62 Helvetica, sans-serif" size=2>Direct Framebuffer Device</TD><TR>
56 63
57 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif" 64 <TD COLSPAN=4><P><B><FONT face="Verdana, Arial, Helvetica, sans-serif"
879 it only from textmode console.</P> 886 it only from textmode console.</P>
880 887
881 <P> 888 <P>
882 <b>Conclusion:</b> I know there are lot of lacks and bugs. So if you are able 889 <b>Conclusion:</b> I know there are lot of lacks and bugs. So if you are able
883 to improve something then simply send me your patches. 890 to improve something then simply send me your patches.
891 </P>
892
893 <P><B><A NAME=2.3.1.15>2.3.1.15. VIDIX</A></B></P>
894
895 <P><B><I>WHAT IS VIDIX</I></B></P>
896
897 <P>VIDIX is the abbreviation for <b>VID</b>eo <b>I</b>nterface for
898 *ni<b>X</b>.<BR>
899 VIDIX was designed and introduced as an interface for fast user-space drivers
900 providing <b>DGA</b> everywhere where it's possible (<b>unlike X11</b>). I
901 hope that these drivers will be as portable as X11 (<b>not only on
902 *nix</b>).<BR>
903 What is it:
904 <LI>It's a portable successor of mga_vid technology, but it's located in
905 user-space.</LI>
906 <LI>Unlike X11 it provides DGA everywhere it's possible</LI>
907 <LI>Unlike v4l it provides interface for video playback</LI>
908 <LI>Unlike linux's drivers it uses mathematics library</LI>
909 </P>
910
911 <P>I can tell you in bold capital letters :<BR>
912 <b>VIDIX PROVIDES DIRECT GRAPHICS ACCESS TO BES YUV MEMORY.</b>
913 </P>
914
915 <P><i>Well (it's in my todo) - implement DGA to MPEG2 decoder.</i></P>
916
917 <P>This interface was designed as an attempt to fit existing video acceleration
918 interfaces (known as mga_vid, mga_yuv, radeon_vid) into a fixed scheme. It
919 provides highlevel interface to chips which are known as BES (BackEnd
920 scalers) or OV (Video Overlays). It doesn't provide lowlevel interface to
921 things which are known as graphics servers. (I don't want to compete with X11
922 team in graphics mode switching). I.e. main goal of this interface is to
923 provide maximal speed of video playback but not putting video signal on
924 screen of your TV or on tape of your VCR. Although these things are also very
925 significant - it's perfectly other task. (However I guess that it would be
926 possible to implement something like mini-X (don't mix it with Minix ;) in
927 the future, if some number of volunteers will be found.
928 </P>
929
930 <P><B><I>USAGE</I></B></P>
931
932 <P>
933 <LI>You can use standalone video output driver: <CODE>-vo xvidix</CODE><BR>
934 This driver was developed as X11's front end to VIDIX technology. It
935 requires XServer and can work only under XServer.</LI>
936 <LI>You can use VIDIX subdevice which was applied to several video output
937 drivers, such as:<BR>
938 <CODE>-vo vesa:vidix</CODE> and <CODE>-vo fbdev:vidix</CODE></LI>
939 Indeed it doesn't matter which video output driver is used with <b>VIDIX</b>.
940 </P>
941
942 <P><B><I>REQUIREMENTS</I></B></P>
943
944 <P>
945 <LI>video card should be in graphics mode (I write <b>should</b> simply
946 because I tested it in text mode - it works but has awful output ;) Use
947 AAlib for that).<BR>
948 <I>Note: Everyone can try this trick by commenting out mode switching in
949 vo_vesa driver.</I></LI>
950 <LI><B>MPlayer</B>'s video output driver should know active video mode and be
951 able to tell to VIDIX subdevice some video characteristics of server.</LI>
952 I hope that probably every video output driver of <B>MPlayer</B> will
953 recognize <CODE>:vidix</CODE> subdevice.
954 </P>
955
956 <P><B><I>USAGE METHODS</I></B></P>
957
958 <P>When VIDIX is used as <b>subdevice</b> (<CODE>-vo vesa:xvidix</CODE>) then
959 video mode configuration is performed by video output device
960 (<b>vo_server</b> in short). Therefore you can pass into command line of
961 <B>MPlayer</B> the same keys as for vo_server. In addition it understands
962 <CODE>-double</CODE> key as globally visible parameter. (I recommend using
963 this key with VIDIX at least for ATI's card).<BR>
964 As for <CODE>-vo xvidix</CODE> : currently it recognizes the following
965 options: <CODE>-fs -zoom -x -y</CODE>.<BR>
966 </P>
967
968 <P>Also you can specify VIDIX's driver directly as third subargument in command
969 line :<BR>
970 <BR>
971 &nbsp;&nbsp;<code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double
972 file.avi</code><BR>
973 or<BR>
974 &nbsp;&nbsp;<code>mplayer -vo vesa:vidix:radeon_vid.so -fs -zoom -double -bpp
975 32 file.avi</code><BR>
976 <BR>
977 But it's dangerous, and you shouldn't do that. In this case given driver will
978 be forced and result is unpredictable (it may <b>freeze</b> your
979 computer). The Right Way is to use VIDIX without arguments to enable driver
980 autodetection.
981 </P>
982
983 <P>
984 VIDIX is very new technology and it's extremely possible that on your system
985 (OS=abc CPU=xyz) it won't work. In this case only solution for you it's port
986 it (mainly libdha). But there is hope that it will work on those systems
987 where X11 does.
988 </P>
989
990 <P>And the last <b>WARNING</b>: (un)fortunately you <b>MUST</b> have
991 <b>ROOT</b> privileges to use VIDIX due to direct hardware access. At least
992 set the <b>suid</b> bit on the <B>MPlayer</B> excecutable.
884 </P> 993 </P>
885 994
886 995
887 <P><B><A NAME=2.3.1.A>2.3.1.A. TV-out support</A></B></P> 996 <P><B><A NAME=2.3.1.A>2.3.1.A. TV-out support</A></B></P>
888 997
992 <P>It means that if they open any TV-out related information then 1101 <P>It means that if they open any TV-out related information then
993 hackers will be able to disable copy protection on their chips. Therefore 1102 hackers will be able to disable copy protection on their chips. Therefore
994 we have no chance to get working TV-out on ATI.</P> 1103 we have no chance to get working TV-out on ATI.</P>
995 1104
996 <P>What's status of ATI's tv-out chips under Linux: 1105 <P>What's status of ATI's tv-out chips under Linux:
997 <LI><b>ATI Mach64</b> has <i>ImpacTV</i> which is supported by <A HREF="http://www.linuxvideo.org/gatos">gatos</A>. 1106 <LI><b>ATI Mach64</b> has <i>ImpacTV</i> which is supported by <A HREF="http://gatos.sf.net">gatos</A>.
998 <LI><b>ASIC Radeon VIVO</b> has <i>Rage Theatre</i> which is supported by <A HREF="http://www.linuxvideo.org/gatos">gatos</A>. 1107 <LI><b>ASIC Radeon VIVO</b> has <i>Rage Theatre</i> which is supported by <A HREF="http://gatos.sf.net">gatos</A>.
999 <LI><b>Radeon VE</b> and <b>Rage PRO LT</b> have <i>ImpacTV2+</i> which is not supported under Linux. 1108 <LI><b>Radeon VE</b> and <b>Rage PRO LT</b> have <i>ImpacTV2+</i> which is not supported under Linux.
1000 But with <B>MPlayer</B> you get <B>full hardware acceleration</B> and <B>TV out</B> 1109 But with <B>MPlayer</B> you get <B>full hardware acceleration</B> and <B>TV out</B>
1001 for Radeons ! 1110 for Radeons !
1002 Check <a href=#2.3.1.12>VESA driver</a> and <A HREF=#2.3.1.14>Radeon 1111 Check <a href=#2.3.1.12>VESA driver</a> and <A HREF=#2.3.1.14>Radeon
1003 acceleration</A> sections.</P> 1112 acceleration</A> sections.</P>