xenocara/lib/libXvMC/include/X11/extensions/XvMClib.h

174 lines
5.9 KiB
C
Raw Normal View History

#ifndef _XVMCLIB_H_
#define _XVMCLIB_H_
#include <X11/Xfuncproto.h>
#include <X11/extensions/Xvlib.h>
#include <X11/extensions/XvMC.h>
_XFUNCPROTOBEGIN
2024-04-29 00:35:41 +00:00
Bool XvMCQueryExtension(Display *display, int *eventBase, int *errBase);
Status XvMCQueryVersion(Display *display, int *major_versionp,
int *minor_versionp);
Status XvMCGetDRInfo(Display *dpy, XvPortID port,
2024-04-29 00:35:41 +00:00
char **name, char **busID,
int *major, int *minor,
int *patchLevel,
int *isLocal);
2024-04-29 00:35:41 +00:00
XvMCSurfaceInfo *XvMCListSurfaceTypes(Display *dpy, XvPortID port, int *num);
2024-04-29 00:35:41 +00:00
Status XvMCCreateContext(Display *display,
XvPortID port,
int surface_type_id,
int width,
int height,
int flags,
XvMCContext *context);
2024-04-29 00:35:41 +00:00
Status XvMCDestroyContext(Display *display, XvMCContext *context);
Status
2024-04-29 00:35:41 +00:00
XvMCCreateSurface(Display *display,
XvMCContext *context,
XvMCSurface *surface);
Status XvMCDestroySurface(Display *display, XvMCSurface *surface);
2024-04-29 00:35:41 +00:00
XvImageFormatValues *XvMCListSubpictureTypes(Display *display,
XvPortID port,
int surface_type_id,
int *count_return);
Status
2024-04-29 00:35:41 +00:00
XvMCPutSurface(Display *display,
XvMCSurface *surface,
Drawable draw,
short srcx,
short srcy,
unsigned short srcw,
unsigned short srch,
short destx,
short desty,
unsigned short destw,
unsigned short desth,
int flags);
Status XvMCHideSurface(Display *display, XvMCSurface *surface);
Status
2024-04-29 00:35:41 +00:00
XvMCCreateSubpicture(Display *display,
XvMCContext *context,
XvMCSubpicture *subpicture,
unsigned short width,
unsigned short height,
int xvimage_id);
Status
2024-04-29 00:35:41 +00:00
XvMCClearSubpicture(Display *display,
XvMCSubpicture *subpicture,
short x,
short y,
unsigned short width,
unsigned short height,
unsigned int color);
Status
2024-04-29 00:35:41 +00:00
XvMCCompositeSubpicture(Display *display,
XvMCSubpicture *subpicture,
XvImage *image,
short srcx,
short srcy,
unsigned short width,
unsigned short height,
short dstx,
short dsty);
Status XvMCDestroySubpicture(Display *display, XvMCSubpicture *subpicture);
Status
2024-04-29 00:35:41 +00:00
XvMCSetSubpicturePalette(Display *display,
XvMCSubpicture *subpicture,
unsigned char *palette);
Status
2024-04-29 00:35:41 +00:00
XvMCBlendSubpicture(Display *display,
XvMCSurface *target_surface,
XvMCSubpicture *subpicture,
short subx,
short suby,
unsigned short subw,
unsigned short subh,
short surfx,
short surfy,
unsigned short surfw,
unsigned short surfh);
Status
2024-04-29 00:35:41 +00:00
XvMCBlendSubpicture2(Display *display,
XvMCSurface *source_surface,
XvMCSurface *target_surface,
XvMCSubpicture *subpicture,
short subx,
short suby,
unsigned short subw,
unsigned short subh,
short surfx,
short surfy,
unsigned short surfw,
unsigned short surfh);
Status XvMCSyncSurface(Display *display, XvMCSurface *surface);
Status XvMCFlushSurface(Display *display, XvMCSurface *surface);
Status XvMCGetSurfaceStatus(Display *display, XvMCSurface *surface, int *stat);
Status XvMCRenderSurface(Display *display,
XvMCContext *context,
unsigned int picture_structure,
XvMCSurface *target_surface,
XvMCSurface *past_surface,
XvMCSurface *future_surface,
unsigned int flags,
unsigned int num_macroblocks,
unsigned int first_macroblock,
XvMCMacroBlockArray *macroblock_array,
XvMCBlockArray *blocks);
Status XvMCSyncSubpicture(Display *display, XvMCSubpicture *subpicture);
Status XvMCFlushSubpicture(Display *display, XvMCSubpicture *subpicture);
Status
2024-04-29 00:35:41 +00:00
XvMCGetSubpictureStatus(Display *display, XvMCSubpicture *subpic, int *stat);
Status XvMCCreateBlocks(Display *display,
XvMCContext *context,
unsigned int num_blocks,
XvMCBlockArray *block);
Status XvMCDestroyBlocks(Display *display, XvMCBlockArray *block);
Status XvMCCreateMacroBlocks(Display *display,
XvMCContext *context,
unsigned int num_blocks,
XvMCMacroBlockArray *blocks);
Status XvMCDestroyMacroBlocks(Display *display,
XvMCMacroBlockArray *block);
XvAttribute *XvMCQueryAttributes(Display *display,
XvMCContext *context,
int *number);
Status
2024-04-29 00:35:41 +00:00
XvMCSetAttribute(Display *display,
XvMCContext *context,
Atom attribute,
int value);
Status
2024-04-29 00:35:41 +00:00
XvMCGetAttribute(Display *display,
XvMCContext *context,
Atom attribute,
int *value);
_XFUNCPROTOEND
#endif