va.h   va.h 
skipping to change at line 59 skipping to change at line 59
* rev 0.27 (11/19/2007 Matt Sottek) - Added DeriveImage * rev 0.27 (11/19/2007 Matt Sottek) - Added DeriveImage
* rev 0.28 (12/06/2007 Jonathan Bian) - Added new versions of PutImage and AssociateSubpicture * rev 0.28 (12/06/2007 Jonathan Bian) - Added new versions of PutImage and AssociateSubpicture
* to enable scaling * to enable scaling
* rev 0.29 (02/07/2008 Jonathan Bian) - VC1 parameter fixes, * rev 0.29 (02/07/2008 Jonathan Bian) - VC1 parameter fixes,
* added VA_STATUS_ERROR_RESOLUTION_N OT_SUPPORTED * added VA_STATUS_ERROR_RESOLUTION_N OT_SUPPORTED
* rev 0.30 (03/01/2009 Jonathan Bian) - Added encoding support for H.264 B P and MPEG-4 SP and fixes * rev 0.30 (03/01/2009 Jonathan Bian) - Added encoding support for H.264 B P and MPEG-4 SP and fixes
* for ISO C conformance. * for ISO C conformance.
* rev 0.31 (09/02/2009 Gwenole Beauchesne) - VC-1/H264 fields change for V DPAU and XvBA backend * rev 0.31 (09/02/2009 Gwenole Beauchesne) - VC-1/H264 fields change for V DPAU and XvBA backend
* Application needs to relink with t he new library. * Application needs to relink with t he new library.
* *
* rev 0.31.1 (03/29/2009) - Data structure for JPEG encode * rev 0.31.1 (03/29/2009) - Data structure for JPEG encode
* rev 0.31.2 (01/13/2011 Anthony Pabon)- Added a flag to indicate Subpictu
re coordinates are screen
* screen relative rather than sourc
e video relative.
* rev 0.32.0 (01/13/2011 Xiang Haihao) - Add profile into VAPictureParamet
erBufferVC1
* update VAAPI to 0.32.0
* *
* Acknowledgements: * Acknowledgements:
* Some concepts borrowed from XvMC and XvImage. * Some concepts borrowed from XvMC and XvImage.
* Waldo Bastian (Intel), Matt Sottek (Intel), Austin Yuan (Intel), and G wenole Beauchesne (SDS) * Waldo Bastian (Intel), Matt Sottek (Intel), Austin Yuan (Intel), and G wenole Beauchesne (SDS)
* contributed to various aspects of the API. * contributed to various aspects of the API.
*/ */
#ifndef _VA_H_ #ifndef _VA_H_
#define _VA_H_ #define _VA_H_
skipping to change at line 866 skipping to change at line 870
unsigned int pulldown : 1; /* SEQUENCE_LAYER::PULLDOWN */ unsigned int pulldown : 1; /* SEQUENCE_LAYER::PULLDOWN */
unsigned int interlace : 1; /* SEQUENCE_LAYER::INTERLACE */ unsigned int interlace : 1; /* SEQUENCE_LAYER::INTERLACE */
unsigned int tfcntrflag : 1; /* SEQUENCE_LAYER::TFCNTRFLAG * / unsigned int tfcntrflag : 1; /* SEQUENCE_LAYER::TFCNTRFLAG * /
unsigned int finterpflag : 1; /* SEQUENCE_LAYER::FINTERPFLAG */ unsigned int finterpflag : 1; /* SEQUENCE_LAYER::FINTERPFLAG */
unsigned int psf : 1; /* SEQUENCE_LAYER::PSF */ unsigned int psf : 1; /* SEQUENCE_LAYER::PSF */
unsigned int multires : 1; /* METADATA::MULTIRES */ unsigned int multires : 1; /* METADATA::MULTIRES */
unsigned int overlap : 1; /* METADATA::OVERLAP */ unsigned int overlap : 1; /* METADATA::OVERLAP */
unsigned int syncmarker : 1; /* METADATA::SYNCMARKER */ unsigned int syncmarker : 1; /* METADATA::SYNCMARKER */
unsigned int rangered : 1; /* METADATA::RANGERED */ unsigned int rangered : 1; /* METADATA::RANGERED */
unsigned int max_b_frames : 3; /* METADATA::MAXBFRAMES */ unsigned int max_b_frames : 3; /* METADATA::MAXBFRAMES */
unsigned int profile : 2; /* SEQUENCE_LAYER::PROFILE or T he MSB of METADATA::PROFILE */
} bits; } bits;
unsigned int value; unsigned int value;
} sequence_fields; } sequence_fields;
unsigned short coded_width; /* ENTRY_POINT_LAYER::CODED_ WIDTH */ unsigned short coded_width; /* ENTRY_POINT_LAYER::CODED_ WIDTH */
unsigned short coded_height; /* ENTRY_POINT_LAYER::CODED_HEIGHT * / unsigned short coded_height; /* ENTRY_POINT_LAYER::CODED_HEIGHT * /
union { union {
struct { struct {
unsigned int broken_link : 1; /* ENTRY_POINT_LAYER::BROKEN_LI NK */ unsigned int broken_link : 1; /* ENTRY_POINT_LAYER::BROKEN_LI NK */
unsigned int closed_entry : 1; /* ENTRY_POINT_LAYER::CLOSED_EN TRY */ unsigned int closed_entry : 1; /* ENTRY_POINT_LAYER::CLOSED_EN TRY */
skipping to change at line 1683 skipping to change at line 1688
*/ */
typedef VAGenericID VASubpictureID; typedef VAGenericID VASubpictureID;
/* Get maximum number of subpicture formats supported by the implementation */ /* Get maximum number of subpicture formats supported by the implementation */
int vaMaxNumSubpictureFormats ( int vaMaxNumSubpictureFormats (
VADisplay dpy VADisplay dpy
); );
/* flags for subpictures */ /* flags for subpictures */
#define VA_SUBPICTURE_CHROMA_KEYING 0x0001 #define VA_SUBPICTURE_CHROMA_KEYING 0x0001
#define VA_SUBPICTURE_GLOBAL_ALPHA 0x0002 #define VA_SUBPICTURE_GLOBAL_ALPHA 0x0002
#define VA_SUBPICTURE_DESTINATION_IS_SCREEN_COORD 0x0004
/* /*
* Query supported subpicture formats * Query supported subpicture formats
* The caller must provide a "format_list" array that can hold at * The caller must provide a "format_list" array that can hold at
* least vaMaxNumSubpictureFormats() entries. The flags arrary holds the fl ag * least vaMaxNumSubpictureFormats() entries. The flags arrary holds the fl ag
* for each format to indicate additional capabilities for that format. The actual * for each format to indicate additional capabilities for that format. The actual
* number of formats returned in "format_list" is returned in "num_formats" . * number of formats returned in "format_list" is returned in "num_formats" .
* flags: returned value to indicate addtional capabilities * flags: returned value to indicate addtional capabilities
* VA_SUBPICTURE_CHROMA_KEYING - supports chroma-keying * VA_SUBPICTURE_CHROMA_KEYING - supports chroma-keying
* VA_SUBPICTURE_GLOBAL_ALPHA - supports global alpha * VA_SUBPICTURE_GLOBAL_ALPHA - supports global alpha
* VA_SUBPICTURE_DESTINATION_IS_SCREEN_COORD - supports unscaled scr een relative subpictures for On Screen Display
*/ */
VAStatus vaQuerySubpictureFormats ( VAStatus vaQuerySubpictureFormats (
VADisplay dpy, VADisplay dpy,
VAImageFormat *format_list, /* out */ VAImageFormat *format_list, /* out */
unsigned int *flags, /* out */ unsigned int *flags, /* out */
unsigned int *num_formats /* out */ unsigned int *num_formats /* out */
); );
/* /*
* Subpictures are created with an image associated. * Subpictures are created with an image associated.
*/ */
skipping to change at line 1778 skipping to change at line 1786
int num_surfaces, int num_surfaces,
short src_x, /* upper left offset in subpicture */ short src_x, /* upper left offset in subpicture */
short src_y, short src_y,
unsigned short src_width, unsigned short src_width,
unsigned short src_height, unsigned short src_height,
short dest_x, /* upper left offset in surface */ short dest_x, /* upper left offset in surface */
short dest_y, short dest_y,
unsigned short dest_width, unsigned short dest_width,
unsigned short dest_height, unsigned short dest_height,
/* /*
* whether to enable chroma-keying or global-alpha * whether to enable chroma-keying, global-alpha, or screen relative mo de
* see VA_SUBPICTURE_XXX values * see VA_SUBPICTURE_XXX values
*/ */
unsigned int flags unsigned int flags
); );
/* /*
* vaDeassociateSubpicture removes the association of the subpicture with t arget_surfaces. * vaDeassociateSubpicture removes the association of the subpicture with t arget_surfaces.
*/ */
VAStatus vaDeassociateSubpicture ( VAStatus vaDeassociateSubpicture (
VADisplay dpy, VADisplay dpy,
 End of changes. 6 change blocks. 
4 lines changed or deleted 15 lines changed or added


 va_backend.h   va_backend.h 
skipping to change at line 184 skipping to change at line 184
VAStatus (*vaQuerySurfaceStatus) ( VAStatus (*vaQuerySurfaceStatus) (
VADriverContextP ctx, VADriverContextP ctx,
VASurfaceID render_target, VASurfaceID render_target,
VASurfaceStatus *status /* out */ VASurfaceStatus *status /* out */
); );
VAStatus (*vaQuerySurfaceError) ( VAStatus (*vaQuerySurfaceError) (
VADriverContextP ctx, VADriverContextP ctx,
VASurfaceID render_target, VASurfaceID render_target,
VAStatus error_status, VAStatus error_status,
void **error_info /*out*/ void **error_info /*out*/
); );
VAStatus (*vaPutSurface) ( VAStatus (*vaPutSurface) (
VADriverContextP ctx, VADriverContextP ctx,
VASurfaceID surface, VASurfaceID surface,
void* draw, /* Drawable of window system */ void* draw, /* Drawable of window system */
short srcx, short srcx,
short srcy, short srcy,
unsigned short srcw, unsigned short srcw,
unsigned short srch, unsigned short srch,
skipping to change at line 381 skipping to change at line 381
*/ */
void **buffer /* if it is not NULL, map the surface buffer for void **buffer /* if it is not NULL, map the surface buffer for
* CPU access * CPU access
*/ */
); );
VAStatus (*vaUnlockSurface) ( VAStatus (*vaUnlockSurface) (
VADriverContextP ctx, VADriverContextP ctx,
VASurfaceID surface VASurfaceID surface
); );
/* Optional: GLX support hooks */
struct VADriverVTableGLX *glx;
}; };
struct VADriverContext struct VADriverContext
{ {
void *pDriverData; void *pDriverData;
struct VADriverVTable vtable;
void *vtable_tpi; /* the structure is malloc-ed */ /**
* The core VA implementation hooks.
*
* This structure is allocated from libva with calloc().
*/
struct VADriverVTable *vtable;
/**
* The VA/GLX implementation hooks.
*
* This structure is intended for drivers that implement the
* VA/GLX API. The driver implementation is responsible for the
* allocation and deallocation of this structure.
*/
struct VADriverVTableGLX *vtable_glx;
/**
* The VA/EGL implementation hooks.
*
* This structure is intended for drivers that implement the
* VA/EGL API. The driver implementation is responsible for the
* allocation and deallocation of this structure.
*/
struct VADriverVTableEGL *vtable_egl;
/**
* The third-party/private implementation hooks.
*
* This structure is intended for drivers that implement the
* private API. The driver implementation is responsible for the
* allocation and deallocation of this structure.
*/
void *vtable_tpi;
void *native_dpy; void *native_dpy;
int x11_screen; int x11_screen;
int version_major; int version_major;
int version_minor; int version_minor;
int max_profiles; int max_profiles;
int max_entrypoints; int max_entrypoints;
int max_attributes; int max_attributes;
int max_image_formats; int max_image_formats;
int max_subpic_formats; int max_subpic_formats;
int max_display_attributes; int max_display_attributes;
const char *str_vendor; const char *str_vendor;
void *handle; /* dlopen handle */ void *handle; /* dlopen handle */
void *dri_state; void *dri_state;
void *glx; /* opaque for GLX code */ void *glx; /* opaque for GLX code */
unsigned long reserved[45]; /* reserve for future add-ins, decr
ease the subscript accordingly */
}; };
#define VA_DISPLAY_MAGIC 0x56414430 /* VAD0 */ #define VA_DISPLAY_MAGIC 0x56414430 /* VAD0 */
struct VADisplayContext struct VADisplayContext
{ {
int vadpy_magic; int vadpy_magic;
VADisplayContextP pNext; VADisplayContextP pNext;
VADriverContextP pDriverContext; VADriverContextP pDriverContext;
 End of changes. 4 change blocks. 
7 lines changed or deleted 39 lines changed or added


 va_version.h   va_version.h 
skipping to change at line 40 skipping to change at line 40
* *
* The major version of the VA library (1, if %VA_VERSION is 1.2.3) * The major version of the VA library (1, if %VA_VERSION is 1.2.3)
*/ */
#define VA_MAJOR_VERSION (0) #define VA_MAJOR_VERSION (0)
/** /**
* VA_MINOR_VERSION: * VA_MINOR_VERSION:
* *
* The minor version of the VA library (2, if %VA_VERSION is 1.2.3) * The minor version of the VA library (2, if %VA_VERSION is 1.2.3)
*/ */
#define VA_MINOR_VERSION (31) #define VA_MINOR_VERSION (32)
/** /**
* VA_MICRO_VERSION: * VA_MICRO_VERSION:
* *
* The micro version of the VA library (3, if %VA_VERSION is 1.2.3) * The micro version of the VA library (3, if %VA_VERSION is 1.2.3)
*/ */
#define VA_MICRO_VERSION (1) #define VA_MICRO_VERSION (0)
/** /**
* VA_VERSION: * VA_VERSION:
* *
* The full version of the VA library, like 1.2.3 * The full version of the VA library, like 1.2.3
*/ */
#define VA_VERSION 0.31.1 #define VA_VERSION 0.32.0
/** /**
* VA_VERSION_S: * VA_VERSION_S:
* *
* The full version of the VA library, in string form (suited for * The full version of the VA library, in string form (suited for
* string concatenation) * string concatenation)
*/ */
#define VA_VERSION_S "0.31.1" #define VA_VERSION_S "0.32.0"
/** /**
* VA_VERSION_HEX: * VA_VERSION_HEX:
* *
* Numerically encoded version of the VA library, like 0x010203 * Numerically encoded version of the VA library, like 0x010203
*/ */
#define VA_VERSION_HEX ((VA_MAJOR_VERSION << 24) | \ #define VA_VERSION_HEX ((VA_MAJOR_VERSION << 24) | \
(VA_MINOR_VERSION << 16) | \ (VA_MINOR_VERSION << 16) | \
(VA_MICRO_VERSION << 8)) (VA_MICRO_VERSION << 8))
 End of changes. 4 change blocks. 
4 lines changed or deleted 4 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/