XvQueryAdaptors - return adaptor information for a screen
#include <X11/extensions/Xvlib.h>
int XvQueryAdaptors(Display *dpy, Window window,
unsigned int *p_num_adaptors,
XvAdaptorInfo **pp_adaptor_info);
- dpy
- Specifies the connection to the X server.
- window
- Specifies a window of the screen for which the adaptor information is
desired.
- p_num_adaptors
- A pointer to where the number of adaptors for the specified screen is
returned.
- pp_adaptor_info
- A pointer to where the list of returned adaptor information is
returned.
XvQueryAdaptors(3)
returns an video adaptor information for the screen of the specified
drawable. The XvAdaptorInfo structure has the following organization:
typedef struct {
XvPortID base_id;
unsigned long num_ports;
char type;
char *name;
unsigned long num_formats;
XvFormat *formats;
unsigned long num_adaptors;
} XvAdaptorInfo;
- base_id
- The resource ID of the first adaptor port.
- num_ports
- The number of ports supported by the adaptor.
- type
- A bit mask with the value XvInputMask asserted if the adaptor supports
video input, and value XvOutputMask asserted if the adaptor supports video
output. In Xv protocol 2.2 and later, there are 3 new bits defined -
XvVideoMask, XvStillMask and XvImageMask indicating that the adaptor is
capable of video, still or image primitives respectively.
- name
- A vendor specific name that identifies the adaptor.
- num_formats
- The number of depth/visual id formats supported by the adaptor.
- formats
- A pointer to an array of XvFormat structures.
The XvFormat structure has the following organization:
typedef struct {
char depth;
unsigned long visual_id;
} XvFormat;
- depth
- A drawable depth supported by the adaptor.
- visual_id
- A visual-id supported for the given depth by the adaptor.
- [Success]
- Returned if XvQueryAdaptors(3) completed successfully.
- [XvBadExtension]
- Returned if the Xv extension is unavailable.
- [XvBadAlloc]
- Returned if XvQueryAdaptors(3) failed to allocate memory to process
the request.
- [Drawable]
- Returned if the requested drawable does not exist.