---
name: "XvQueryAdaptors"
section: "3x"
platform: "linux"
package: "libxv-dev"
version: "1:1.0.2-1"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/XvQueryAdaptors/3x"
---

# XvQueryAdaptors(3x)

return adaptor information for a screen

## Name

XvQueryAdaptors - return adaptor information for a screen

## Syntax

**#include \<X11/extensions/Xvlib.h\>**\

**XvQueryAdaptors(*dpy, win, p\_num\_adaptors, pp\_adaptor\_info*)**

**Display** *\*dpy;*\
 **Drawable**  *draw;*\
 **int** *\*p\_num\_adaptors*;\
 **XvAdaptorInfo** *\*\*pp\_adaptor\_info*;\

## Arguments

- *dpy*

  Specifies the connection to the X server.

- *draw*

  Specifies a drawable 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.

## Description

[XvQueryAdaptors(3x)](/XvQueryAdaptors/3x.md) 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.

- *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.

## Returned Values

- \[Success\]

  Returned if [XvQueryAdaptors(3x)](/XvQueryAdaptors/3x.md) completed successfully.

- \[XvBadExtension\]

  Returned if the Xv extension is unavailable.

- \[XvBadAlloc\]

  Returned if [XvQueryAdaptors(3x)](/XvQueryAdaptors/3x.md) failed to allocate memory to process the request.

## Diagnostics

- \[Drawable\]

  Returned if the requested drawable does not exist.

## See Also

[XvFreeAdaptorInfo(3x)](/XvFreeAdaptorInfo/3x.md)
