Table of Contents
XvGetVideo - capture video from a drawable
#include <X11/extensions/Xvlib.h>
int XvGetVideo(Display *dpy, XvPortID port, Drawable d, GC gc,
int vx, int vy, unsigned int vw, unsigned int vh,
int dx, int dy, unsigned int dw, unsigned int dh);
- dpy
- Specifies the connection to the X server.
- 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.
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(3)
completed successfully.
- [XvBadExtension]
- Returned if the
Xv extension is unavailable.
- [XvBadAlloc]
- Returned if XvGetVideo(3)
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(3)
, XvPutVideo(3)
,
XvVideoNotify(3)
Table of Contents