Table of Contents
XvGrabPort - lock port for exclusive use by client
#include
<X11/extensions/Xvlib.h>
XvGrabPort(dpy, port, time)
Display *dpy;
XvPortID port;
Time time;
- 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 be grabbed.
- time
- Specifies the request
timestamp.
XvGrabPort(3X)
grabs a port. Once a client grabs
a port, only that client can make video requests to that port.
If the
time is before the current port time, the XvGrabPort request is ignored
and XvInvalidTime is returned. If the port is already grabbed by another
client, XvAlreadyGrabbed is returned. Otherwise it returns a status of Success.
The port time is updated when the following requests are processed: XvGrabPort(3X)
,
XvUngrabPort(3X)
, XvPutVideo(3X)
, XvPutStill(3X)
, XvGetVideo(3X)
, XvGetStill(3X)
.
If the port is actively processing video for another client, the video
is preempted, and an XvVideoNotify event with detail XvPreempted is generated
for its drawable.
- [Success]
- Returned if XvGrabPort(3X)
completed
successfully.
- [XvInvalidTime]
- Returned if requested time is older than the
current port time.
- [XvAlreadyGrabbed]
- Returned if the port is already grabbed
by another client.
- [XvBadExtension]
- Returned if the Xv extension is unavailable.
- [XvBadAlloc]
- Returned if XvGrabPort(3X)
failed to allocate memory to process
the request.
- [XvBadPort]
- Generated if the requested port does
not exist.
XvUngrabPort(3X)
XvVideoNotify(3X)
Table of Contents