XvGetVideo






XvGetVideo − capture video from a drawable

includeXvlib.h

d,XvGetVideo(dpy,port,

register Display *dpy;
XvPortID port;
Drawable d;
GC gc;
int vx, vy, dx, dy;
unsigned int vw, vh;
unsigned int dw, dh;




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 xand y coordinates of the upper‐left
               corner of the video region; vwand 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.
               dxand dy define the xand y coordinates of the
               upper‐left corner of the drawable region;
               dwand dh define the width and height, in
               pixels, of the drawable region.

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.









                             ‐2‐


     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
drawable 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 drawable.  If the port is grabbed by another client,
this request is ignored, and an XvVideoNotify event with
detail XvBusy is generated for the drawable.



[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.



[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.


XvGetStill(3x), XvPutVideo(3x), XvVideoNotify(3x)