blob: 640d8c93077c8fece883d0011c418f2e88066586 [file] [log] [blame]
Shalaj Jainc17db622014-06-04 18:36:39 -07001LOCAL_PATH := $(call my-dir)
Shalaj Jain273b3e02012-06-22 19:08:03 -07002include $(CLEAR_VARS)
Shalaj Jain273b3e02012-06-22 19:08:03 -07003
4# ---------------------------------------------------------------------------------
5# Common definitons
6# ---------------------------------------------------------------------------------
7
Shalaj Jain79aa8162014-09-16 22:22:17 -07008libmm-vdec-def := -D__alignx\(x\)=__attribute__\(\(__aligned__\(x\)\)\)
9libmm-vdec-def += -D__align=__alignx
10libmm-vdec-def += -Dinline=__inline
11libmm-vdec-def += -g -O3
12libmm-vdec-def += -DIMAGE_APPS_PROC
13libmm-vdec-def += -D_ANDROID_
14libmm-vdec-def += -DCDECL
15libmm-vdec-def += -DT_ARM
16libmm-vdec-def += -DNO_ARM_CLZ
17libmm-vdec-def += -UENABLE_DEBUG_LOW
18libmm-vdec-def += -UENABLE_DEBUG_HIGH
19libmm-vdec-def += -DENABLE_DEBUG_ERROR
20libmm-vdec-def += -UINPUT_BUFFER_LOG
21libmm-vdec-def += -UOUTPUT_BUFFER_LOG
22libmm-vdec-def += -Wno-parentheses
23libmm-vdec-def += -D_ANDROID_ICS_
24libmm-vdec-def += -D_MSM8974_
25libmm-vdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
26libmm-vdec-def += -DMAX_RES_1080P
27libmm-vdec-def += -DMAX_RES_1080P_EBI
28
29TARGETS_THAT_USE_HEVC_ADSP_HEAP := msm8226 msm8974
30TARGETS_THAT_HAVE_VENUS_HEVC := apq8084 msm8994
31TARGETS_THAT_NEED_HEVC_LIB := msm8974 msm8610 msm8226 msm8916
32TARGETS_THAT_NEED_SW_HEVC := msm8974 msm8226 msm8916
33
34ifeq ($(call is-board-platform-in-list, $(TARGETS_THAT_USE_HEVC_ADSP_HEAP)),true)
35libmm-vdec-def += -D_HEVC_USE_ADSP_HEAP_
Shalaj Jain0672e052013-12-18 12:30:34 -080036endif
37
Shalaj Jain79aa8162014-09-16 22:22:17 -070038ifeq ($(call is-board-platform-in-list, $(TARGETS_THAT_HAVE_VENUS_HEVC)),true)
39libmm-vdec-def += -DVENUS_HEVC
40endif
41
42ifeq ($(TARGET_BOARD_PLATFORM),msm8610)
43libmm-vdec-def += -DSMOOTH_STREAMING_DISABLED
44libmm-vdec-def += -DH264_PROFILE_LEVEL_CHECK
45endif
Shalaj Jain273b3e02012-06-22 19:08:03 -070046
Haynes Mathew George94c72542012-07-16 14:25:01 -070047ifeq ($(TARGET_USES_ION),true)
Shalaj Jain79aa8162014-09-16 22:22:17 -070048libmm-vdec-def += -DUSE_ION
Haynes Mathew George94c72542012-07-16 14:25:01 -070049endif
Shalaj Jain273b3e02012-06-22 19:08:03 -070050
AUDITYA BHATTARAMbe03fab2013-11-26 02:19:31 +053051ifneq (1,$(filter 1,$(shell echo "$$(( $(PLATFORM_SDK_VERSION) >= 18 ))" )))
Shalaj Jain79aa8162014-09-16 22:22:17 -070052libmm-vdec-def += -DANDROID_JELLYBEAN_MR1=1
Ian Maundd5b4db32013-06-17 14:47:51 -070053endif
54
Shalaj Jain273b3e02012-06-22 19:08:03 -070055include $(CLEAR_VARS)
Shalaj Jain273b3e02012-06-22 19:08:03 -070056
Shalaj Jain79aa8162014-09-16 22:22:17 -070057# Common Includes
58libmm-vdec-inc := $(LOCAL_PATH)/inc
Shalaj Jain273b3e02012-06-22 19:08:03 -070059libmm-vdec-inc += $(OMX_VIDEO_PATH)/vidc/common/inc
Ethan Chen639ec652015-12-24 20:22:06 -080060libmm-vdec-inc += $(TOP)/$(call project-path-for,qcom-media)/mm-core/inc
Praveen Chavan1a760772014-04-16 15:22:42 -070061libmm-vdec-inc += $(TARGET_OUT_HEADERS)/qcom/display
62libmm-vdec-inc += $(TARGET_OUT_HEADERS)/adreno
Shalaj Jainc17db622014-06-04 18:36:39 -070063libmm-vdec-inc += $(TOP)/frameworks/native/include/media/openmax
64libmm-vdec-inc += $(TOP)/frameworks/native/include/media/hardware
Ethan Chen639ec652015-12-24 20:22:06 -080065libmm-vdec-inc += $(TOP)/$(call project-path-for,qcom-media)/libc2dcolorconvert
Vinay Kalia7c8ab482014-07-31 12:34:21 -070066libmm-vdec-inc += $(TOP)/frameworks/av/include/media/stagefright
67libmm-vdec-inc += $(TARGET_OUT_HEADERS)/mm-video/SwVdec
Shalaj Jain79aa8162014-09-16 22:22:17 -070068libmm-vdec-inc += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
Shalaj Jain273b3e02012-06-22 19:08:03 -070069
Arun Menon57973232013-09-25 10:41:32 -070070ifeq ($(PLATFORM_SDK_VERSION), 18) #JB_MR2
Shalaj Jain79aa8162014-09-16 22:22:17 -070071libmm-vdec-def += -DANDROID_JELLYBEAN_MR2=1
Ethan Chen639ec652015-12-24 20:22:06 -080072libmm-vdec-inc += $(TOP)/$(call project-path-for,qcom-media)/libstagefrighthw
Arun Menon57973232013-09-25 10:41:32 -070073endif
74
Shalaj Jain79aa8162014-09-16 22:22:17 -070075# Common Dependencies
76libmm-vdec-add-dep := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
77
Praveen Chavan99295452013-11-11 18:14:54 -080078ifeq ($(call is-platform-sdk-version-at-least, 19),true)
79# This feature is enabled for Android KK+
Shalaj Jain79aa8162014-09-16 22:22:17 -070080libmm-vdec-def += -DADAPTIVE_PLAYBACK_SUPPORTED
Praveen Chavan99295452013-11-11 18:14:54 -080081endif
82
Praveen Chavan4f1403e2014-10-18 09:09:45 -070083ifeq ($(call is-platform-sdk-version-at-least, 22),true)
84# This feature is enabled for Android LMR1
85libmm-vdec-def += -DFLEXYUV_SUPPORTED
86endif
87
Praveen Chavan06ec9852016-04-19 12:25:46 -070088ifeq ($(TARGET_USES_MEDIA_EXTENSIONS),true)
89libmm-vdec-def += -DALLOCATE_OUTPUT_NATIVEHANDLE
90endif
91
Shalaj Jain79aa8162014-09-16 22:22:17 -070092# ---------------------------------------------------------------------------------
93# Make the Shared library (libOmxVdec)
94# ---------------------------------------------------------------------------------
95
96include $(CLEAR_VARS)
97
Shalaj Jain273b3e02012-06-22 19:08:03 -070098LOCAL_MODULE := libOmxVdec
99LOCAL_MODULE_TAGS := optional
Uma Mehta153365c2017-06-29 18:02:48 +0530100LOCAL_CFLAGS := $(libmm-vdec-def) -Werror -Wno-error
Shalaj Jain273b3e02012-06-22 19:08:03 -0700101LOCAL_C_INCLUDES += $(libmm-vdec-inc)
Shalaj Jain79aa8162014-09-16 22:22:17 -0700102LOCAL_ADDITIONAL_DEPENDENCIES := $(libmm-vdec-add-dep)
Shalaj Jain273b3e02012-06-22 19:08:03 -0700103
104LOCAL_PRELINK_MODULE := false
Gopikrishnaiah Anand5a99cfb2013-01-08 20:28:10 +0530105LOCAL_SHARED_LIBRARIES := liblog libutils libbinder libcutils libdl
Shalaj Jain273b3e02012-06-22 19:08:03 -0700106
Shalaj Jain48af9a42012-08-03 16:54:09 -0700107LOCAL_SHARED_LIBRARIES += libqdMetaData
Shalaj Jain273b3e02012-06-22 19:08:03 -0700108
109LOCAL_SRC_FILES := src/frameparser.cpp
110LOCAL_SRC_FILES += src/h264_utils.cpp
111LOCAL_SRC_FILES += src/ts_parser.cpp
112LOCAL_SRC_FILES += src/mp4_utils.cpp
Deva Ramasubramanianeede2f12013-10-22 18:00:49 -0700113LOCAL_SRC_FILES += src/hevc_utils.cpp
Vinay Kalia7c8ab482014-07-31 12:34:21 -0700114LOCAL_STATIC_LIBRARIES := libOmxVidcCommon
Ashray Kulkarni69a930f2012-07-30 12:31:40 -0700115LOCAL_SRC_FILES += src/omx_vdec_msm8974.cpp
Rajshekar Eashwarappad06c29b2016-03-29 13:01:37 +0530116LOCAL_CLANG := false
Shalaj Jain273b3e02012-06-22 19:08:03 -0700117include $(BUILD_SHARED_LIBRARY)
118
Arun Menon4ab8ae82013-03-18 13:35:41 -0700119
120# ---------------------------------------------------------------------------------
121# Make the Shared library (libOmxVdecHevc)
122# ---------------------------------------------------------------------------------
123
124include $(CLEAR_VARS)
Arun Menon4ab8ae82013-03-18 13:35:41 -0700125
Maheshwar Ajjabf36bd82013-09-23 12:41:53 +0530126# libOmxVdecHevc library is not built for OSS builds as QCPATH is null in OSS builds.
Arun Menonfd4a27d2013-09-16 18:06:07 -0700127
128ifneq "$(wildcard $(QCPATH) )" ""
Shalaj Jain79aa8162014-09-16 22:22:17 -0700129ifeq ($(call is-board-platform-in-list, $(TARGETS_THAT_NEED_HEVC_LIB)),true)
Arun Menon4ab8ae82013-03-18 13:35:41 -0700130
131LOCAL_MODULE := libOmxVdecHevc
132LOCAL_MODULE_TAGS := optional
Shalaj Jain79aa8162014-09-16 22:22:17 -0700133LOCAL_CFLAGS := $(libmm-vdec-def)
Arun Menon4ab8ae82013-03-18 13:35:41 -0700134LOCAL_C_INCLUDES += $(libmm-vdec-inc)
Shalaj Jain79aa8162014-09-16 22:22:17 -0700135LOCAL_ADDITIONAL_DEPENDENCIES := $(libmm-vdec-add-dep)
Arun Menon4ab8ae82013-03-18 13:35:41 -0700136
137LOCAL_PRELINK_MODULE := false
138LOCAL_SHARED_LIBRARIES := liblog libutils libbinder libcutils libdl
139
Arun Menon4ab8ae82013-03-18 13:35:41 -0700140LOCAL_SHARED_LIBRARIES += libqdMetaData
141
142LOCAL_SRC_FILES := src/frameparser.cpp
143LOCAL_SRC_FILES += src/h264_utils.cpp
144LOCAL_SRC_FILES += src/ts_parser.cpp
145LOCAL_SRC_FILES += src/mp4_utils.cpp
Arun Menon4ab8ae82013-03-18 13:35:41 -0700146LOCAL_SRC_FILES += src/hevc_utils.cpp
147
Vinay Kalia7c8ab482014-07-31 12:34:21 -0700148LOCAL_STATIC_LIBRARIES := libOmxVidcCommon
Arun Menon4ab8ae82013-03-18 13:35:41 -0700149
150include $(BUILD_SHARED_LIBRARY)
151
152endif
Arun Menonfd4a27d2013-09-16 18:06:07 -0700153endif
Manikanta Kanamarlapudib636be82014-07-21 20:18:34 +0530154
Shalaj Jain273b3e02012-06-22 19:08:03 -0700155# ---------------------------------------------------------------------------------
156# END
157# ---------------------------------------------------------------------------------