libXv Functions Xv(3xv)
NAME
Xv - X Window System video extension
DESCRIPTION
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 indepen-
dent video streams pass.An adaptor may be able to display video in a drawable, cap-
ture video from a drawable, or both. It translates betweenvideo encoding (NTSC, PAL, SECAM, etc...) and drawable for-
mat (depth and visual-id pair). An adaptor may support mul-
tiple video encodings and/or multiple drawable formats.Clients use Xv(3xv) to gain access and manage sharing of a
display's video resources. Typically, a client will useXvQueryExtension(3xv) to determine the status of the exten-
sion, XvQueryAdaptors(3xv) to get a description of what
video adaptors exist, and XvQueryEncodings(3xv) to get a
description of what video encodings an adaptor supports.Once a client has determined what video resources are avail-
able, 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 adap-
tors which are capable of displaying XvImages will have the
XvImageMask field set in the type field of the XvAdap-
torInfo. XvImage formats supported by the port may be
queried with XvListImageFormats(3xv). XvImages may be
created with the help of XvCreateImage(3xv) or
XvShmCreateImage(3xv); XvImages may be displayed with
XvPutImage(3xv) or XvShmPutImage(3xv). The Port attributes
of the port specified in the Xv(Shm)PutImage command will be
valid for the image operation when applicable. There willbe a port encoding with the name "XV_IMAGE". The width and
height of that encoding will indicate the maximum source image size. SUMMARY OF LIBRARY FUNCTIONSThe following is a summary of Xv library functions and
events:XvCreateImage(3xv) - create an XvImage
XvGetPortAttribute(3xv) - return current port attribute
valueX Version 11 Last change: libXv 1.0.5 1
libXv Functions Xv(3xv)
XvGetStill(3xv) - capture a single frame of video from a
drawableXvGetVideo(3xv) - capture video from a drawable
XvGrabPort(3xv) - lock port for exclusive use by client
XvListImageFormats(3xv) - return list of image formats for a
portXvPortNotify(3xv) - event generated when port attributes
changeXvPutImage(3xv) - write a XvImage to a drawable
XvPutStill(3xv) - write a single frame of video to a draw-
ableXvPutVideo(3xv) - write video into a drawable
XvQueryAdaptors(3xv) - return adaptor information for a
screenXvQueryBestSize(3xv) - determine the optimum drawable region
sizeXvQueryEncodings(3xv) - return list of encodings for an
adaptorXvQueryExtension(3xv) - return version and revision of
extensionXvQueryPortAttributes(3xv) - return list of attributes of a
portXvSelectPortNotify(3xv) - enable or disable XvPortNotify
eventsXvSelectVideoNotify(3xv) - enable or disable XvVideoNotify
eventsXvSetPortAttribute(3xv) - set an attribute for a port
XvShmCreateImage(3xv) - create an XvImage in shared memory
XvShmPutImage(3xv) - write a XvImage in shared memory to a
drawableXvStopVideo(3xv) - stop active video
XvUngrabPort(3xv) - release a grabbed port
X Version 11 Last change: libXv 1.0.5 2
libXv Functions Xv(3xv)
XvVideoNotify(3xv) - event generated for video processing
Each of these functions and events is described in its ownXv man page.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | x11/library/libxv ||_____________________________|_____________________________|
| Interface Stability | Volatile ||_____________________________|_____________________________|
| MT-Level | See XInitThreads(3X11) |
|_____________________________|_____________________________|
X Version 11 Last change: libXv 1.0.5 3