• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS.  All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9LOCAL_PATH := $(call my-dir)
10
11include $(CLEAR_VARS)
12
13include $(LOCAL_PATH)/../../../android-webrtc.mk
14
15LOCAL_ARM_MODE := arm
16LOCAL_MODULE := libwebrtc_apm
17LOCAL_MODULE_TAGS := optional
18LOCAL_CPP_EXTENSION := .cc
19LOCAL_SRC_FILES := \
20    $(call all-proto-files-under, .) \
21    audio_buffer.cc \
22    audio_processing_impl.cc \
23    echo_cancellation_impl.cc \
24    echo_control_mobile_impl.cc \
25    gain_control_impl.cc \
26    high_pass_filter_impl.cc \
27    level_estimator_impl.cc \
28    noise_suppression_impl.cc \
29    rms_level.cc \
30    splitting_filter.cc \
31    three_band_filter_bank.cc \
32    processing_component.cc \
33    voice_detection_impl.cc
34
35# Flags passed to both C and C++ files.
36LOCAL_CFLAGS := \
37    $(MY_WEBRTC_COMMON_DEFS) \
38    '-DWEBRTC_NS_FIXED' \
39    '-DWEBRTC_ANDROID_PLATFORM_BUILD' \
40    '-DWEBRTC_AUDIOPROC_DEBUG_DUMP'
41#   floating point
42#   -DWEBRTC_NS_FLOAT'
43
44LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
45LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
46LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
47LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
48LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
49LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
50
51LOCAL_CFLAGS += -Wno-unused-parameter
52
53LOCAL_C_INCLUDES := \
54    $(LOCAL_PATH)/include \
55    $(LOCAL_PATH)/aec/include \
56    $(LOCAL_PATH)/aecm/include \
57    $(LOCAL_PATH)/agc/include \
58    $(LOCAL_PATH)/ns/include \
59    $(LOCAL_PATH)/../interface \
60    $(LOCAL_PATH)/../../.. \
61    $(LOCAL_PATH)/../../common_audio/signal_processing/include \
62    $(LOCAL_PATH)/../../common_audio/vad/include \
63    $(LOCAL_PATH)/../../system_wrappers/include \
64    external/protobuf/src
65
66ifdef WEBRTC_STL
67LOCAL_NDK_STL_VARIANT := $(WEBRTC_STL)
68LOCAL_SDK_VERSION := 14
69LOCAL_MODULE := $(LOCAL_MODULE)_$(WEBRTC_STL)
70endif
71
72include $(BUILD_STATIC_LIBRARY)
73
74# apm process test app
75
76include $(CLEAR_VARS)
77
78LOCAL_MODULE_TAGS := tests
79LOCAL_CPP_EXTENSION := .cc
80LOCAL_SRC_FILES:= \
81    $(call all-proto-files-under, .) \
82    test/process_test.cc \
83    test/test_utils.cc \
84    test/protobuf_utils.cc \
85    ../../common_audio/wav_file.cc \
86    ../../common_audio/wav_header.cc \
87    ../../system_wrappers/source/tick_util.cc \
88    ../../test/testsupport/fileutils.cc \
89    ../../test/testsupport/perf_test.cc \
90
91# Flags passed to both C and C++ files.
92LOCAL_CFLAGS := \
93    $(MY_WEBRTC_COMMON_DEFS) \
94    '-DWEBRTC_ANDROID_PLATFORM_BUILD' \
95    '-DWEBRTC_AUDIOPROC_DEBUG_DUMP'
96
97LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
98LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
99LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
100LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
101LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
102LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
103
104LOCAL_CFLAGS += -Wno-unused-parameter
105
106LOCAL_C_INCLUDES := \
107    $(LOCAL_PATH)/include \
108    $(LOCAL_PATH)/../interface \
109    $(LOCAL_PATH)/../../.. \
110    $(LOCAL_PATH)/../../system_wrappers/include \
111
112MY_LIB_SUFFIX :=
113ifdef WEBRTC_STL
114MY_LIB_SUFFIX := _$(WEBRTC_STL)
115endif
116
117LOCAL_SHARED_LIBRARIES := \
118    libutils \
119    libwebrtc_audio_preprocessing$(MY_LIB_SUFFIX) \
120
121LOCAL_MODULE:= webrtc_apm_process_test
122
123ifndef WEBRTC_STL
124LOCAL_SHARED_LIBRARIES += libprotobuf-cpp-lite
125else
126LOCAL_STATIC_LIBRARIES := \
127    libprotobuf-cpp-lite-ndk
128LOCAL_NDK_STL_VARIANT := $(WEBRTC_STL)
129LOCAL_SDK_VERSION := 14
130LOCAL_MODULE := $(LOCAL_MODULE)_$(WEBRTC_STL)
131endif
132
133include $(BUILD_NATIVE_TEST)
134
135# apm unit test app
136
137include $(CLEAR_VARS)
138
139LOCAL_MODULE_TAGS := tests
140LOCAL_CPP_EXTENSION := .cc
141LOCAL_SRC_FILES:= \
142    $(call all-proto-files-under, .) \
143    test/audio_processing_unittest.cc \
144    test/protobuf_utils.cc \
145    test/test_utils.cc \
146    ../../common_audio/resampler/push_resampler.cc \
147    ../../test/testsupport/fileutils.cc
148
149LOCAL_C_INCLUDES := \
150    $(LOCAL_PATH)/../../.. \
151
152# Flags passed to both C and C++ files.
153LOCAL_CFLAGS := \
154    $(MY_WEBRTC_COMMON_DEFS) \
155    '-DWEBRTC_AUDIOPROC_FIXED_PROFILE' \
156    '-DWEBRTC_ANDROID_PLATFORM_BUILD' \
157    '-DWEBRTC_AUDIOPROC_DEBUG_DUMP' \
158
159LOCAL_CFLAGS_arm := $(MY_WEBRTC_COMMON_DEFS_arm)
160LOCAL_CFLAGS_x86 := $(MY_WEBRTC_COMMON_DEFS_x86)
161LOCAL_CFLAGS_mips := $(MY_WEBRTC_COMMON_DEFS_mips)
162LOCAL_CFLAGS_arm64 := $(MY_WEBRTC_COMMON_DEFS_arm64)
163LOCAL_CFLAGS_x86_64 := $(MY_WEBRTC_COMMON_DEFS_x86_64)
164LOCAL_CFLAGS_mips64 := $(MY_WEBRTC_COMMON_DEFS_mips64)
165
166LOCAL_CFLAGS += -Wno-unused-parameter
167
168LOCAL_C_INCLUDES := \
169    $(LOCAL_PATH)/include \
170    $(LOCAL_PATH)/../interface \
171    $(LOCAL_PATH)/../.. \
172    $(LOCAL_PATH)/../../.. \
173    $(LOCAL_PATH)/../../../test \
174    $(LOCAL_PATH)/../../system_wrappers/include \
175    $(LOCAL_PATH)/../../../webrtc/base \
176    $(LOCAL_PATH)/../../common_audio/signal_processing/include \
177    external/protobuf/src
178
179MY_LIB_SUFFIX :=
180ifdef WEBRTC_STL
181MY_LIB_SUFFIX := _$(WEBRTC_STL)
182endif
183
184LOCAL_SHARED_LIBRARIES := \
185    libwebrtc_audio_preprocessing$(MY_LIB_SUFFIX)
186
187LOCAL_MODULE:= webrtc_apm_unit_test
188
189ifndef WEBRTC_STL
190LOCAL_SHARED_LIBRARIES += libprotobuf-cpp-lite
191else
192LOCAL_STATIC_LIBRARIES := \
193    libprotobuf-cpp-lite
194LOCAL_NDK_STL_VARIANT := $(WEBRTC_STL)
195LOCAL_SDK_VERSION := 14
196LOCAL_MODULE := $(LOCAL_MODULE)_$(WEBRTC_STL)
197endif
198
199include $(BUILD_NATIVE_TEST)
200