summaryrefslogtreecommitdiff
path: root/va/android/va_android.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'va/android/va_android.cpp')
-rw-r--r--va/android/va_android.cpp37
1 files changed, 36 insertions, 1 deletions
diff --git a/va/android/va_android.cpp b/va/android/va_android.cpp
index 4eb90a2..b4727aa 100644
--- a/va/android/va_android.cpp
+++ b/va/android/va_android.cpp
@@ -250,7 +250,7 @@ VADisplay vaGetDisplay (
pDisplayContext->vaDestroy = va_DisplayContextDestroy;
pDisplayContext->vaGetDriverName = va_DisplayContextGetDriverName;
pDisplayContexts = pDisplayContext;
- pDriverContext->dri_state = dri_state;
+ pDriverContext->dri_state = dri_state;
dpy = (VADisplay)pDisplayContext;
}
else
@@ -272,6 +272,33 @@ VADisplay vaGetDisplay (
#ifdef ANDROID
+extern "C" {
+ extern int fool_postp; /* do nothing for vaPutSurface if set */
+ extern int trace_flag; /* trace vaPutSurface parameters */
+
+ void va_TracePutSurface (
+ VADisplay dpy,
+ VASurfaceID surface,
+ void *draw, /* the target Drawable */
+ short srcx,
+ short srcy,
+ unsigned short srcw,
+ unsigned short srch,
+ short destx,
+ short desty,
+ unsigned short destw,
+ unsigned short desth,
+ VARectangle *cliprects, /* client supplied clip list */
+ unsigned int number_cliprects, /* number of clip rects in the clip list */
+ unsigned int flags /* de-interlacing flags */
+ );
+}
+
+#define VA_TRACE(trace_func,...) \
+ if (trace_flag) { \
+ trace_func(__VA_ARGS__); \
+ }
+
VAStatus vaPutSurface (
VADisplay dpy,
VASurfaceID surface,
@@ -291,8 +318,16 @@ VAStatus vaPutSurface (
{
VADriverContextP ctx;
+ if (fool_postp)
+ return VA_STATUS_SUCCESS;
+
CHECK_DISPLAY(dpy);
ctx = CTX(dpy);
+
+ VA_TRACE(va_TracePutSurface, dpy, surface, static_cast<void*>(&draw), srcx, srcy, srcw, srch,
+ destx, desty, destw, desth,
+ cliprects, number_cliprects, flags );
+
return ctx->vtable.vaPutSurface( ctx, surface, static_cast<void*>(&draw), srcx, srcy, srcw, srch,
destx, desty, destw, desth,
cliprects, number_cliprects, flags );