Table of Contents
XvGrabPort - lock port for exclusive use by client
#include
<X11/extensions/Xvlib.h>
int XvGrabPort(Display *dpy, XvPortID port, Time time);
- dpy
- Specifies the connection to the X server.
- port
- Defines the port
to be grabbed.
- time
- Specifies the request timestamp.
XvGrabPort(3)
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(3)
, XvUngrabPort(3)
, XvPutVideo(3)
,
XvPutStill(3)
, XvGetVideo(3)
, XvGetStill(3)
.
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(3)
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(3)
failed to allocate memory to process the request.
- [XvBadPort]
- Generated
if the requested port does not exist.
XvUngrabPort(3)
, XvVideoNotify(3)
Table of Contents