diff options
93 files changed, 14 insertions, 44226 deletions
diff --git a/DOCS/man/en/mplayer.1 b/DOCS/man/en/mplayer.1 index ae13cac060..1c2d6701f9 100644 --- a/DOCS/man/en/mplayer.1 +++ b/DOCS/man/en/mplayer.1 @@ -281,8 +281,8 @@ Change YUV colorspace. .PD 1 .PP .RS -(The following keys are valid only when using a hardware accelerated video -output (xv, (x)vidix, (x)mga, etc), the software equalizer +(The following keys are valid only when using a video output that supports +the corresponding adjustment, the software equalizer (\-vf eq or \-vf eq2) or hue filter (\-vf hue).) .RE .PP @@ -751,14 +751,14 @@ chapter change instead of doing a seek. .B \-colorkey <number> Changes the colorkey to an RGB value of your choice. 0x000000 is black and 0xffffff is white. -Only supported by the cvidix, fbdev, svga, vesa, winvidix, xmga, xvidix, +Only supported by the fbdev, svga, vesa, xmga, xover, xv (see \-vo xv:ck), xvmc (see \-vo xv:ck) and directx video output drivers. . .TP .B \-nocolorkey Disables colorkeying. -Only supported by the cvidix, fbdev, svga, vesa, winvidix, xmga, xvidix, +Only supported by the fbdev, svga, vesa, xmga, xover, xv (see \-vo xv:ck), xvmc (see \-vo xv:ck) and directx video output drivers. . @@ -797,14 +797,13 @@ later. See http://www.mplayerhq.hu/\:DOCS/\:HTML/\:en/\:edl.html for details. . .TP -.B \-nofixed\-vo +.B \-fixed\-vo, \-nofixed\-vo \-fixed\-vo enforces a fixed video system for multiple files (one (un)initialization for all files). Therefore only one window will be opened for all files. Now enabled by default, use \-nofixed\-vo to disable and create a new window whenever the video stream changes. -Currently the following drivers are fixed-vo compliant: gl, gl2, mga, svga, x11, -xmga, xv, xvidix and dfbmga. +Some of the older drivers may not be fixed-vo compliant. . .TP .B \-framedrop (also see \-hardframedrop, experimental without \-nocorrect\-pts) @@ -3169,8 +3168,7 @@ the video output drivers that fully support \-xineramascreen (direct3d, gl, gl2, vdpau, x11, xv, xvmc, corevideo). .br .I NOTE: -This option is only supported by the x11, xmga, xv, xvmc, xvidix, -gl, gl2, directx, fbdev, tdfxfb and corevideo video output drivers. +May not be supported by some of the older VO drivers. .sp 1 .I EXAMPLE: .PD 0 @@ -3262,8 +3260,7 @@ as well as directx, corevideo, quartz, ggi and gl2. Enables pan-and-scan functionality (cropping the sides of e.g.\& a 16:9 movie to make it fit a 4:3 display without black bands). The range controls how much of the image is cropped. -Only works with the xv, xmga, mga, gl, gl2, quartz, corevideo and xvidix -video output drivers. +May not work with all video output drivers. .br .I NOTE: Values between \-1 and 0 are allowed as well, but highly experimental @@ -3288,7 +3285,7 @@ Currently only supported by \-vo directx combined with the \-vm option. .B \-rootwin Play movie in the root window (desktop background). Desktop background images may cover the movie window, though. -Only works with the x11, xv, xmga, xvidix, quartz, corevideo and directx video output drivers. +May not work with all video output drivers. . .TP .B \-saturation <\-100\-100> @@ -3674,52 +3671,6 @@ Use hardware accelerated scaler (default: hwaccel). .PD 1 . .TP -.B "vidix\ \ " -VIDIX (VIDeo Interface for *niX) is an interface to the -video acceleration features of different graphics cards. -Very fast video output driver on cards that support it. -.PD 0 -.RSs -.IPs <subdevice> -Explicitly choose the VIDIX subdevice driver to use. -Available subdevice drivers are cyberblade, ivtv, mach64, -mga_crtc2, mga, nvidia, pm2, pm3, radeon, rage128, s3, sh_veu, -sis_vid and unichrome. -.RE -.PD 1 -. -.TP -.B xvidix (X11 only) -X11 frontend for VIDIX -.PD 0 -.RSs -.IPs <subdevice> -same as vidix -.RE -.PD 1 -. -.TP -.B "cvidix\ " -Generic and platform independent VIDIX frontend, can even run in a -text console with nVidia cards. -.PD 0 -.RSs -.IPs <subdevice> -same as vidix -.RE -.PD 1 -. -.TP -.B winvidix (Windows only) -Windows frontend for VIDIX -.PD 0 -.RSs -.IPs <subdevice> -same as vidix -.RE -.PD 1 -. -.TP .B direct3d (Windows only) (BETA CODE!) Video output driver that uses the Direct3D interface (useful for Vista). . @@ -3789,9 +3740,7 @@ Uses the kernel framebuffer to play video. .PD 0 .RSs .IPs <device> -Explicitly choose the fbdev device name to use (e.g.\& /dev/\:fb0) or the -name of the VIDIX subdevice if the device name starts with 'vidix' -(e.g.\& 'vidixsis_vid' for the sis driver). +Explicitly choose the fbdev device name to use (e.g.\& /dev/\:fb0). .RE .PD 1 . @@ -3818,8 +3767,6 @@ Turns DGA mode on or off (default: on). Activate the NeoMagic TV out and set it to PAL norm. .IPs neotv_ntsc Activate the NeoMagic TV out and set it to NTSC norm. -.IPs vidix -Use the VIDIX driver. .IPs "lvo:\ \ \ " Activate the Linux Video Overlay on top of VESA mode. .RE @@ -3845,8 +3792,6 @@ Usable only with \-double. It has the same effect as the \-vsync option. .IPs "sq\ \ \ " Try to select a video mode with square pixels. -.IPs vidix -Use svga with VIDIX. .RE .PD 1 . @@ -7793,18 +7738,6 @@ Connect to NAS server instance 0 on localhost using unix domain sockets. .B DISPLAY FIXME: Document this. . -.SS vidix: -. -.TP -.B VIDIX_CRT -FIXME: Document this. -. -.TP -.B VIDIXIVTVALPHA -Set this to 'disable' in order to stop the VIDIX driver from controlling -alphablending settings. -You can then manipulate it yourself with 'ivtvfbctl'. -. .SS osdep: . .TP diff --git a/DOCS/tech/vidix.txt b/DOCS/tech/vidix.txt deleted file mode 100644 index 7308dde184..0000000000 --- a/DOCS/tech/vidix.txt +++ /dev/null @@ -1,153 +0,0 @@ - VIDIX - VIDeo Interface for *niX - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -This interface was designed and introduced as interface to userspace drivers -to provide DGA everywhere where it's possible (unline X11). -I hope that these drivers will be portable same as X11 (not only on *nix). - -What is it: -- It's portable successor of mga_vid technology which is located in user-space. -- Unlikely X11 it's provides DGA everywhere where it's possible. -- Unlikely v4l it provides interface for video playback -- Unlikely linux's drivers it uses mathematics library. - -Why it was developed: -As said Vladimir Dergachev -(http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/gatos/km/km.rfc.txt): -"0) Motivation - v4l, v4l2 and Xv are all suffering from the same problem: attempt to fit - existing multimedia devices into a fixed scheme." -Well - I tried to implement something similar by motivation. - -How it works: -~~~~~~~~~~~~~ - -This interface is almost finished. But I guess it can be expanded by developer's -requests. -So any suggestions, reports, criticism are gladly accepted. - -1) APP calls vixGetVersion to check age of driver ;) -2) APP calls vixProbe. Driver should return 0 if it can handle something in PC. -3) APP calls vixGetCapability. Driver should return filled - vidix_capability_t.type field at least. -4) If above calls were succesful then APP calls vixInit function - (Driver can have not exported this function in this case call will be - skiped). -5) After initializing of driver APP calls vixGetCapability again - (In this case driver must fill every field of struct) -6) APP calls vixQueryFourcc. Driver should answer - can it configure - video memory for given fourcc or not. -7) APP calls vixConfigPlayback. Driver should prepare BES on this call. - APP pass to driver following info: - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - vidix_playback_t.fourcc - contains fourcc of movie - vidix_playback_t.capability - currently contsinas copy of vidix_capability_t.flags - vidix_playback_t.blend_factor- currently unused - vidix_playback_t.src - x,y,w,h fields contain original movie size - (in pixels) x and y often are nulls. - vidix_playback_t.src.pitch.y These fields contain source pitches - vidix_playback_t.src.pitch.u - for each Y,U,V plane in bytes. - vidix_playback_t.src.pitch.v (For packed fourcc only Y value is used) - They are hints for driver to use same destinition - pitches as in source memory (to speed up - memcpy process). - Note: when source pitches are unknown or - variable these field will be filled into 0. - vidix_playback_t.dest - x,y,w,h fields contains destinition rectange - on the screen in pixels. - vidix_playback_t.num_frames - maximal # of frames which can be used by APP. - (Currently 10). - Driver should fill following fields: - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - vidix_playback_t.num_frames - real # of frames which will be used by driver. - (Should be less or equal to app's num_frames). - - vidix_playback_t.dest.pitch.y These fields should contain alignment - vidix_playback_t.dest.pitch.u - for each Y,U,V plane in bytes. - vidix_playback_t.dest.pitch.v (For packed fourcc only Y value is used) - - vidix_playback_t.frame_size - Driver should tell to app which size of - source frame (src.w and src.h) should - use APP (according to pitches and offsets) - - vidix_playback_t.offsets - offsets from begin of BES memory for each frame - - vidix_playback_t.offset.y These field should contain offset - vidix_playback_t.offset.u - for each Y,U,V plane within frame. - vidix_playback_t.offset.v (For packed fourcc only Y value is used) - - vidix_playback_t.dga_addr - Address of BES memory. - -Also see this picture: - -VIDEO MEMORY layout: - +----------- It's begin of video memory End of video memory--------------+ - | | - v v - [ RGB memory | YUV memory | UNDEF ] - ^ - | - +---- begin of BES memory - -BES MEMORY layout: - +-------- begin of BES memory - | - v - [ | | | | | - ^ ^ ^ ^ ^ - | | | | + BEGIN of second frame - | | | + BEGIN of V plane - | | + BEGIN of U plane - | +------- BEGIN of Y plane - | - +--------- BEGIN of first frame - -This means that in general case: -offset of frame != offset of BES -offset of Y plane != offset of first frame - -But often: vidix_playback_t.offsets[0] = vidix_playback_t.offset.y = 0; - -Formula: (For Y plane) copy source to: - vidix_playback_t.dga_addr + - vidix_playback_t.offsets[i] + - vidix_playback_t.offset.y - -8) APP calls vixPlaybackOn. Driver should activate BES on this call. -9) PLAYBACK. Driver should sleep here ;) - But during playback can be called: - vixFrameSelect (if this function is exported) - Driver should prepare and activate corresponded frame. - This function is used only for double and trilpe buffering and - never used for single buffering playback. - vixGet(Set)GrKeys (if this function is exported) - This interface should be tuned but intriduced for overlapped playback - and video effects (TYPE_FX) - vixPlaybackGet(Set)Eq (if this function is exported) - For color correction. -10) APP calls vixPlaybackOff. Driver should deactivate BES on this call. -11) If vixDestroy is defined APP calls this function before unloading driver - from memory. - - -What functions are mandatory: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -vixGetVersion -vixProbe -vixGetCapability -vixQueryFourcc -vixConfigPlayback -vixPlaybackOn -vixPlaybackOff - -All other functions are optionaly. - -Useful links: -~~~~~~~~~~~~~ -Guide to DTV http://www.digitaltelevision.com/dtvbook/toc.shtml -Fourcc http://www.webartz.com/fourcc/ -MPEG http://www.mpeg.org/MPEG/index.html -Analog colors http://www.miranda.com/en/app_notes/TN/TN-05/TN-05.htm - -Please send your suggestions, reports, feedback to mplayer-dev-eng@mplayerhq.hu -Best regards! Nick Kurshev. @@ -553,38 +553,13 @@ SRCS_MPLAYER-$(V4L2) += libvo/vo_v4l2.c SRCS_MPLAYER-$(V4L2) += libao2/ao_v4l2.c SRCS_MPLAYER-$(VDPAU) += libvo/vo_vdpau.c SRCS_MPLAYER-$(VESA) += libvo/gtf.c libvo/vo_vesa.c libvo/vesa_lvo.c -SRCS_MPLAYER-$(VIDIX) += libvo/vo_cvidix.c \ - libvo/vosub_vidix.c \ |