Mercurial > mplayer.hg
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 <code>mplayer -vo xvidix:mga_vid.so -fs -zoom -double | |
972 file.avi</code><BR> | |
973 or<BR> | |
974 <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> |