xref: /aosp_15_r20/external/webrtc/modules/audio_processing/aec3/BUILD.gn (revision d9f758449e529ab9291ac668be2861e7a55c2422)
1*d9f75844SAndroid Build Coastguard Worker# Copyright (c) 2018 The WebRTC project authors. All Rights Reserved.
2*d9f75844SAndroid Build Coastguard Worker#
3*d9f75844SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license
4*d9f75844SAndroid Build Coastguard Worker# that can be found in the LICENSE file in the root of the source
5*d9f75844SAndroid Build Coastguard Worker# tree. An additional intellectual property rights grant can be found
6*d9f75844SAndroid Build Coastguard Worker# in the file PATENTS.  All contributing project authors may
7*d9f75844SAndroid Build Coastguard Worker# be found in the AUTHORS file in the root of the source tree.
8*d9f75844SAndroid Build Coastguard Worker
9*d9f75844SAndroid Build Coastguard Workerimport("../../../webrtc.gni")
10*d9f75844SAndroid Build Coastguard Worker
11*d9f75844SAndroid Build Coastguard Workerrtc_library("aec3") {
12*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
13*d9f75844SAndroid Build Coastguard Worker  configs += [ "..:apm_debug_dump" ]
14*d9f75844SAndroid Build Coastguard Worker  sources = [
15*d9f75844SAndroid Build Coastguard Worker    "adaptive_fir_filter.cc",
16*d9f75844SAndroid Build Coastguard Worker    "adaptive_fir_filter_erl.cc",
17*d9f75844SAndroid Build Coastguard Worker    "aec3_common.cc",
18*d9f75844SAndroid Build Coastguard Worker    "aec3_fft.cc",
19*d9f75844SAndroid Build Coastguard Worker    "aec_state.cc",
20*d9f75844SAndroid Build Coastguard Worker    "aec_state.h",
21*d9f75844SAndroid Build Coastguard Worker    "alignment_mixer.cc",
22*d9f75844SAndroid Build Coastguard Worker    "alignment_mixer.h",
23*d9f75844SAndroid Build Coastguard Worker    "api_call_jitter_metrics.cc",
24*d9f75844SAndroid Build Coastguard Worker    "api_call_jitter_metrics.h",
25*d9f75844SAndroid Build Coastguard Worker    "block.h",
26*d9f75844SAndroid Build Coastguard Worker    "block_buffer.cc",
27*d9f75844SAndroid Build Coastguard Worker    "block_delay_buffer.cc",
28*d9f75844SAndroid Build Coastguard Worker    "block_delay_buffer.h",
29*d9f75844SAndroid Build Coastguard Worker    "block_framer.cc",
30*d9f75844SAndroid Build Coastguard Worker    "block_framer.h",
31*d9f75844SAndroid Build Coastguard Worker    "block_processor.cc",
32*d9f75844SAndroid Build Coastguard Worker    "block_processor.h",
33*d9f75844SAndroid Build Coastguard Worker    "block_processor_metrics.cc",
34*d9f75844SAndroid Build Coastguard Worker    "block_processor_metrics.h",
35*d9f75844SAndroid Build Coastguard Worker    "clockdrift_detector.cc",
36*d9f75844SAndroid Build Coastguard Worker    "clockdrift_detector.h",
37*d9f75844SAndroid Build Coastguard Worker    "coarse_filter_update_gain.cc",
38*d9f75844SAndroid Build Coastguard Worker    "coarse_filter_update_gain.h",
39*d9f75844SAndroid Build Coastguard Worker    "comfort_noise_generator.cc",
40*d9f75844SAndroid Build Coastguard Worker    "comfort_noise_generator.h",
41*d9f75844SAndroid Build Coastguard Worker    "config_selector.cc",
42*d9f75844SAndroid Build Coastguard Worker    "config_selector.h",
43*d9f75844SAndroid Build Coastguard Worker    "decimator.cc",
44*d9f75844SAndroid Build Coastguard Worker    "decimator.h",
45*d9f75844SAndroid Build Coastguard Worker    "delay_estimate.h",
46*d9f75844SAndroid Build Coastguard Worker    "dominant_nearend_detector.cc",
47*d9f75844SAndroid Build Coastguard Worker    "dominant_nearend_detector.h",
48*d9f75844SAndroid Build Coastguard Worker    "downsampled_render_buffer.cc",
49*d9f75844SAndroid Build Coastguard Worker    "downsampled_render_buffer.h",
50*d9f75844SAndroid Build Coastguard Worker    "echo_audibility.cc",
51*d9f75844SAndroid Build Coastguard Worker    "echo_audibility.h",
52*d9f75844SAndroid Build Coastguard Worker    "echo_canceller3.cc",
53*d9f75844SAndroid Build Coastguard Worker    "echo_canceller3.h",
54*d9f75844SAndroid Build Coastguard Worker    "echo_path_delay_estimator.cc",
55*d9f75844SAndroid Build Coastguard Worker    "echo_path_delay_estimator.h",
56*d9f75844SAndroid Build Coastguard Worker    "echo_path_variability.cc",
57*d9f75844SAndroid Build Coastguard Worker    "echo_path_variability.h",
58*d9f75844SAndroid Build Coastguard Worker    "echo_remover.cc",
59*d9f75844SAndroid Build Coastguard Worker    "echo_remover.h",
60*d9f75844SAndroid Build Coastguard Worker    "echo_remover_metrics.cc",
61*d9f75844SAndroid Build Coastguard Worker    "echo_remover_metrics.h",
62*d9f75844SAndroid Build Coastguard Worker    "erl_estimator.cc",
63*d9f75844SAndroid Build Coastguard Worker    "erl_estimator.h",
64*d9f75844SAndroid Build Coastguard Worker    "erle_estimator.cc",
65*d9f75844SAndroid Build Coastguard Worker    "erle_estimator.h",
66*d9f75844SAndroid Build Coastguard Worker    "fft_buffer.cc",
67*d9f75844SAndroid Build Coastguard Worker    "filter_analyzer.cc",
68*d9f75844SAndroid Build Coastguard Worker    "filter_analyzer.h",
69*d9f75844SAndroid Build Coastguard Worker    "frame_blocker.cc",
70*d9f75844SAndroid Build Coastguard Worker    "frame_blocker.h",
71*d9f75844SAndroid Build Coastguard Worker    "fullband_erle_estimator.cc",
72*d9f75844SAndroid Build Coastguard Worker    "fullband_erle_estimator.h",
73*d9f75844SAndroid Build Coastguard Worker    "matched_filter.cc",
74*d9f75844SAndroid Build Coastguard Worker    "matched_filter_lag_aggregator.cc",
75*d9f75844SAndroid Build Coastguard Worker    "matched_filter_lag_aggregator.h",
76*d9f75844SAndroid Build Coastguard Worker    "moving_average.cc",
77*d9f75844SAndroid Build Coastguard Worker    "moving_average.h",
78*d9f75844SAndroid Build Coastguard Worker    "multi_channel_content_detector.cc",
79*d9f75844SAndroid Build Coastguard Worker    "multi_channel_content_detector.h",
80*d9f75844SAndroid Build Coastguard Worker    "nearend_detector.h",
81*d9f75844SAndroid Build Coastguard Worker    "refined_filter_update_gain.cc",
82*d9f75844SAndroid Build Coastguard Worker    "refined_filter_update_gain.h",
83*d9f75844SAndroid Build Coastguard Worker    "render_buffer.cc",
84*d9f75844SAndroid Build Coastguard Worker    "render_delay_buffer.cc",
85*d9f75844SAndroid Build Coastguard Worker    "render_delay_buffer.h",
86*d9f75844SAndroid Build Coastguard Worker    "render_delay_controller.cc",
87*d9f75844SAndroid Build Coastguard Worker    "render_delay_controller.h",
88*d9f75844SAndroid Build Coastguard Worker    "render_delay_controller_metrics.cc",
89*d9f75844SAndroid Build Coastguard Worker    "render_delay_controller_metrics.h",
90*d9f75844SAndroid Build Coastguard Worker    "render_signal_analyzer.cc",
91*d9f75844SAndroid Build Coastguard Worker    "render_signal_analyzer.h",
92*d9f75844SAndroid Build Coastguard Worker    "residual_echo_estimator.cc",
93*d9f75844SAndroid Build Coastguard Worker    "residual_echo_estimator.h",
94*d9f75844SAndroid Build Coastguard Worker    "reverb_decay_estimator.cc",
95*d9f75844SAndroid Build Coastguard Worker    "reverb_decay_estimator.h",
96*d9f75844SAndroid Build Coastguard Worker    "reverb_frequency_response.cc",
97*d9f75844SAndroid Build Coastguard Worker    "reverb_frequency_response.h",
98*d9f75844SAndroid Build Coastguard Worker    "reverb_model.cc",
99*d9f75844SAndroid Build Coastguard Worker    "reverb_model.h",
100*d9f75844SAndroid Build Coastguard Worker    "reverb_model_estimator.cc",
101*d9f75844SAndroid Build Coastguard Worker    "reverb_model_estimator.h",
102*d9f75844SAndroid Build Coastguard Worker    "signal_dependent_erle_estimator.cc",
103*d9f75844SAndroid Build Coastguard Worker    "signal_dependent_erle_estimator.h",
104*d9f75844SAndroid Build Coastguard Worker    "spectrum_buffer.cc",
105*d9f75844SAndroid Build Coastguard Worker    "stationarity_estimator.cc",
106*d9f75844SAndroid Build Coastguard Worker    "stationarity_estimator.h",
107*d9f75844SAndroid Build Coastguard Worker    "subband_erle_estimator.cc",
108*d9f75844SAndroid Build Coastguard Worker    "subband_erle_estimator.h",
109*d9f75844SAndroid Build Coastguard Worker    "subband_nearend_detector.cc",
110*d9f75844SAndroid Build Coastguard Worker    "subband_nearend_detector.h",
111*d9f75844SAndroid Build Coastguard Worker    "subtractor.cc",
112*d9f75844SAndroid Build Coastguard Worker    "subtractor.h",
113*d9f75844SAndroid Build Coastguard Worker    "subtractor_output.cc",
114*d9f75844SAndroid Build Coastguard Worker    "subtractor_output.h",
115*d9f75844SAndroid Build Coastguard Worker    "subtractor_output_analyzer.cc",
116*d9f75844SAndroid Build Coastguard Worker    "subtractor_output_analyzer.h",
117*d9f75844SAndroid Build Coastguard Worker    "suppression_filter.cc",
118*d9f75844SAndroid Build Coastguard Worker    "suppression_filter.h",
119*d9f75844SAndroid Build Coastguard Worker    "suppression_gain.cc",
120*d9f75844SAndroid Build Coastguard Worker    "suppression_gain.h",
121*d9f75844SAndroid Build Coastguard Worker    "transparent_mode.cc",
122*d9f75844SAndroid Build Coastguard Worker    "transparent_mode.h",
123*d9f75844SAndroid Build Coastguard Worker  ]
124*d9f75844SAndroid Build Coastguard Worker
125*d9f75844SAndroid Build Coastguard Worker  defines = []
126*d9f75844SAndroid Build Coastguard Worker  if (rtc_build_with_neon && current_cpu != "arm64") {
127*d9f75844SAndroid Build Coastguard Worker    suppressed_configs += [ "//build/config/compiler:compiler_arm_fpu" ]
128*d9f75844SAndroid Build Coastguard Worker    cflags = [ "-mfpu=neon" ]
129*d9f75844SAndroid Build Coastguard Worker  }
130*d9f75844SAndroid Build Coastguard Worker
131*d9f75844SAndroid Build Coastguard Worker  deps = [
132*d9f75844SAndroid Build Coastguard Worker    ":adaptive_fir_filter",
133*d9f75844SAndroid Build Coastguard Worker    ":adaptive_fir_filter_erl",
134*d9f75844SAndroid Build Coastguard Worker    ":aec3_common",
135*d9f75844SAndroid Build Coastguard Worker    ":aec3_fft",
136*d9f75844SAndroid Build Coastguard Worker    ":fft_data",
137*d9f75844SAndroid Build Coastguard Worker    ":matched_filter",
138*d9f75844SAndroid Build Coastguard Worker    ":render_buffer",
139*d9f75844SAndroid Build Coastguard Worker    ":vector_math",
140*d9f75844SAndroid Build Coastguard Worker    "..:apm_logging",
141*d9f75844SAndroid Build Coastguard Worker    "..:audio_buffer",
142*d9f75844SAndroid Build Coastguard Worker    "..:high_pass_filter",
143*d9f75844SAndroid Build Coastguard Worker    "../../../api:array_view",
144*d9f75844SAndroid Build Coastguard Worker    "../../../api/audio:aec3_config",
145*d9f75844SAndroid Build Coastguard Worker    "../../../api/audio:echo_control",
146*d9f75844SAndroid Build Coastguard Worker    "../../../common_audio:common_audio_c",
147*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:checks",
148*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:logging",
149*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:macromagic",
150*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:race_checker",
151*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:safe_minmax",
152*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:swap_queue",
153*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base/experiments:field_trial_parser",
154*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base/system:arch",
155*d9f75844SAndroid Build Coastguard Worker    "../../../system_wrappers",
156*d9f75844SAndroid Build Coastguard Worker    "../../../system_wrappers:field_trial",
157*d9f75844SAndroid Build Coastguard Worker    "../../../system_wrappers:metrics",
158*d9f75844SAndroid Build Coastguard Worker    "../utility:cascaded_biquad_filter",
159*d9f75844SAndroid Build Coastguard Worker  ]
160*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
161*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/strings",
162*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/types:optional",
163*d9f75844SAndroid Build Coastguard Worker  ]
164*d9f75844SAndroid Build Coastguard Worker
165*d9f75844SAndroid Build Coastguard Worker  if (current_cpu == "x86" || current_cpu == "x64") {
166*d9f75844SAndroid Build Coastguard Worker    deps += [ ":aec3_avx2" ]
167*d9f75844SAndroid Build Coastguard Worker  }
168*d9f75844SAndroid Build Coastguard Worker}
169*d9f75844SAndroid Build Coastguard Worker
170*d9f75844SAndroid Build Coastguard Workerrtc_source_set("aec3_common") {
171*d9f75844SAndroid Build Coastguard Worker  sources = [ "aec3_common.h" ]
172*d9f75844SAndroid Build Coastguard Worker}
173*d9f75844SAndroid Build Coastguard Worker
174*d9f75844SAndroid Build Coastguard Workerrtc_source_set("aec3_fft") {
175*d9f75844SAndroid Build Coastguard Worker  sources = [ "aec3_fft.h" ]
176*d9f75844SAndroid Build Coastguard Worker  deps = [
177*d9f75844SAndroid Build Coastguard Worker    ":aec3_common",
178*d9f75844SAndroid Build Coastguard Worker    ":fft_data",
179*d9f75844SAndroid Build Coastguard Worker    "../../../api:array_view",
180*d9f75844SAndroid Build Coastguard Worker    "../../../common_audio/third_party/ooura:fft_size_128",
181*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:checks",
182*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base/system:arch",
183*d9f75844SAndroid Build Coastguard Worker  ]
184*d9f75844SAndroid Build Coastguard Worker}
185*d9f75844SAndroid Build Coastguard Worker
186*d9f75844SAndroid Build Coastguard Workerrtc_source_set("render_buffer") {
187*d9f75844SAndroid Build Coastguard Worker  sources = [
188*d9f75844SAndroid Build Coastguard Worker    "block.h",
189*d9f75844SAndroid Build Coastguard Worker    "block_buffer.h",
190*d9f75844SAndroid Build Coastguard Worker    "fft_buffer.h",
191*d9f75844SAndroid Build Coastguard Worker    "render_buffer.h",
192*d9f75844SAndroid Build Coastguard Worker    "spectrum_buffer.h",
193*d9f75844SAndroid Build Coastguard Worker  ]
194*d9f75844SAndroid Build Coastguard Worker  deps = [
195*d9f75844SAndroid Build Coastguard Worker    ":aec3_common",
196*d9f75844SAndroid Build Coastguard Worker    ":fft_data",
197*d9f75844SAndroid Build Coastguard Worker    "../../../api:array_view",
198*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:checks",
199*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base/system:arch",
200*d9f75844SAndroid Build Coastguard Worker  ]
201*d9f75844SAndroid Build Coastguard Worker}
202*d9f75844SAndroid Build Coastguard Worker
203*d9f75844SAndroid Build Coastguard Workerrtc_source_set("adaptive_fir_filter") {
204*d9f75844SAndroid Build Coastguard Worker  sources = [ "adaptive_fir_filter.h" ]
205*d9f75844SAndroid Build Coastguard Worker  deps = [
206*d9f75844SAndroid Build Coastguard Worker    ":aec3_common",
207*d9f75844SAndroid Build Coastguard Worker    ":aec3_fft",
208*d9f75844SAndroid Build Coastguard Worker    ":fft_data",
209*d9f75844SAndroid Build Coastguard Worker    ":render_buffer",
210*d9f75844SAndroid Build Coastguard Worker    "..:apm_logging",
211*d9f75844SAndroid Build Coastguard Worker    "../../../api:array_view",
212*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base/system:arch",
213*d9f75844SAndroid Build Coastguard Worker  ]
214*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
215*d9f75844SAndroid Build Coastguard Worker}
216*d9f75844SAndroid Build Coastguard Worker
217*d9f75844SAndroid Build Coastguard Workerrtc_source_set("adaptive_fir_filter_erl") {
218*d9f75844SAndroid Build Coastguard Worker  sources = [ "adaptive_fir_filter_erl.h" ]
219*d9f75844SAndroid Build Coastguard Worker  deps = [
220*d9f75844SAndroid Build Coastguard Worker    ":aec3_common",
221*d9f75844SAndroid Build Coastguard Worker    "../../../api:array_view",
222*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base/system:arch",
223*d9f75844SAndroid Build Coastguard Worker  ]
224*d9f75844SAndroid Build Coastguard Worker}
225*d9f75844SAndroid Build Coastguard Worker
226*d9f75844SAndroid Build Coastguard Workerrtc_source_set("matched_filter") {
227*d9f75844SAndroid Build Coastguard Worker  sources = [ "matched_filter.h" ]
228*d9f75844SAndroid Build Coastguard Worker  deps = [
229*d9f75844SAndroid Build Coastguard Worker    ":aec3_common",
230*d9f75844SAndroid Build Coastguard Worker    "../../../api:array_view",
231*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:gtest_prod",
232*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base/system:arch",
233*d9f75844SAndroid Build Coastguard Worker  ]
234*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
235*d9f75844SAndroid Build Coastguard Worker}
236*d9f75844SAndroid Build Coastguard Worker
237*d9f75844SAndroid Build Coastguard Workerrtc_source_set("vector_math") {
238*d9f75844SAndroid Build Coastguard Worker  sources = [ "vector_math.h" ]
239*d9f75844SAndroid Build Coastguard Worker  deps = [
240*d9f75844SAndroid Build Coastguard Worker    ":aec3_common",
241*d9f75844SAndroid Build Coastguard Worker    "../../../api:array_view",
242*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base:checks",
243*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base/system:arch",
244*d9f75844SAndroid Build Coastguard Worker  ]
245*d9f75844SAndroid Build Coastguard Worker}
246*d9f75844SAndroid Build Coastguard Worker
247*d9f75844SAndroid Build Coastguard Workerrtc_source_set("fft_data") {
248*d9f75844SAndroid Build Coastguard Worker  sources = [ "fft_data.h" ]
249*d9f75844SAndroid Build Coastguard Worker  deps = [
250*d9f75844SAndroid Build Coastguard Worker    ":aec3_common",
251*d9f75844SAndroid Build Coastguard Worker    "../../../api:array_view",
252*d9f75844SAndroid Build Coastguard Worker    "../../../rtc_base/system:arch",
253*d9f75844SAndroid Build Coastguard Worker  ]
254*d9f75844SAndroid Build Coastguard Worker}
255*d9f75844SAndroid Build Coastguard Worker
256*d9f75844SAndroid Build Coastguard Workerif (current_cpu == "x86" || current_cpu == "x64") {
257*d9f75844SAndroid Build Coastguard Worker  rtc_library("aec3_avx2") {
258*d9f75844SAndroid Build Coastguard Worker    configs += [ "..:apm_debug_dump" ]
259*d9f75844SAndroid Build Coastguard Worker    sources = [
260*d9f75844SAndroid Build Coastguard Worker      "adaptive_fir_filter_avx2.cc",
261*d9f75844SAndroid Build Coastguard Worker      "adaptive_fir_filter_erl_avx2.cc",
262*d9f75844SAndroid Build Coastguard Worker      "fft_data_avx2.cc",
263*d9f75844SAndroid Build Coastguard Worker      "matched_filter_avx2.cc",
264*d9f75844SAndroid Build Coastguard Worker      "vector_math_avx2.cc",
265*d9f75844SAndroid Build Coastguard Worker    ]
266*d9f75844SAndroid Build Coastguard Worker
267*d9f75844SAndroid Build Coastguard Worker    if (is_win) {
268*d9f75844SAndroid Build Coastguard Worker      cflags = [ "/arch:AVX2" ]
269*d9f75844SAndroid Build Coastguard Worker    } else {
270*d9f75844SAndroid Build Coastguard Worker      cflags = [
271*d9f75844SAndroid Build Coastguard Worker        "-mavx2",
272*d9f75844SAndroid Build Coastguard Worker        "-mfma",
273*d9f75844SAndroid Build Coastguard Worker      ]
274*d9f75844SAndroid Build Coastguard Worker    }
275*d9f75844SAndroid Build Coastguard Worker
276*d9f75844SAndroid Build Coastguard Worker    deps = [
277*d9f75844SAndroid Build Coastguard Worker      ":adaptive_fir_filter",
278*d9f75844SAndroid Build Coastguard Worker      ":adaptive_fir_filter_erl",
279*d9f75844SAndroid Build Coastguard Worker      ":fft_data",
280*d9f75844SAndroid Build Coastguard Worker      ":matched_filter",
281*d9f75844SAndroid Build Coastguard Worker      ":vector_math",
282*d9f75844SAndroid Build Coastguard Worker      "../../../api:array_view",
283*d9f75844SAndroid Build Coastguard Worker      "../../../rtc_base:checks",
284*d9f75844SAndroid Build Coastguard Worker    ]
285*d9f75844SAndroid Build Coastguard Worker  }
286*d9f75844SAndroid Build Coastguard Worker}
287*d9f75844SAndroid Build Coastguard Worker
288*d9f75844SAndroid Build Coastguard Workerif (rtc_include_tests) {
289*d9f75844SAndroid Build Coastguard Worker  rtc_library("aec3_unittests") {
290*d9f75844SAndroid Build Coastguard Worker    testonly = true
291*d9f75844SAndroid Build Coastguard Worker
292*d9f75844SAndroid Build Coastguard Worker    configs += [ "..:apm_debug_dump" ]
293*d9f75844SAndroid Build Coastguard Worker    sources = [
294*d9f75844SAndroid Build Coastguard Worker      "mock/mock_block_processor.cc",
295*d9f75844SAndroid Build Coastguard Worker      "mock/mock_block_processor.h",
296*d9f75844SAndroid Build Coastguard Worker      "mock/mock_echo_remover.cc",
297*d9f75844SAndroid Build Coastguard Worker      "mock/mock_echo_remover.h",
298*d9f75844SAndroid Build Coastguard Worker      "mock/mock_render_delay_buffer.cc",
299*d9f75844SAndroid Build Coastguard Worker      "mock/mock_render_delay_buffer.h",
300*d9f75844SAndroid Build Coastguard Worker      "mock/mock_render_delay_controller.cc",
301*d9f75844SAndroid Build Coastguard Worker      "mock/mock_render_delay_controller.h",
302*d9f75844SAndroid Build Coastguard Worker    ]
303*d9f75844SAndroid Build Coastguard Worker
304*d9f75844SAndroid Build Coastguard Worker    deps = [
305*d9f75844SAndroid Build Coastguard Worker      ":adaptive_fir_filter",
306*d9f75844SAndroid Build Coastguard Worker      ":adaptive_fir_filter_erl",
307*d9f75844SAndroid Build Coastguard Worker      ":aec3",
308*d9f75844SAndroid Build Coastguard Worker      ":aec3_common",
309*d9f75844SAndroid Build Coastguard Worker      ":aec3_fft",
310*d9f75844SAndroid Build Coastguard Worker      ":fft_data",
311*d9f75844SAndroid Build Coastguard Worker      ":matched_filter",
312*d9f75844SAndroid Build Coastguard Worker      ":render_buffer",
313*d9f75844SAndroid Build Coastguard Worker      ":vector_math",
314*d9f75844SAndroid Build Coastguard Worker      "..:apm_logging",
315*d9f75844SAndroid Build Coastguard Worker      "..:audio_buffer",
316*d9f75844SAndroid Build Coastguard Worker      "..:audio_processing",
317*d9f75844SAndroid Build Coastguard Worker      "..:high_pass_filter",
318*d9f75844SAndroid Build Coastguard Worker      "../../../api:array_view",
319*d9f75844SAndroid Build Coastguard Worker      "../../../api/audio:aec3_config",
320*d9f75844SAndroid Build Coastguard Worker      "../../../rtc_base:checks",
321*d9f75844SAndroid Build Coastguard Worker      "../../../rtc_base:macromagic",
322*d9f75844SAndroid Build Coastguard Worker      "../../../rtc_base:random",
323*d9f75844SAndroid Build Coastguard Worker      "../../../rtc_base:safe_minmax",
324*d9f75844SAndroid Build Coastguard Worker      "../../../rtc_base:stringutils",
325*d9f75844SAndroid Build Coastguard Worker      "../../../rtc_base/system:arch",
326*d9f75844SAndroid Build Coastguard Worker      "../../../system_wrappers",
327*d9f75844SAndroid Build Coastguard Worker      "../../../system_wrappers:metrics",
328*d9f75844SAndroid Build Coastguard Worker      "../../../test:field_trial",
329*d9f75844SAndroid Build Coastguard Worker      "../../../test:test_support",
330*d9f75844SAndroid Build Coastguard Worker      "../utility:cascaded_biquad_filter",
331*d9f75844SAndroid Build Coastguard Worker    ]
332*d9f75844SAndroid Build Coastguard Worker    absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
333*d9f75844SAndroid Build Coastguard Worker
334*d9f75844SAndroid Build Coastguard Worker    defines = []
335*d9f75844SAndroid Build Coastguard Worker
336*d9f75844SAndroid Build Coastguard Worker    if (rtc_enable_protobuf) {
337*d9f75844SAndroid Build Coastguard Worker      sources += [
338*d9f75844SAndroid Build Coastguard Worker        "adaptive_fir_filter_erl_unittest.cc",
339*d9f75844SAndroid Build Coastguard Worker        "adaptive_fir_filter_unittest.cc",
340*d9f75844SAndroid Build Coastguard Worker        "aec3_fft_unittest.cc",
341*d9f75844SAndroid Build Coastguard Worker        "aec_state_unittest.cc",
342*d9f75844SAndroid Build Coastguard Worker        "alignment_mixer_unittest.cc",
343*d9f75844SAndroid Build Coastguard Worker        "api_call_jitter_metrics_unittest.cc",
344*d9f75844SAndroid Build Coastguard Worker        "block_delay_buffer_unittest.cc",
345*d9f75844SAndroid Build Coastguard Worker        "block_framer_unittest.cc",
346*d9f75844SAndroid Build Coastguard Worker        "block_processor_metrics_unittest.cc",
347*d9f75844SAndroid Build Coastguard Worker        "block_processor_unittest.cc",
348*d9f75844SAndroid Build Coastguard Worker        "clockdrift_detector_unittest.cc",
349*d9f75844SAndroid Build Coastguard Worker        "coarse_filter_update_gain_unittest.cc",
350*d9f75844SAndroid Build Coastguard Worker        "comfort_noise_generator_unittest.cc",
351*d9f75844SAndroid Build Coastguard Worker        "config_selector_unittest.cc",
352*d9f75844SAndroid Build Coastguard Worker        "decimator_unittest.cc",
353*d9f75844SAndroid Build Coastguard Worker        "echo_canceller3_unittest.cc",
354*d9f75844SAndroid Build Coastguard Worker        "echo_path_delay_estimator_unittest.cc",
355*d9f75844SAndroid Build Coastguard Worker        "echo_path_variability_unittest.cc",
356*d9f75844SAndroid Build Coastguard Worker        "echo_remover_metrics_unittest.cc",
357*d9f75844SAndroid Build Coastguard Worker        "echo_remover_unittest.cc",
358*d9f75844SAndroid Build Coastguard Worker        "erl_estimator_unittest.cc",
359*d9f75844SAndroid Build Coastguard Worker        "erle_estimator_unittest.cc",
360*d9f75844SAndroid Build Coastguard Worker        "fft_data_unittest.cc",
361*d9f75844SAndroid Build Coastguard Worker        "filter_analyzer_unittest.cc",
362*d9f75844SAndroid Build Coastguard Worker        "frame_blocker_unittest.cc",
363*d9f75844SAndroid Build Coastguard Worker        "matched_filter_lag_aggregator_unittest.cc",
364*d9f75844SAndroid Build Coastguard Worker        "matched_filter_unittest.cc",
365*d9f75844SAndroid Build Coastguard Worker        "moving_average_unittest.cc",
366*d9f75844SAndroid Build Coastguard Worker        "multi_channel_content_detector_unittest.cc",
367*d9f75844SAndroid Build Coastguard Worker        "refined_filter_update_gain_unittest.cc",
368*d9f75844SAndroid Build Coastguard Worker        "render_buffer_unittest.cc",
369*d9f75844SAndroid Build Coastguard Worker        "render_delay_buffer_unittest.cc",
370*d9f75844SAndroid Build Coastguard Worker        "render_delay_controller_metrics_unittest.cc",
371*d9f75844SAndroid Build Coastguard Worker        "render_delay_controller_unittest.cc",
372*d9f75844SAndroid Build Coastguard Worker        "render_signal_analyzer_unittest.cc",
373*d9f75844SAndroid Build Coastguard Worker        "residual_echo_estimator_unittest.cc",
374*d9f75844SAndroid Build Coastguard Worker        "reverb_model_estimator_unittest.cc",
375*d9f75844SAndroid Build Coastguard Worker        "signal_dependent_erle_estimator_unittest.cc",
376*d9f75844SAndroid Build Coastguard Worker        "subtractor_unittest.cc",
377*d9f75844SAndroid Build Coastguard Worker        "suppression_filter_unittest.cc",
378*d9f75844SAndroid Build Coastguard Worker        "suppression_gain_unittest.cc",
379*d9f75844SAndroid Build Coastguard Worker        "vector_math_unittest.cc",
380*d9f75844SAndroid Build Coastguard Worker      ]
381*d9f75844SAndroid Build Coastguard Worker    }
382*d9f75844SAndroid Build Coastguard Worker
383*d9f75844SAndroid Build Coastguard Worker    if (!build_with_chromium) {
384*d9f75844SAndroid Build Coastguard Worker      deps += [ "..:audio_processing_unittests" ]
385*d9f75844SAndroid Build Coastguard Worker    }
386*d9f75844SAndroid Build Coastguard Worker  }
387*d9f75844SAndroid Build Coastguard Worker}
388