Xv(3)                           libXv Functions                          Xv(3)

       Xv - X Window System video extension

       The X Video Extension (Xv) extension provides support for video
       adaptors attached to an X display.  It takes the approach that a
       display may have one or more video adaptors, each of which has one or
       more ports through which independent video streams pass.

       An adaptor may be able to display video in a drawable, capture video
       from a drawable, or both.  It translates between video encoding (NTSC,
       PAL, SECAM, etc...) and drawable format (depth and visual-id pair). An
       adaptor may support multiple video encodings and/or multiple drawable

       Clients use Xv(3) to gain access and manage sharing of a display's
       video resources.  Typically, a client will use XvQueryExtension(3) to
       determine the status of the extension, XvQueryAdaptors(3) to get a
       description of what video adaptors exist, and XvQueryEncodings(3) to
       get a description of what video encodings an adaptor supports.

       Once a client has determined what video resources are available, it is
       free to put video into a drawable or get video from a drawable,
       according the capabilities supported.  Clients can select to receive
       events when video activity changes in a drawable and when port
       attributes have changed.

       The Xv protocol version 2.2 and later is extended to support client
       images in alternate colorspaces (XvImages).  Xv adaptors which are
       capable of displaying XvImages will have the XvImageMask field set in
       the type field of the XvAdaptorInfo.  XvImage formats supported by the
       port may be queried with XvListImageFormats(3).  XvImages may be
       created with the help of XvCreateImage(3) or XvShmCreateImage(3);
       XvImages may be displayed with XvPutImage(3) or XvShmPutImage(3).  The
       Port attributes of the port specified in the Xv(Shm)PutImage command
       will be valid for the image operation when applicable.  There will be a
       port encoding with the name "XV_IMAGE".  The width and height of that
       encoding will indicate the maximum source image size.

       The following is a summary of Xv library functions and events:

       XvCreateImage(3) - create an XvImage

       XvGetPortAttribute(3) - return current port attribute value

       XvGetStill(3) - capture a single frame of video from a drawable

       XvGetVideo(3) - capture video from a drawable

       XvGrabPort(3) - lock port for exclusive use by client

       XvListImageFormats(3) - return list of image formats for a port

       XvPortNotify(3) - event generated when port attributes change

       XvPutImage(3) - write a XvImage to a drawable

       XvPutStill(3) - write a single frame of video to a drawable

       XvPutVideo(3) - write video into a drawable

       XvQueryAdaptors(3) - return adaptor information for a screen

       XvQueryBestSize(3) - determine the optimum drawable region size

       XvQueryEncodings(3) - return list of encodings for an adaptor

       XvQueryExtension(3) - return version and revision of extension

       XvQueryPortAttributes(3) - return list of attributes of a port

       XvSelectPortNotify(3) - enable or disable XvPortNotify events

       XvSelectVideoNotify(3) - enable or disable XvVideoNotify events

       XvSetPortAttribute(3) - set an attribute for a port

       XvShmCreateImage(3) - create an XvImage in shared memory

       XvShmPutImage(3) - write a XvImage in shared memory to a drawable

       XvStopVideo(3) - stop active video

       XvUngrabPort(3) - release a grabbed port

       XvVideoNotify(3) - event generated for video processing

       Each of these functions and events is described in its own Xv man page.

X Version 11                     libXv 1.0.11                            Xv(3)