summaryrefslogtreecommitdiffstats
path: root/DOCS
diff options
context:
space:
mode:
authorUoti Urpala <uau@glyph.nonexistent.invalid>2011-01-31 03:44:50 +0200
committerUoti Urpala <uau@glyph.nonexistent.invalid>2011-01-31 16:03:10 +0200
commit6d534cd3cb5ca12d41f53345e92b9ab594971406 (patch)
treeb1c80430a490877234dd6226e5e635823b913b4c /DOCS
parent902289f2b3754b43e474cf5b5d3b0a4dbb7e7069 (diff)
downloadmpv-6d534cd3cb5ca12d41f53345e92b9ab594971406.tar.bz2
mpv-6d534cd3cb5ca12d41f53345e92b9ab594971406.tar.xz
vidix: drop VIDIX support
By now VIDIX is too obscure to justify the amount of code and complexity it requires in the sources. Although there is no pressing need to drop it just now from a code point of view, I'll rather remove it before release than release with VIDIX support and then drop it later. Some of the manpage mentions of VIDIX were in "this option supported for these VOs" lists that looked outdated and failed to mention vdpau for example. Replace such incorrect lists with a generic "not supported for all VOs" mention.
Diffstat (limited to 'DOCS')
-rw-r--r--DOCS/man/en/mplayer.187
-rw-r--r--DOCS/tech/vidix.txt153
2 files changed, 10 insertions, 230 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.