diff options
author | Xiang, Haihao <haihao.xiang@intel.com> | 2017-05-02 10:46:27 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-02 10:46:27 +0800 |
commit | 22bbdaab115af6d779194faa7742105254fb7169 (patch) | |
tree | 9e20c0736f9234c2a0709caf41305629b75c3c0d | |
parent | f88aa39384cca36538e37671c5a68a07235f1d84 (diff) | |
parent | 63e14fc10177f88fb1350681120b4bce15ea81a7 (diff) | |
download | libva-22bbdaab115af6d779194faa7742105254fb7169.tar.gz |
Merge pull request #37 from cwhuang/master
A series patches for Android
-rw-r--r--[-rwxr-xr-x] | va/Android.mk | 89 | ||||
-rw-r--r-- | va/android/va_android.cpp | 2 | ||||
-rw-r--r-- | va/va.c | 18 | ||||
-rw-r--r-- | va/va_android.h | 5 | ||||
-rw-r--r--[-rwxr-xr-x] | va/va_enc_vp9.h | 0 |
5 files changed, 37 insertions, 77 deletions
diff --git a/va/Android.mk b/va/Android.mk index b6f6f4f..de22725 100755..100644 --- a/va/Android.mk +++ b/va/Android.mk @@ -25,13 +25,8 @@ LOCAL_PATH:= $(call my-dir) -LIBVA_DRIVERS_PATH_32 = /system/lib -LIBVA_DRIVERS_PATH_64 = /system/lib64 - -# Version set to Android Jelly Bean -ALOG_VERSION_REQ := 4.1 -ALOG_VERSION := $(filter $(ALOG_VERSION_REQ),$(firstword $(sort $(PLATFORM_VERSION) \ - $(ALOG_VERSION_REQ)))) +LIBVA_DRIVERS_PATH_32 := /vendor/lib/dri +LIBVA_DRIVERS_PATH_64 := /vendor/lib64/dri include $(CLEAR_VARS) @@ -44,57 +39,39 @@ LOCAL_SRC_FILES := \ va_fool.c LOCAL_CFLAGS_32 += \ - -DANDROID \ -DVA_DRIVERS_PATH="\"$(LIBVA_DRIVERS_PATH_32)\"" \ - -DLOG_TAG=\"libva\" LOCAL_CFLAGS_64 += \ - -DANDROID \ -DVA_DRIVERS_PATH="\"$(LIBVA_DRIVERS_PATH_64)\"" \ - -DLOG_TAG=\"libva\" -# Android Jelly Bean defined ALOGx, older versions use LOGx -ifeq ($(ALOG_VERSION), $(ALOG_VERSION_REQ)) -LOCAL_CFLAGS += -DANDROID_ALOG -else -LOCAL_CFLAGS += -DANDROID_LOG -endif +LOCAL_CFLAGS := \ + $(if $(filter user,$(TARGET_BUILD_VARIANT)),,-DENABLE_VA_MESSAGING) \ + -DLOG_TAG=\"libva\" -LOCAL_C_INCLUDES += \ - $(TARGET_OUT_HEADERS)/libva \ - $(LOCAL_PATH)/x11 \ - $(LOCAL_PATH)/.. - -LOCAL_COPY_HEADERS := \ - va.h \ - va_backend.h \ - va_dec_hevc.h \ - va_dec_jpeg.h \ - va_drmcommon.h \ - va_enc_hevc.h \ - va_enc_jpeg.h \ - va_enc_vp8.h \ - va_enc_vp9.h \ - va_dec_vp9.h \ - va_version.h - -LOCAL_COPY_HEADERS_TO := libva/va +LOCAL_C_INCLUDES := $(LOCAL_PATH)/.. LOCAL_MODULE_TAGS := optional LOCAL_MODULE := libva +LOCAL_MODULE_CLASS := SHARED_LIBRARIES +LOCAL_PROPRIETARY_MODULE := true LOCAL_SHARED_LIBRARIES := libdl libdrm libcutils liblog -include $(BUILD_SHARED_LIBRARY) +intermediates := $(call local-generated-sources-dir) + +LOCAL_EXPORT_C_INCLUDE_DIRS := \ + $(intermediates) \ + $(LOCAL_C_INCLUDES) -GEN := $(LOCAL_PATH)/va_version.h +GEN := $(intermediates)/va/va_version.h $(GEN): SCRIPT := $(LOCAL_PATH)/../build/gen_version.sh -$(GEN): PRIVATE_PATH := $(LOCAL_PATH) -$(GEN): PRIVATE_CUSTOM_TOOL = sh $(SCRIPT) $(PRIVATE_PATH)/.. $(PRIVATE_PATH)/va_version.h.in > $@ -$(GEN): $(LOCAL_PATH)/%.h : $(LOCAL_PATH)/%.h.in $(SCRIPT) $(LOCAL_PATH)/../configure.ac +$(GEN): PRIVATE_CUSTOM_TOOL = sh $(SCRIPT) $(<D)/.. $< > $@ +$(GEN): $(intermediates)/va/%.h : $(LOCAL_PATH)/%.h.in $(LOCAL_PATH)/../configure.ac $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) +include $(BUILD_SHARED_LIBRARY) + # For libva-android # ===================================================== @@ -105,17 +82,11 @@ LOCAL_SRC_FILES := \ drm/va_drm_utils.c LOCAL_CFLAGS += \ - -DANDROID -DLOG_TAG=\"libva-android\" + -DLOG_TAG=\"libva-android\" LOCAL_C_INCLUDES += \ - $(TARGET_OUT_HEADERS)/libva \ - $(TARGET_OUT_HEADERS)/libdrm \ $(LOCAL_PATH)/drm -LOCAL_COPY_HEADERS_TO := libva/va - -LOCAL_COPY_HEADERS := va_android.h - LOCAL_MODULE_TAGS := optional LOCAL_MODULE := libva-android @@ -133,15 +104,7 @@ LOCAL_SRC_FILES := \ egl/va_egl.c LOCAL_CFLAGS += \ - -DANDROID -DLOG_TAG=\"libva-egl\" - -LOCAL_C_INCLUDES += \ - $(TARGET_OUT_HEADERS)/libva \ - $(LOCAL_PATH)/x11 - -LOCAL_COPY_HEADERS_TO := libva/va - -LOCAL_COPY_HEADERS := egl/va_egl.h egl/va_backend_egl.h + -DLOG_TAG=\"libva-egl\" LOCAL_MODULE_TAGS := optional LOCAL_MODULE := libva-egl @@ -158,17 +121,7 @@ include $(CLEAR_VARS) LOCAL_SRC_FILES := va_tpi.c -LOCAL_CFLAGS += -DANDROID -DLOG_TAG=\"libva-tpi\" - -LOCAL_C_INCLUDES += \ - $(TARGET_OUT_HEADERS)/libva \ - $(LOCAL_PATH)/.. - -LOCAL_COPY_HEADERS_TO := libva/va - -LOCAL_COPY_HEADERS := \ - va_tpi.h \ - va_backend_tpi.h +LOCAL_CFLAGS += -DLOG_TAG=\"libva-tpi\" LOCAL_SHARED_LIBRARIES := libva diff --git a/va/android/va_android.cpp b/va/android/va_android.cpp index ebbfbd3..0c2b0b5 100644 --- a/va/android/va_android.cpp +++ b/va/android/va_android.cpp @@ -194,7 +194,7 @@ extern "C" { VAStatus vaPutSurface ( VADisplay dpy, VASurfaceID surface, - sp<ISurface> draw, /* Android Surface/Window */ + sp<ANativeWindow> draw, /* Android Native Window */ short srcx, short srcy, unsigned short srcw, @@ -37,6 +37,16 @@ #include <string.h> #include <dlfcn.h> #include <unistd.h> +#ifdef ANDROID +#include <cutils/log.h> +/* support versions < JellyBean */ +#ifndef ALOGE +#define ALOGE LOGE +#endif +#ifndef ALOGI +#define ALOGI LOGI +#endif +#endif #define DRIVER_EXTENSION "_drv_video.so" @@ -108,10 +118,8 @@ int vaDisplayIsValid(VADisplay dpy) static void default_log_error(const char *buffer) { -# ifdef ANDROID_ALOG +# ifdef ANDROID ALOGE("%s", buffer); -# elif ANDROID_LOG - LOGE("%s", buffer); # else fprintf(stderr, "libva error: %s", buffer); # endif @@ -119,10 +127,8 @@ static void default_log_error(const char *buffer) static void default_log_info(const char *buffer) { -# ifdef ANDROID_ALOG +# ifdef ANDROID ALOGI("%s", buffer); -# elif ANDROID_LOG - LOGI("%s", buffer); # else fprintf(stderr, "libva info: %s", buffer); # endif diff --git a/va/va_android.h b/va/va_android.h index 796ab63..92bf1e0 100644 --- a/va/va_android.h +++ b/va/va_android.h @@ -48,7 +48,8 @@ VADisplay vaGetDisplay ( #ifdef __cplusplus #ifdef ANDROID -#include <surfaceflinger/ISurface.h> +#include <system/window.h> +#include <utils/StrongPointer.h> using namespace android; /* @@ -62,7 +63,7 @@ using namespace android; VAStatus vaPutSurface ( VADisplay dpy, VASurfaceID surface, - sp<ISurface> draw, /* Android Window/Surface */ + sp<ANativeWindow> draw, /* Android Native Window */ short srcx, short srcy, unsigned short srcw, diff --git a/va/va_enc_vp9.h b/va/va_enc_vp9.h index cd870e7..cd870e7 100755..100644 --- a/va/va_enc_vp9.h +++ b/va/va_enc_vp9.h |