Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(16)

Unified Diff: third_party/libva/va/va_backend.h

Issue 62273006: Update libva headers to the latest release (1.2.1). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@lkgr
Patch Set: remove two header files, fix comment style Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/libva/va/va_backend.h
diff --git a/third_party/libva/va/va_backend.h b/third_party/libva/va/va_backend.h
index 47ca71902da701615d68e97d53cb2dd83205dc94..9fe3dcfb9bf7fde419fcd8fb3507adac8b1ca4f1 100644
--- a/third_party/libva/va/va_backend.h
+++ b/third_party/libva/va/va_backend.h
@@ -35,6 +35,23 @@
typedef struct VADriverContext *VADriverContextP;
typedef struct VADisplayContext *VADisplayContextP;
+/** \brief VA display types. */
+enum {
+ /** \brief Mask to major identifier for VA display type. */
+ VA_DISPLAY_MAJOR_MASK = 0xf0,
+
+ /** \brief VA/X11 API is used, through vaGetDisplay() entry-point. */
+ VA_DISPLAY_X11 = 0x10,
+ /** \brief VA/GLX API is used, through vaGetDisplayGLX() entry-point. */
+ VA_DISPLAY_GLX = (VA_DISPLAY_X11 | (1 << 0)),
+ /** \brief VA/Android API is used, through vaGetDisplay() entry-point. */
+ VA_DISPLAY_ANDROID = 0x20,
+ /** \brief VA/DRM API is used, through vaGetDisplayDRM() entry-point. */
+ VA_DISPLAY_DRM = 0x30,
+ /** \brief VA/Wayland API is used, through vaGetDisplayWl() entry-point. */
+ VA_DISPLAY_WAYLAND = 0x40,
+};
+
struct VADriverVTable
{
VAStatus (*vaTerminate) ( VADriverContextP ctx );
@@ -374,6 +391,35 @@ struct VADriverVTable
VADriverContextP ctx,
VASurfaceID surface
);
+
+ /* DEPRECATED */
+ VAStatus
+ (*vaGetSurfaceAttributes)(
+ VADriverContextP dpy,
+ VAConfigID config,
+ VASurfaceAttrib *attrib_list,
+ unsigned int num_attribs
+ );
+
+ VAStatus
+ (*vaCreateSurfaces2)(
+ VADriverContextP ctx,
+ unsigned int format,
+ unsigned int width,
+ unsigned int height,
+ VASurfaceID *surfaces,
+ unsigned int num_surfaces,
+ VASurfaceAttrib *attrib_list,
+ unsigned int num_attribs
+ );
+
+ VAStatus
+ (*vaQuerySurfaceAttributes)(
+ VADriverContextP dpy,
+ VAConfigID config,
+ VASurfaceAttrib *attrib_list,
+ unsigned int *num_attribs
+ );
};
struct VADriverContext
@@ -427,11 +473,43 @@ struct VADriverContext
const char *str_vendor;
void *handle; /* dlopen handle */
-
- void *dri_state;
+
+ /**
+ * \brief DRM state.
+ *
+ * This field holds driver specific data for DRM-based
+ * drivers. This structure is allocated from libva with
+ * calloc(). Do not deallocate from within VA driver
+ * implementations.
+ *
+ * All structures shall be derived from struct drm_state. So, for
+ * instance, this field holds a dri_state structure for VA/X11
+ * drivers that use the DRM protocol.
+ */
+ void *drm_state;
+
void *glx; /* opaque for GLX code */
- void *egl;
- unsigned long reserved[44]; /* reserve for future add-ins, decrease the subscript accordingly */
+
+ /** \brief VA display type. */
+ unsigned long display_type;
+
+ /**
+ * The VA/Wayland implementation hooks.
+ *
+ * This structure is intended for drivers that implement the
+ * VA/Wayland API. libVA allocates this structure with calloc()
+ * and owns the resulting memory.
+ */
+ struct VADriverVTableWayland *vtable_wayland;
+
+ /**
+ * \brief The VA/VPP implementation hooks.
+ *
+ * This structure is allocated from libva with calloc().
+ */
+ struct VADriverVTableVPP *vtable_vpp;
+
+ unsigned long reserved[42]; /* reserve for future add-ins, decrease the subscript accordingly */
};
#define VA_DISPLAY_MAGIC 0x56414430 /* VAD0 */
@@ -456,16 +534,6 @@ struct VADisplayContext
);
void *opaque; /* opaque for display extensions (e.g. GLX) */
-
- VAStatus (*vaCreateNativePixmap) (
- VADisplayContextP pDisplayContext,
- unsigned int width,
- unsigned int height,
- void **native_pixmap);
-
- VAStatus (*vaFreeNativePixmap) (
- VADisplayContextP pDisplayContext,
- void *native_pixmap);
};
typedef VAStatus (*VADriverInit) (

Powered by Google App Engine
This is Rietveld 408576698