aboutsummaryrefslogtreecommitdiff
path: root/videoencoder/Android.mk
blob: d5b9d65fce1114d6be4adb81d86ef2bd8cc7e73d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

ifeq ($(ENABLE_IMG_GRAPHICS),)
LOCAL_CFLAGS += \
    -DBX_RC \
    -DOSCL_IMPORT_REF= \
    -DOSCL_UNUSED_ARG= \
    -DOSCL_EXPORT_REF=

LOCAL_STATIC_LIBRARIES := \
    libstagefright_m4vh263enc
endif

LOCAL_SRC_FILES := \
    VideoEncoderBase.cpp \
    VideoEncoderAVC.cpp \
    VideoEncoderH263.cpp \
    VideoEncoderMP4.cpp \
    VideoEncoderVP8.cpp \
    VideoEncoderUtils.cpp \
    VideoEncoderHost.cpp

# VideoEncoderAVC.cpp has extraneous parentheses and
# uses va_enc_h264.h with empty union.
LOCAL_CLANG_CFLAGS += \
    -Wno-parentheses-equality \
    -Wno-extern-c-compat

ifeq ($(ENABLE_IMG_GRAPHICS),)
    LOCAL_SRC_FILES += PVSoftMPEG4Encoder.cpp
endif

LOCAL_C_INCLUDES := \
    $(TARGET_OUT_HEADERS)/libva \
    $(call include-path-for, frameworks-native) \
    $(TARGET_OUT_HEADERS)/pvr/hal

ifeq ($(ENABLE_IMG_GRAPHICS),)
LOCAL_C_INCLUDES += \
    frameworks/av/media/libstagefright/codecs/m4v_h263/enc/include \
    frameworks/av/media/libstagefright/codecs/m4v_h263/enc/src \
    frameworks/av/media/libstagefright/codecs/common/include \
    frameworks/native/include/media/openmax \
    frameworks/native/include/media/hardware \
    frameworks/av/media/libstagefright/include
endif

LOCAL_SHARED_LIBRARIES := \
    liblog \
    libcutils \
    libion \
    libutils \
    libva \
    libva-android \
    libva-tpi \
    libhardware \
    libintelmetadatabuffer \
    libsync

LOCAL_COPY_HEADERS_TO  := libmix_videoencoder

LOCAL_COPY_HEADERS := \
    VideoEncoderHost.h \
    VideoEncoderInterface.h \
    VideoEncoderDef.h

ifeq ($(VIDEO_ENC_LOG_ENABLE),true)
LOCAL_CPPFLAGS += -DVIDEO_ENC_LOG_ENABLE
endif

ifeq ($(NO_BUFFER_SHARE),true)
LOCAL_CPPFLAGS += -DNO_BUFFER_SHARE
endif

ifeq ($(VIDEO_ENC_STATISTICS_ENABLE),true)
LOCAL_CPPFLAGS += -DVIDEO_ENC_STATISTICS_ENABLE
endif

ifeq ($(ENABLE_IMG_GRAPHICS),true)
    LOCAL_CFLAGS += -DIMG_GFX

    ifeq ($(ENABLE_MRFL_GRAPHICS),true)
        LOCAL_CFLAGS += -DMRFLD_GFX
    endif
endif

LOCAL_CFLAGS += -Werror
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := libva_videoencoder

include $(BUILD_SHARED_LIBRARY)

# For libintelmetadatabuffer
# =====================================================

include $(CLEAR_VARS)

VIDEO_ENC_LOG_ENABLE := true

LOCAL_SRC_FILES := \
    IntelMetadataBuffer.cpp

LOCAL_COPY_HEADERS_TO  := libmix_videoencoder

LOCAL_COPY_HEADERS := \
    IntelMetadataBuffer.h

ifeq ($(INTEL_VIDEO_XPROC_SHARING),true)
LOCAL_SHARED_LIBRARIES := liblog libutils libbinder libgui \
                          libui libcutils libhardware
endif
LOCAL_CFLAGS += -Werror
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := libintelmetadatabuffer

include $(BUILD_SHARED_LIBRARY)