blob: b61d803e6eaccb31a52252ce5ed8dd3db99bf458 [file] [log] [blame]
Shalaj Jain273b3e02012-06-22 19:08:03 -07001ifneq ($(BUILD_TINY_ANDROID),true)
2
Shalaj Jainc17db622014-06-04 18:36:39 -07003LOCAL_PATH := $(call my-dir)
4OMX_VIDEO_PATH := $(TOP)/hardware/qcom/media/mm-video-v4l2
Shalaj Jain273b3e02012-06-22 19:08:03 -07005include $(CLEAR_VARS)
Shalaj Jain273b3e02012-06-22 19:08:03 -07006
7# ---------------------------------------------------------------------------------
8# Common definitons
9# ---------------------------------------------------------------------------------
10
11libOmxVdec-def := -D__alignx\(x\)=__attribute__\(\(__aligned__\(x\)\)\)
12libOmxVdec-def += -D__align=__alignx
13libOmxVdec-def += -Dinline=__inline
14libOmxVdec-def += -g -O3
15libOmxVdec-def += -DIMAGE_APPS_PROC
16libOmxVdec-def += -D_ANDROID_
17libOmxVdec-def += -DCDECL
18libOmxVdec-def += -DT_ARM
19libOmxVdec-def += -DNO_ARM_CLZ
20libOmxVdec-def += -UENABLE_DEBUG_LOW
Arun Menonb50ddeb2013-06-05 15:33:55 -070021libOmxVdec-def += -UENABLE_DEBUG_HIGH
Shalaj Jain273b3e02012-06-22 19:08:03 -070022libOmxVdec-def += -DENABLE_DEBUG_ERROR
23libOmxVdec-def += -UINPUT_BUFFER_LOG
24libOmxVdec-def += -UOUTPUT_BUFFER_LOG
Arun Menonb66f8102014-03-18 18:37:22 -070025libOmxVdec-def += -Wno-parentheses
Shalaj Jain273b3e02012-06-22 19:08:03 -070026ifeq ($(TARGET_BOARD_PLATFORM),msm8660)
27libOmxVdec-def += -DMAX_RES_1080P
28libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
29libOmxVdec-def += -DTEST_TS_FROM_SEI
30endif
31ifeq ($(TARGET_BOARD_PLATFORM),msm8960)
32libOmxVdec-def += -DMAX_RES_1080P
33libOmxVdec-def += -DMAX_RES_1080P_EBI
34libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
Gopikrishnaiah Anand5a99cfb2013-01-08 20:28:10 +053035libOmxVdec-def += -D_MSM8960_
Shalaj Jain273b3e02012-06-22 19:08:03 -070036endif
37ifeq ($(TARGET_BOARD_PLATFORM),msm8974)
38libOmxVdec-def += -DMAX_RES_1080P
39libOmxVdec-def += -DMAX_RES_1080P_EBI
40libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
David Ng1d9befe2012-07-18 15:31:08 -070041libOmxVdec-def += -D_MSM8974_
Arun Menond65ffb12013-05-28 16:28:06 -070042libOmxVdec-def += -D_HEVC_USE_ADSP_HEAP_
Shalaj Jain273b3e02012-06-22 19:08:03 -070043endif
Praveena Pachipulusu42e91642012-07-06 10:30:58 +053044ifeq ($(TARGET_BOARD_PLATFORM),msm7627a)
45libOmxVdec-def += -DMAX_RES_720P
46endif
Aparna Mallavarapue5046552012-07-14 19:51:14 +053047ifeq ($(TARGET_BOARD_PLATFORM),msm7630_surf)
48libOmxVdec-def += -DMAX_RES_720P
49endif
David Ng75996352012-11-26 15:39:44 -080050ifeq ($(TARGET_BOARD_PLATFORM),msm8610)
David Ngd0b30082012-12-19 07:01:22 -080051libOmxVdec-def += -DMAX_RES_1080P
52libOmxVdec-def += -DMAX_RES_1080P_EBI
53libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
Arun Menonc821d8a2013-06-15 10:03:29 -070054libOmxVdec-def += -DSMOOTH_STREAMING_DISABLED
Arun Menon888aa852013-05-30 11:24:42 -070055libOmxVdec-def += -DH264_PROFILE_LEVEL_CHECK
David Ngd0b30082012-12-19 07:01:22 -080056libOmxVdec-def += -D_MSM8974_
David Ng75996352012-11-26 15:39:44 -080057endif
58ifeq ($(TARGET_BOARD_PLATFORM),msm8226)
David Ngd0b30082012-12-19 07:01:22 -080059libOmxVdec-def += -DMAX_RES_1080P
60libOmxVdec-def += -DMAX_RES_1080P_EBI
61libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
62libOmxVdec-def += -D_MSM8974_
Arun Menonfd4a27d2013-09-16 18:06:07 -070063libOmxVdec-def += -D_HEVC_USE_ADSP_HEAP_
David Ngcbf03aa2012-11-06 18:36:09 -080064endif
David Ng0926b912013-04-08 18:52:29 -070065ifeq ($(TARGET_BOARD_PLATFORM),apq8084)
66libOmxVdec-def += -DMAX_RES_1080P
67libOmxVdec-def += -DMAX_RES_1080P_EBI
68libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
69libOmxVdec-def += -D_MSM8974_
Deva Ramasubramanian96c1f872013-08-26 13:07:48 -070070libOmxVdec-def += -DVENUS_HEVC
David Ng0926b912013-04-08 18:52:29 -070071endif
Aparna Mallavarapu5f119b02013-05-23 17:01:03 +053072ifeq ($(TARGET_BOARD_PLATFORM),mpq8092)
73libOmxVdec-def += -DMAX_RES_1080P
74libOmxVdec-def += -DMAX_RES_1080P_EBI
75libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
76libOmxVdec-def += -D_MSM8974_
Jayasena Sangaraboina12ab95c2013-12-17 22:02:48 -080077libOmxVdec-def += -DVENUS_HEVC
Aparna Mallavarapu5f119b02013-05-23 17:01:03 +053078endif
Aparna Mallavarapu06757622013-10-11 14:16:44 +053079ifeq ($(TARGET_BOARD_PLATFORM),msm_bronze)
80libOmxVdec-def += -DMAX_RES_1080P
81libOmxVdec-def += -DMAX_RES_1080P_EBI
82libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
83libOmxVdec-def += -D_MSM8974_
84libOmxVdec-def += -D_HEVC_USE_ADSP_HEAP_
85endif
Sivalatha Chakrala9e6354b2013-12-12 23:39:59 +053086ifeq ($(TARGET_BOARD_PLATFORM),msm8916)
87libOmxVdec-def += -DMAX_RES_1080P
88libOmxVdec-def += -DMAX_RES_1080P_EBI
89libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
90libOmxVdec-def += -D_MSM8974_
Sivalatha Chakrala9e6354b2013-12-12 23:39:59 +053091endif
Vikash Garodia3525e0e2014-07-10 23:13:13 +053092ifeq ($(TARGET_BOARD_PLATFORM),ferrum)
93libOmxVdec-def += -DMAX_RES_1080P
94libOmxVdec-def += -DMAX_RES_1080P_EBI
95libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
96libOmxVdec-def += -D_MSM8974_
97endif
Shashank Mittalec060a52014-04-14 15:09:37 -070098ifeq ($(TARGET_BOARD_PLATFORM),msm8994)
Shalaj Jain0672e052013-12-18 12:30:34 -080099libOmxVdec-def += -DMAX_RES_1080P
100libOmxVdec-def += -DMAX_RES_1080P_EBI
101libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
102libOmxVdec-def += -D_MSM8974_
Praneeth Paladugu90c307e2014-05-22 16:26:55 -0700103libOmxVdec-def += -DVENUS_HEVC
Shalaj Jain0672e052013-12-18 12:30:34 -0800104endif
105
Shalaj Jain273b3e02012-06-22 19:08:03 -0700106libOmxVdec-def += -D_ANDROID_ICS_
107
Haynes Mathew George94c72542012-07-16 14:25:01 -0700108ifeq ($(TARGET_USES_ION),true)
Shalaj Jain273b3e02012-06-22 19:08:03 -0700109libOmxVdec-def += -DUSE_ION
Haynes Mathew George94c72542012-07-16 14:25:01 -0700110endif
Shalaj Jain273b3e02012-06-22 19:08:03 -0700111
AUDITYA BHATTARAMbe03fab2013-11-26 02:19:31 +0530112ifneq (1,$(filter 1,$(shell echo "$$(( $(PLATFORM_SDK_VERSION) >= 18 ))" )))
Ian Maundd5b4db32013-06-17 14:47:51 -0700113libOmxVdec-def += -DANDROID_JELLYBEAN_MR1=1
114endif
115
Haynes Mathew Georgef2314392012-07-17 15:30:05 -0700116vdec-inc = $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
117
Shalaj Jain273b3e02012-06-22 19:08:03 -0700118# ---------------------------------------------------------------------------------
119# Make the Shared library (libOmxVdec)
120# ---------------------------------------------------------------------------------
121
122include $(CLEAR_VARS)
Shalaj Jain273b3e02012-06-22 19:08:03 -0700123
Shalaj Jain273b3e02012-06-22 19:08:03 -0700124libmm-vdec-inc += $(LOCAL_PATH)/inc
125libmm-vdec-inc += $(OMX_VIDEO_PATH)/vidc/common/inc
Shalaj Jainc17db622014-06-04 18:36:39 -0700126libmm-vdec-inc += $(TOP)/hardware/qcom/media/mm-core/inc
Shalaj Jain273b3e02012-06-22 19:08:03 -0700127#DRM include - Interface which loads the DRM library
128libmm-vdec-inc += $(OMX_VIDEO_PATH)/DivxDrmDecrypt/inc
Praveen Chavan1a760772014-04-16 15:22:42 -0700129libmm-vdec-inc += $(TARGET_OUT_HEADERS)/qcom/display
130libmm-vdec-inc += $(TARGET_OUT_HEADERS)/adreno
Shalaj Jainc17db622014-06-04 18:36:39 -0700131libmm-vdec-inc += $(TOP)/frameworks/native/include/media/openmax
132libmm-vdec-inc += $(TOP)/frameworks/native/include/media/hardware
Haynes Mathew George94c72542012-07-16 14:25:01 -0700133libmm-vdec-inc += $(vdec-inc)
Shalaj Jainc17db622014-06-04 18:36:39 -0700134libmm-vdec-inc += $(TOP)/hardware/qcom/media/libc2dcolorconvert
135libmm-vdec-inc += $(TOP)/frameworks/av/include/media/stagefright
Arun Menonfd4a27d2013-09-16 18:06:07 -0700136libmm-vdec-inc += $(TARGET_OUT_HEADERS)/mm-video/SwVdec
Shalaj Jain273b3e02012-06-22 19:08:03 -0700137
Arun Menon57973232013-09-25 10:41:32 -0700138ifeq ($(PLATFORM_SDK_VERSION), 18) #JB_MR2
139libOmxVdec-def += -DANDROID_JELLYBEAN_MR2=1
Shalaj Jainc17db622014-06-04 18:36:39 -0700140libmm-vdec-inc += $(TOP)/hardware/qcom/media/libstagefrighthw
Arun Menon57973232013-09-25 10:41:32 -0700141endif
142
Praveen Chavan99295452013-11-11 18:14:54 -0800143ifeq ($(call is-platform-sdk-version-at-least, 19),true)
144# This feature is enabled for Android KK+
145libOmxVdec-def += -DADAPTIVE_PLAYBACK_SUPPORTED
146endif
147
Shalaj Jain273b3e02012-06-22 19:08:03 -0700148LOCAL_MODULE := libOmxVdec
AUDITYA BHATTARAM5d662a02014-03-19 12:05:02 +0530149LOCAL_ADDITIONAL_DEPENDENCIES := libOmxVdecHevc
Shalaj Jain273b3e02012-06-22 19:08:03 -0700150LOCAL_MODULE_TAGS := optional
Arun Menonb66f8102014-03-18 18:37:22 -0700151LOCAL_CFLAGS := $(libOmxVdec-def) -Werror
Shalaj Jain273b3e02012-06-22 19:08:03 -0700152LOCAL_C_INCLUDES += $(libmm-vdec-inc)
153
154LOCAL_PRELINK_MODULE := false
Gopikrishnaiah Anand5a99cfb2013-01-08 20:28:10 +0530155LOCAL_SHARED_LIBRARIES := liblog libutils libbinder libcutils libdl
Shalaj Jain273b3e02012-06-22 19:08:03 -0700156
Shalaj Jain273b3e02012-06-22 19:08:03 -0700157LOCAL_SHARED_LIBRARIES += libdivxdrmdecrypt
Shalaj Jain48af9a42012-08-03 16:54:09 -0700158LOCAL_SHARED_LIBRARIES += libqdMetaData
Shalaj Jain273b3e02012-06-22 19:08:03 -0700159
160LOCAL_SRC_FILES := src/frameparser.cpp
161LOCAL_SRC_FILES += src/h264_utils.cpp
162LOCAL_SRC_FILES += src/ts_parser.cpp
163LOCAL_SRC_FILES += src/mp4_utils.cpp
Deva Ramasubramanianeede2f12013-10-22 18:00:49 -0700164LOCAL_SRC_FILES += src/hevc_utils.cpp
Vikash Garodia3525e0e2014-07-10 23:13:13 +0530165ifneq (,$(filter msm8974 msm8610 msm8226 apq8084 mpq8092 msm_bronze msm8916 msm8994 ferrum,$(TARGET_BOARD_PLATFORM)))
Ashray Kulkarni69a930f2012-07-30 12:31:40 -0700166LOCAL_SRC_FILES += src/omx_vdec_msm8974.cpp
Ashray Kulkarni69a930f2012-07-30 12:31:40 -0700167endif
Ashray Kulkarni867dad62012-12-26 15:04:07 -0800168
Shalaj Jain273b3e02012-06-22 19:08:03 -0700169LOCAL_SRC_FILES += ../common/src/extra_data_handler.cpp
Gopikrishnaiah Anand5a99cfb2013-01-08 20:28:10 +0530170LOCAL_SRC_FILES += ../common/src/vidc_color_converter.cpp
Haynes Mathew George94c72542012-07-16 14:25:01 -0700171LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
172
Shalaj Jain273b3e02012-06-22 19:08:03 -0700173include $(BUILD_SHARED_LIBRARY)
174
Arun Menon4ab8ae82013-03-18 13:35:41 -0700175
176# ---------------------------------------------------------------------------------
177# Make the Shared library (libOmxVdecHevc)
178# ---------------------------------------------------------------------------------
179
180include $(CLEAR_VARS)
Arun Menon4ab8ae82013-03-18 13:35:41 -0700181
Maheshwar Ajjabf36bd82013-09-23 12:41:53 +0530182# libOmxVdecHevc library is not built for OSS builds as QCPATH is null in OSS builds.
Arun Menonfd4a27d2013-09-16 18:06:07 -0700183
184ifneq "$(wildcard $(QCPATH) )" ""
Praveen Chavan7a12cce2014-05-22 13:55:30 -0700185ifneq (,$(filter msm8974 msm8610 msm8226 msm_bronze msm8916,$(TARGET_BOARD_PLATFORM)))
Arun Menon4ab8ae82013-03-18 13:35:41 -0700186
187LOCAL_MODULE := libOmxVdecHevc
AUDITYA BHATTARAM5d662a02014-03-19 12:05:02 +0530188LOCAL_ADDITIONAL_DEPENDENCIES := libOmxVenc
Arun Menon4ab8ae82013-03-18 13:35:41 -0700189LOCAL_MODULE_TAGS := optional
190LOCAL_CFLAGS := $(libOmxVdec-def)
191LOCAL_C_INCLUDES += $(libmm-vdec-inc)
192
193LOCAL_PRELINK_MODULE := false
194LOCAL_SHARED_LIBRARIES := liblog libutils libbinder libcutils libdl
195
Arun Menon4ab8ae82013-03-18 13:35:41 -0700196LOCAL_SHARED_LIBRARIES += libdivxdrmdecrypt
197LOCAL_SHARED_LIBRARIES += libqdMetaData
198
199LOCAL_SRC_FILES := src/frameparser.cpp
200LOCAL_SRC_FILES += src/h264_utils.cpp
201LOCAL_SRC_FILES += src/ts_parser.cpp
202LOCAL_SRC_FILES += src/mp4_utils.cpp
203
Rajeshwar Kurapatyaec08e22014-03-18 20:15:03 +0530204ifneq (,$(filter msm8974 msm8226 msm8916,$(TARGET_BOARD_PLATFORM)))
Arun Menonfd4a27d2013-09-16 18:06:07 -0700205LOCAL_SHARED_LIBRARIES += libHevcSwDecoder
206LOCAL_SRC_FILES += src/omx_vdec_hevc_swvdec.cpp
207else
Arun Menon4ab8ae82013-03-18 13:35:41 -0700208LOCAL_SRC_FILES += src/omx_vdec_hevc.cpp
Arun Menonfd4a27d2013-09-16 18:06:07 -0700209endif
210
Arun Menon4ab8ae82013-03-18 13:35:41 -0700211LOCAL_SRC_FILES += src/hevc_utils.cpp
212
213LOCAL_SRC_FILES += ../common/src/extra_data_handler.cpp
214LOCAL_SRC_FILES += ../common/src/vidc_color_converter.cpp
215LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
216
Manikanta Kanamarlapudib636be82014-07-21 20:18:34 +0530217LOCAL_32_BIT_ONLY := true
218
Arun Menon4ab8ae82013-03-18 13:35:41 -0700219include $(BUILD_SHARED_LIBRARY)
220
221endif
Arun Menonfd4a27d2013-09-16 18:06:07 -0700222endif
Manikanta Kanamarlapudib636be82014-07-21 20:18:34 +0530223
Arun Menon4ab8ae82013-03-18 13:35:41 -0700224
Shalaj Jain273b3e02012-06-22 19:08:03 -0700225endif #BUILD_TINY_ANDROID
226
227# ---------------------------------------------------------------------------------
228# END
229# ---------------------------------------------------------------------------------