XvQueryEncodings(3X)

Name
XvQueryEncodings - return list of encodings for an adaptor

Syntax
#include <X11/extensions/Xvlib.h>

XvQueryEncodings(dpy, port, p_num_encodings, pp_encoding_info)

register Display *dpy;
XvPortID port;
unsigned long *p_num_encodings;
XvEncodingInfo **pp_encoding_info;

Arguments

*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
    Specifies the port whose adaptor is to be queried for its list of encodings.

p_num_encodings
    A pointer to where the number of encodings supported by the adaptor is written.

pp_encoding_info
    A pointer to where the list of returned encoding information is returned. XvEncodingInfo has the following structure:

            typedef struct {
              XvEncodingID encoding_id;
              char *name;
              unsigned long width;
              unsigned long height;
              XvRational rate;
              unsigned long num_encodings;
            } XvEncodingInfo;

encoding_id
    Specifies the encoding-id of the encoding. The encoding-id is used to identify an encoding when a port's encoding attribute is changed.

name
    A pointer to a formatted string that identifies the encoding. The string has the format "timing-signaltype". For example "ntsc-composite".

width,height
    The width and height, in pixels, of the decoded video image.

rate
    The field rate of the decoded video.

The XvRational structure is used to specify a fractional number. It has the following structure:

        typedef struct {
          int numerator;
          int denominator;
        } XvRational;

The numerator and denominator fields specify the appropriate parts of a fractional number.

Description
XvQueryEncodings(3X) returns encoding information about an adaptor. Each encoding is described by the XvEncodingInfo structure described above. The encodings are identified by an encoding-id, which can be used to set or get the encoding attribute of a port.

Returned Values

[Success]
    Returned if XvQueryEncodings(3X) completed successfully.

[XvBadExtension]
    Returned if the Xv extension is unavailable.

[XvBadAlloc]
    Returned if XvQueryEncodings(3X) failed to allocate memory to process the request.

Diagnostics

[XvBadPort]
    Generated if the requested port does not exist.

See Also
XvFreeEncodingInfo(3X)