summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-prod (mdb) <android-build-team-robot@google.com>2017-11-01 22:13:57 +0000
committerandroid-build-prod (mdb) <android-build-team-robot@google.com>2017-11-01 22:13:57 +0000
commitc2afd07924c4e00a431bd6c6fde1f164351671d7 (patch)
tree53589257cba7d531a0d7b615ea6495ab14160197
parentfeff90bd79e7152d06f4275c30209af2826ae8ba (diff)
parenta49a95403f6b214f91fb9c6251dd7440d5069d48 (diff)
downloadlibva-sdk-release.tar.gz
Snap for 4429331 from a49a95403f6b214f91fb9c6251dd7440d5069d48 to sdk-releasesdk-release
Change-Id: Ife7cd5df550a445ce914316062106773d4594dac
-rwxr-xr-xva/Android.mk2
-rw-r--r--va/android/va_android.cpp1
-rwxr-xr-xva/va.c10
-rw-r--r--va/va_android.h2
-rwxr-xr-xva/va_trace.c9
5 files changed, 12 insertions, 12 deletions
diff --git a/va/Android.mk b/va/Android.mk
index 0ea46c7..92443ac 100755
--- a/va/Android.mk
+++ b/va/Android.mk
@@ -121,7 +121,7 @@ LOCAL_CFLAGS += -Werror
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := libva-android
-LOCAL_SHARED_LIBRARIES := libva libdrm
+LOCAL_SHARED_LIBRARIES := libva libdrm libnativewindow
include $(BUILD_SHARED_LIBRARY)
diff --git a/va/android/va_android.cpp b/va/android/va_android.cpp
index 3e220a6..efbc35a 100644
--- a/va/android/va_android.cpp
+++ b/va/android/va_android.cpp
@@ -39,6 +39,7 @@
#include <dlfcn.h>
#include <errno.h>
+#include <system/window.h>
#define CHECK_SYMBOL(func) { if (!func) printf("func %s not found\n", #func); return VA_STATUS_ERROR_UNKNOWN; }
#define DEVICE_NAME "/dev/dri/card0"
diff --git a/va/va.c b/va/va.c
index 3ea8503..f319e06 100755
--- a/va/va.c
+++ b/va/va.c
@@ -464,17 +464,14 @@ VAStatus vaInitialize (
if ((VA_STATUS_SUCCESS == vaStatus) &&
driver_name_env && (geteuid() == getuid())) {
/* Don't allow setuid apps to use LIBVA_DRIVER_NAME */
- if (driver_name) /* memory is allocated in va_getDriverName */
- free(driver_name);
-
- driver_name = strdup(driver_name_env);
+ driver_name = "pvr";
vaStatus = VA_STATUS_SUCCESS;
va_infoMessage("User requested driver '%s'\n", driver_name);
}
if ((VA_STATUS_SUCCESS == vaStatus) && (driver_name != NULL)) {
vaStatus = va_openDriver(dpy, driver_name);
- va_infoMessage("va_openDriver() returns %d\n", vaStatus);
+ va_infoMessage("va_openDriver() returns %d, driver_name = %s\n", vaStatus, driver_name);
*major_version = VA_MAJOR_VERSION;
*minor_version = VA_MINOR_VERSION;
@@ -482,9 +479,6 @@ VAStatus vaInitialize (
va_errorMessage("va_getDriverName() failed with %s,driver_name=%s\n",
vaErrorStr(vaStatus), driver_name);
- if (driver_name)
- free(driver_name);
-
VA_TRACE_LOG(va_TraceInitialize, dpy, major_version, minor_version);
return vaStatus;
diff --git a/va/va_android.h b/va/va_android.h
index 978becd..1268955 100644
--- a/va/va_android.h
+++ b/va/va_android.h
@@ -48,9 +48,9 @@ VADisplay vaGetDisplay (
#ifdef __cplusplus
#ifdef ANDROID
-#include <system/window.h>
#include <utils/StrongPointer.h>
using namespace android;
+struct ANativeWindow;
/*
* Output rendering
diff --git a/va/va_trace.c b/va/va_trace.c
index 4eda1ce..e63b7bf 100755
--- a/va/va_trace.c
+++ b/va/va_trace.c
@@ -47,6 +47,8 @@
#include <time.h>
#include <errno.h>
+#define LIBVA_TRACE_FILE "/data/mediadrm/libva.log"
+
/*
* Env. to debug some issue, e.g. the decode/encode issue in a video conference scenerio:
* .LIBVA_TRACE=log_file: general VA parameters saved into log_file
@@ -153,7 +155,9 @@ do { \
void va_TraceInit(VADisplay dpy)
{
- char env_value[1024];
+ char env_value[1024] = {0};
+ // It's used to get value from libva.conf, just use to check value.
+ char va_value[1024] = {0};
unsigned short suffix = 0xffff & ((unsigned int)time(NULL));
FILE *tmp;
struct trace_context *trace_ctx = calloc(sizeof(struct trace_context), 1);
@@ -161,7 +165,8 @@ void va_TraceInit(VADisplay dpy)
if (trace_ctx == NULL)
return;
- if (va_parseConfig("LIBVA_TRACE", &env_value[0]) == 0) {
+ if (va_parseConfig("LIBVA_TRACE", &va_value[0]) == 0) {
+ strcpy(env_value, LIBVA_TRACE_FILE);
FILE_NAME_SUFFIX(env_value);
trace_ctx->trace_log_fn = strdup(env_value);