1LOCAL_PATH := $(call my-dir) 2include $(CLEAR_VARS) 3 4AAC_LIBRARY = fraunhofer 5 6LOCAL_SRC_FILES := basic_op/basicop2.c basic_op/oper_32b.c 7 8LOCAL_SRC_FILES += \ 9 AACEncoder.cpp \ 10 src/aac_rom.c \ 11 src/aacenc.c \ 12 src/aacenc_core.c \ 13 src/adj_thr.c \ 14 src/band_nrg.c \ 15 src/bit_cnt.c \ 16 src/bitbuffer.c \ 17 src/bitenc.c \ 18 src/block_switch.c \ 19 src/channel_map.c \ 20 src/dyn_bits.c \ 21 src/grp_data.c \ 22 src/interface.c \ 23 src/line_pe.c \ 24 src/ms_stereo.c \ 25 src/pre_echo_control.c \ 26 src/psy_configuration.c \ 27 src/psy_main.c \ 28 src/qc_main.c \ 29 src/quantize.c \ 30 src/sf_estim.c \ 31 src/spreading.c \ 32 src/stat_bits.c \ 33 src/tns.c \ 34 src/transform.c \ 35 src/memalign.c 36 37ifneq ($(ARCH_ARM_HAVE_NEON),true) 38 LOCAL_SRC_FILES_arm := \ 39 src/asm/ARMV5E/AutoCorrelation_v5.s \ 40 src/asm/ARMV5E/band_nrg_v5.s \ 41 src/asm/ARMV5E/CalcWindowEnergy_v5.s \ 42 src/asm/ARMV5E/PrePostMDCT_v5.s \ 43 src/asm/ARMV5E/R4R8First_v5.s \ 44 src/asm/ARMV5E/Radix4FFT_v5.s 45 46 LOCAL_CFLAGS_arm := -DARMV5E -DARM_INASM -DARMV5_INASM 47 LOCAL_C_INCLUDES_arm := $(LOCAL_PATH)/src/asm/ARMV5E 48else 49 LOCAL_SRC_FILES_arm := \ 50 src/asm/ARMV5E/AutoCorrelation_v5.s \ 51 src/asm/ARMV5E/band_nrg_v5.s \ 52 src/asm/ARMV5E/CalcWindowEnergy_v5.s \ 53 src/asm/ARMV7/PrePostMDCT_v7.s \ 54 src/asm/ARMV7/R4R8First_v7.s \ 55 src/asm/ARMV7/Radix4FFT_v7.s 56 LOCAL_CFLAGS_arm := -DARMV5E -DARMV7Neon -DARM_INASM -DARMV5_INASM -DARMV6_INASM 57 LOCAL_C_INCLUDES_arm := $(LOCAL_PATH)/src/asm/ARMV5E 58 LOCAL_C_INCLUDES_arm += $(LOCAL_PATH)/src/asm/ARMV7 59endif 60 61LOCAL_MODULE := libstagefright_aacenc 62 63LOCAL_ARM_MODE := arm 64 65LOCAL_STATIC_LIBRARIES := 66 67LOCAL_SHARED_LIBRARIES := 68 69LOCAL_C_INCLUDES := \ 70 frameworks/av/include \ 71 frameworks/av/media/libstagefright/include \ 72 frameworks/av/media/libstagefright/codecs/common/include \ 73 $(LOCAL_PATH)/src \ 74 $(LOCAL_PATH)/inc \ 75 $(LOCAL_PATH)/basic_op 76 77LOCAL_CFLAGS += -Werror 78LOCAL_CLANG := true 79LOCAL_SANITIZE := signed-integer-overflow unsigned-integer-overflow 80 81include $(BUILD_STATIC_LIBRARY) 82 83################################################################################ 84 85include $(CLEAR_VARS) 86 87ifeq ($(AAC_LIBRARY), fraunhofer) 88 89 include $(CLEAR_VARS) 90 91 LOCAL_SRC_FILES := \ 92 SoftAACEncoder2.cpp 93 94 LOCAL_C_INCLUDES := \ 95 frameworks/av/media/libstagefright/include \ 96 frameworks/native/include/media/openmax \ 97 external/aac/libAACenc/include \ 98 external/aac/libFDK/include \ 99 external/aac/libMpegTPEnc/include \ 100 external/aac/libSBRenc/include \ 101 external/aac/libSYS/include 102 103 LOCAL_CFLAGS := 104 105 LOCAL_CFLAGS += -Werror 106 LOCAL_CLANG := true 107 LOCAL_SANITIZE := signed-integer-overflow unsigned-integer-overflow 108 109 LOCAL_STATIC_LIBRARIES := libFraunhoferAAC 110 111 LOCAL_SHARED_LIBRARIES := \ 112 libstagefright_omx libstagefright_foundation libutils liblog 113 114 LOCAL_MODULE := libstagefright_soft_aacenc 115 LOCAL_MODULE_TAGS := optional 116 117 include $(BUILD_SHARED_LIBRARY) 118 119else # visualon 120 121 LOCAL_SRC_FILES := \ 122 SoftAACEncoder.cpp 123 124 LOCAL_C_INCLUDES := \ 125 frameworks/av/media/libstagefright/include \ 126 frameworks/av/media/libstagefright/codecs/common/include \ 127 frameworks/native/include/media/openmax 128 129 LOCAL_CFLAGS := -DOSCL_IMPORT_REF= 130 131 LOCAL_CFLAGS += -Werror 132 LOCAL_CLANG := true 133 LOCAL_SANITIZE := signed-integer-overflow unsigned-integer-overflow 134 135 LOCAL_STATIC_LIBRARIES := \ 136 libstagefright_aacenc 137 138 LOCAL_SHARED_LIBRARIES := \ 139 libstagefright_omx libstagefright_foundation libutils liblog \ 140 libstagefright_enc_common 141 142 LOCAL_MODULE := libstagefright_soft_aacenc 143 LOCAL_MODULE_TAGS := optional 144 145 include $(BUILD_SHARED_LIBRARY) 146 147endif # $(AAC_LIBRARY) 148