XvGetVideo(3X) UNIX Programmer's Manual XvGetVideo(3X)
Name
XvGetVideo - capture video from a drawable
Syntax
include Xvlib.h
XvGetVideo(dpy, port, d, gc, vx, vy,
register Display *dpy;
XvPortID port;
Drawable d;
GC gc;
int vx, vy, dx, dy;
unsigned int vw, vh;
unsigned int dw, dh;
Arguments
dpy Specifies the display screen on which the Xv
Server is to accept requests from Xv clients.
If the display option is not specified, Xv
uses the display screen specified by your
DISPLAY environment variable. The display
option has the format hostname:number. Using
two colons (::) instead of one (:) indicates
that DECnet is to be used for transport.
port Defines the port to which video output is
sent.
d Defines the drawable (window) from which
video output is to be obtained.
gc Defines the graphical context. GC components
are: subwindow-mode, clip-x-origin, clip-y-
origin, and clip-mask.
vx,vy,vw,vh Define the location and size of the video
region is to be written. vx and vy define
the x and y coordinates of the upper-left
corner of the video region; vw and vh define
the width and height, in pixels, of the video
region.
dx,dy,dw,dh Define the location of the source drawable
from which the video image is to be taken. dx
and dy define the x and y coordinates of the
upper-left corner of the drawable region; dw
and dh define the width and height, in pix-
els, of the drawable region.
XFree86 Version 4.5.0 1
XvGetVideo(3X) UNIX Programmer's Manual XvGetVideo(3X)
Description
outputs video from a drawable. The position and size of the
destination rectangle is specified by vx, vy, vw, and vh.
The position and size of the source rectangle is specified
by dx, dy, dw, and dh.
Drawable data is clipped to the bounds of the drawable,
scaled to the requested video region size (or the closest
size supported) and clipped to the bounds of the video
encoding. The contents of any region not updated with draw-
able data is undefined.
If video is successfully initiated, an XvVideoNotify event
with detail XvStarted is generated for the drawable. If the
port is already in use, its video is preempted, and if the
new drawable is different than the old, an XvVideoNotify
event with detail XvPreempted is generated for the old draw-
able. If the port is grabbed by another client, this
request is ignored, and an XvVideoNotify event with detail
XvBusy is generated for the drawable.
Returned Values
[Success]
Returned if XvGetVideo(3X) completed successfully.
[XvBadExtension]
Returned if the Xv extension is unavailable.
[XvBadAlloc]
Returned if XvGetVideo(3X) failed to allocate memory
to process the request.
Diagnostics
[XvBadPort]
Generated if the requested port does not exist.
[BadGC] Generated if the requested graphics context does not
exist.
[BadDrawable]
Generated if the requested drawable does not exist.
[BadAlloc]
Generated if there were insufficient resources to
process the request.
See Also
XvGetStill(3X), XvPutVideo(3X), XvVideoNotify(3X)
XFree86 Version 4.5.0 2