media: Move Video HAL libraries to vendor image
Move video HAL libraries from system/lib/ to
/system/vendor/lib.
Remove libbinder instances from Video HAL.
Change-Id: I7f2674fee7fc978281f777c25e26a0927a3964c8
diff --git a/libc2dcolorconvert/Android.mk b/libc2dcolorconvert/Android.mk
index ab7bab5..93eb949 100644
--- a/libc2dcolorconvert/Android.mk
+++ b/libc2dcolorconvert/Android.mk
@@ -16,6 +16,10 @@
LOCAL_MODULE := libc2dcolorconvert
+LOCAL_PROPRIETARY_MODULE := true
+
+LOCAL_MODULE_OWNER := qti
+
LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
include $(BUILD_SHARED_LIBRARY)
diff --git a/libstagefrighthw/Android.mk b/libstagefrighthw/Android.mk
index 01c1caa..68368b5 100644
--- a/libstagefrighthw/Android.mk
+++ b/libstagefrighthw/Android.mk
@@ -35,13 +35,14 @@
frameworks/native/include/media/hardware
LOCAL_SHARED_LIBRARIES := \
- libbinder \
libutils \
libcutils \
libdl \
- libui \
LOCAL_MODULE := libstagefrighthw
+LOCAL_PROPRIETARY_MODULE := true
+LOCAL_MODULE_OWNER := qti
+
include $(BUILD_SHARED_LIBRARY)
diff --git a/mm-core/Android.mk b/mm-core/Android.mk
index c2fd740..c64e9b7 100644
--- a/mm-core/Android.mk
+++ b/mm-core/Android.mk
@@ -90,6 +90,8 @@
LOCAL_PRELINK_MODULE := false
LOCAL_MODULE := libOmxCore
LOCAL_MODULE_TAGS := optional
+LOCAL_PROPRIETARY_MODULE := true
+LOCAL_MODULE_OWNER := qti
LOCAL_SHARED_LIBRARIES := liblog libdl libcutils
LOCAL_CFLAGS := $(OMXCORE_CFLAGS)
@@ -114,6 +116,8 @@
LOCAL_PRELINK_MODULE := false
LOCAL_MODULE := libmm-omxcore
LOCAL_MODULE_TAGS := optional
+LOCAL_PROPRIETARY_MODULE := true
+LOCAL_MODULE_OWNER := qti
LOCAL_SHARED_LIBRARIES := liblog libdl libcutils
LOCAL_CFLAGS := $(OMXCORE_CFLAGS)
diff --git a/mm-video-v4l2/vidc/vdec/Android.mk b/mm-video-v4l2/vidc/vdec/Android.mk
index 343b575..8a09d08 100644
--- a/mm-video-v4l2/vidc/vdec/Android.mk
+++ b/mm-video-v4l2/vidc/vdec/Android.mk
@@ -100,12 +100,14 @@
LOCAL_MODULE := libOmxVdec
LOCAL_MODULE_TAGS := optional
+LOCAL_PROPRIETARY_MODULE := true
+LOCAL_MODULE_OWNER := qti
LOCAL_CFLAGS := $(libmm-vdec-def) -Werror -Wno-error
LOCAL_C_INCLUDES += $(libmm-vdec-inc)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libmm-vdec-add-dep)
LOCAL_PRELINK_MODULE := false
-LOCAL_SHARED_LIBRARIES := liblog libutils libbinder libcutils libdl
+LOCAL_SHARED_LIBRARIES := liblog libutils libcutils libdl
LOCAL_SHARED_LIBRARIES += libqdMetaData
@@ -133,6 +135,8 @@
LOCAL_MODULE := libOmxVdecHevc
LOCAL_MODULE_TAGS := optional
+LOCAL_PROPRIETARY_MODULE := true
+LOCAL_MODULE_OWNER := qti
LOCAL_CFLAGS := $(libmm-vdec-def)
LOCAL_C_INCLUDES += $(libmm-vdec-inc)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libmm-vdec-add-dep)
diff --git a/mm-video-v4l2/vidc/vdec/inc/omx_vdec.h b/mm-video-v4l2/vidc/vdec/inc/omx_vdec.h
index f017b6e..500bac4 100644
--- a/mm-video-v4l2/vidc/vdec/inc/omx_vdec.h
+++ b/mm-video-v4l2/vidc/vdec/inc/omx_vdec.h
@@ -66,7 +66,6 @@
//#include <binder/MemoryHeapIon.h>
//#else
#endif
-#include <binder/MemoryHeapBase.h>
#include <ui/ANativeObjectBase.h>
extern "C" {
#include <utils/Log.h>
@@ -81,6 +80,7 @@
#include <media/hardware/HardwareAPI.h>
#endif
+#include <sys/mman.h>
#include <unistd.h>
#if defined (_ANDROID_ICS_)
@@ -117,28 +117,6 @@
OMX_API void * get_omx_component_factory_fn(void);
}
-#ifdef _ANDROID_
-using namespace android;
-#ifdef USE_ION
-class VideoHeap : public MemoryHeapBase
-{
- public:
- VideoHeap(int devicefd, size_t size, void* base,ion_user_handle_t handle,int mapfd);
- virtual ~VideoHeap() {}
- private:
- int m_ion_device_fd;
- ion_user_handle_t m_ion_handle;
-};
-#else
-// local pmem heap object
-class VideoHeap : public MemoryHeapBase
-{
- public:
- VideoHeap(int fd, size_t size, void* base);
- virtual ~VideoHeap() {}
-};
-#endif
-#endif // _ANDROID_
//////////////////////////////////////////////////////////////////////////////
// Module specific globals
//////////////////////////////////////////////////////////////////////////////
@@ -884,14 +862,6 @@
// encapsulate the waiting states.
uint64_t m_flags;
-#ifdef _ANDROID_
- // Heap pointer to frame buffers
- struct vidc_heap {
- sp<MemoryHeapBase> video_heap_ptr;
- };
- struct vidc_heap *m_heap_ptr;
- unsigned int m_heap_count;
-#endif //_ANDROID_
// store I/P PORT state
OMX_BOOL m_inp_bEnabled;
// store O/P PORT state
@@ -1081,11 +1051,6 @@
#endif
unsigned char *pmem_baseaddress[MAX_COUNT];
unsigned long pmem_fd[MAX_COUNT];
- struct vidc_heap {
- sp<MemoryHeapBase> video_heap_ptr;
- };
- struct vidc_heap m_heap_ptr[MAX_COUNT];
-
OMX_ERRORTYPE cache_ops(unsigned int index, unsigned int cmd);
inline OMX_ERRORTYPE cache_clean_buffer(unsigned int index) {
return cache_ops(index, ION_IOC_CLEAN_CACHES);
diff --git a/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp b/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
index 278528c..007a3d0 100644
--- a/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
+++ b/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
@@ -519,26 +519,6 @@
return (new omx_vdec);
}
-#ifdef _ANDROID_
-#ifdef USE_ION
-VideoHeap::VideoHeap(int devicefd, size_t size, void* base,
- ion_user_handle_t handle, int ionMapfd)
-{
- (void) devicefd;
- (void) size;
- (void) base;
- (void) handle;
- (void) ionMapfd;
- // ionInit(devicefd, base, size, 0 , MEM_DEVICE,handle,ionMapfd);
-}
-#else
-VideoHeap::VideoHeap(int fd, size_t size, void* base)
-{
- // dup file descriptor, map once, use pmem
- init(dup(fd), base, size, 0 , MEM_DEVICE);
-}
-#endif
-#endif // _ANDROID_
/* ======================================================================
FUNCTION
omx_vdec::omx_vdec
@@ -572,9 +552,6 @@
m_inp_bPopulated(OMX_FALSE),
m_out_bPopulated(OMX_FALSE),
m_flags(0),
-#ifdef _ANDROID_
- m_heap_ptr(NULL),
-#endif
m_inp_bEnabled(OMX_TRUE),
m_out_bEnabled(OMX_TRUE),
m_in_alloc_cnt(0),
@@ -11184,7 +11161,6 @@
#ifdef USE_ION
omx->free_ion_memory(&op_buf_ion_info[index]);
#endif
- m_heap_ptr[index].video_heap_ptr = NULL;
if (allocated_count > 0)
allocated_count--;
else
@@ -11257,11 +11233,7 @@
omx->free_ion_memory(&op_buf_ion_info[i]);
return OMX_ErrorInsufficientResources;
}
- m_heap_ptr[i].video_heap_ptr = new VideoHeap (
- op_buf_ion_info[i].ion_device_fd,buffer_size_req,
- pmem_baseaddress[i],op_buf_ion_info[i].ion_alloc_data.handle,pmem_fd[i]);
#endif
- m_pmem_info_client[i].pmem_fd = (unsigned long)m_heap_ptr[i].video_heap_ptr.get();
m_pmem_info_client[i].offset = 0;
m_platform_entry_client[i].entry = (void *)&m_pmem_info_client[i];
m_platform_entry_client[i].type = OMX_QCOM_PLATFORM_PRIVATE_PMEM;
diff --git a/mm-video-v4l2/vidc/venc/Android.mk b/mm-video-v4l2/vidc/venc/Android.mk
index 8602b76..8a5e9b1 100644
--- a/mm-video-v4l2/vidc/venc/Android.mk
+++ b/mm-video-v4l2/vidc/venc/Android.mk
@@ -81,13 +81,15 @@
LOCAL_MODULE := libOmxVenc
LOCAL_MODULE_TAGS := optional
+LOCAL_PROPRIETARY_MODULE := true
+LOCAL_MODULE_OWNER := qti
LOCAL_CFLAGS := $(libmm-venc-def)
LOCAL_CLANG := false
LOCAL_C_INCLUDES := $(libmm-venc-inc)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libmm-venc-add-dep)
LOCAL_PRELINK_MODULE := false
-LOCAL_SHARED_LIBRARIES := liblog libutils libbinder libcutils \
+LOCAL_SHARED_LIBRARIES := liblog libutils libcutils \
libc2dcolorconvert libdl libgui
LOCAL_SHARED_LIBRARIES += libqdMetaData
LOCAL_STATIC_LIBRARIES := libOmxVidcCommon
@@ -114,12 +116,14 @@
LOCAL_MODULE := libOmxSwVencMpeg4
LOCAL_MODULE_TAGS := optional
+LOCAL_PROPRIETARY_MODULE := true
+LOCAL_MODULE_OWNER := qti
LOCAL_CFLAGS := $(libmm-venc-def)
LOCAL_C_INCLUDES := $(libmm-venc-inc)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libmm-venc-add-dep)
LOCAL_PRELINK_MODULE := false
-LOCAL_SHARED_LIBRARIES := liblog libutils libbinder libcutils \
+LOCAL_SHARED_LIBRARIES := liblog libutils libcutils \
libc2dcolorconvert libdl libgui
LOCAL_SHARED_LIBRARIES += libMpeg4SwEncoder
LOCAL_STATIC_LIBRARIES := libOmxVidcCommon
diff --git a/mm-video-v4l2/vidc/venc/inc/omx_video_base.h b/mm-video-v4l2/vidc/venc/inc/omx_video_base.h
index 21c6a7b..5c4ea41 100644
--- a/mm-video-v4l2/vidc/venc/inc/omx_video_base.h
+++ b/mm-video-v4l2/vidc/venc/inc/omx_video_base.h
@@ -47,7 +47,6 @@
#include <stdio.h>
#include <sys/mman.h>
#ifdef _ANDROID_
-#include <binder/MemoryHeapBase.h>
#ifdef _ANDROID_ICS_
#include "QComOMXMetadata.h"
#endif
@@ -70,14 +69,6 @@
#ifdef _ANDROID_
using namespace android;
-// local pmem heap object
-class VideoHeap : public MemoryHeapBase
-{
- public:
- VideoHeap(int fd, size_t size, void* base);
- virtual ~VideoHeap() {}
-};
-
#include <utils/Log.h>
#endif // _ANDROID_
@@ -670,10 +661,6 @@
uint64_t m_flags;
uint64_t m_etb_count;
uint64_t m_fbd_count;
-#ifdef _ANDROID_
- // Heap pointer to frame buffers
- sp<MemoryHeapBase> m_heap_ptr;
-#endif //_ANDROID_
// to know whether Event Port Settings change has been triggered or not.
bool m_event_port_settings_sent;
OMX_U8 m_cRole[OMX_MAX_STRINGNAME_SIZE];
diff --git a/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp b/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
index 2675dac..cce4e79 100644
--- a/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
+++ b/mm-video-v4l2/vidc/venc/src/omx_video_base.cpp
@@ -221,15 +221,6 @@
}
-
-#ifdef _ANDROID_
-VideoHeap::VideoHeap(int fd, size_t size, void* base)
-{
- // dup file descriptor, map once, use pmem
- init(dup(fd), base, size, 0 , MEM_DEVICE);
-}
-#endif // _ANDROID_
-
/* ======================================================================
FUNCTION
omx_venc::omx_venc
diff --git a/mm-video-v4l2/vidc/venc/src/omx_video_encoder.cpp b/mm-video-v4l2/vidc/venc/src/omx_video_encoder.cpp
index 0bdf02b..fcb92cb 100644
--- a/mm-video-v4l2/vidc/venc/src/omx_video_encoder.cpp
+++ b/mm-video-v4l2/vidc/venc/src/omx_video_encoder.cpp
@@ -2148,11 +2148,6 @@
m_cmd_q.m_read = m_cmd_q.m_write =0;
m_etb_q.m_read = m_etb_q.m_write =0;
-#ifdef _ANDROID_
- // Clear the strong reference
- DEBUG_PRINT_HIGH("Calling m_heap_ptr.clear()");
- m_heap_ptr.clear();
-#endif // _ANDROID_
DEBUG_PRINT_HIGH("Calling venc_close()");
if (handle) {
handle->venc_close();