Name

XvPutStill - write a single frame of video to a drawable

Syntax

#include


XvPutStill(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);

Arguments

_d_p_y Specifies the connection to the X server.
_p_o_r_t Defines the port from which to get the still.
_d Defines the drawable into which the still is to be written.
Pixmaps are currently not supported.
_g_c Defines the graphical context.
GC components are: subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
_v_x_,_v_y_,_v_w_,_v_h Define the location and size of the video region
to be written. _v_x and _v_y define the upper-left pixel of the region. _v_w and _v_h define the width and height, in pixels, of the region.
_d_x_,_d_y_,_d_w_,_d_h Define the location and size of the destination region into which the
still image is written. _d_x and _d_y define the upper-left corner of the region. _d_w and _d_h define the width and height, in pixels, of the region.

Description

XvPutStill(3) writes a single frame of video to a drawable. The position and size of the source (video) rectangle is specified by _v_x_, _v_y_, _v_w, and _v_h. The position and size of the destination (drawable) rectangle is specified by _d_x_, _d_y_, _d_w, and _d_h.

Video data is clipped to the bounds of the video encoding, scaled to the requested drawable region size (or the closest size supported) and clipped to the bounds of the 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. If the port is not receiving a valid video signal a VideoNotify event with detail XvHardError is generated for the drawable.

Returned Values

[Success] Returned if XvPutStill(3) completed successfully.
[XvBadExtension] Returned if the Xv extension is unavailable.
[XvBadAlloc] Returned if XvGetStill(3) failed to allocate memory to process
the request.

Diagnostics

[XvBadPort] Generated if the requested port does not exist.
[BadDrawable] Generated if the requested drawable does not exist.
[BadGC] Generated if the requested graphics context does not exist.
[BadAlloc] Generated if there were insufficient resources to process the request.

See Also

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