BUILD.gn (11483B)
1 # Copyright (c) 2017 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 9 import("../../../webrtc.gni") 10 11 rtc_library("speech_level_estimator") { 12 sources = [ 13 "speech_level_estimator.cc", 14 "speech_level_estimator.h", 15 ] 16 17 visibility = [ 18 "..:gain_controller2", 19 "./*", 20 ] 21 22 configs += [ "..:apm_debug_dump" ] 23 24 deps = [ 25 ":common", 26 "..:apm_logging", 27 "../../../api:array_view", 28 "../../../api/audio:audio_processing", 29 "../../../rtc_base:checks", 30 "../../../rtc_base:logging", 31 "../../../rtc_base:safe_minmax", 32 ] 33 } 34 35 rtc_library("adaptive_digital_gain_controller") { 36 sources = [ 37 "adaptive_digital_gain_controller.cc", 38 "adaptive_digital_gain_controller.h", 39 ] 40 41 visibility = [ 42 "..:gain_controller2", 43 "./*", 44 ] 45 46 configs += [ "..:apm_debug_dump" ] 47 48 deps = [ 49 ":common", 50 ":gain_applier", 51 "..:apm_logging", 52 "../../../api/audio:audio_frame_api", 53 "../../../api/audio:audio_processing", 54 "../../../common_audio", 55 "../../../rtc_base:checks", 56 "../../../rtc_base:logging", 57 "../../../rtc_base:safe_minmax", 58 "../../../system_wrappers:metrics", 59 ] 60 } 61 62 rtc_library("saturation_protector") { 63 sources = [ 64 "saturation_protector.cc", 65 "saturation_protector.h", 66 "saturation_protector_buffer.cc", 67 "saturation_protector_buffer.h", 68 ] 69 70 visibility = [ 71 "..:gain_controller2", 72 "./*", 73 ] 74 75 configs += [ "..:apm_debug_dump" ] 76 77 deps = [ 78 ":common", 79 "..:apm_logging", 80 "../../../rtc_base:checks", 81 "../../../rtc_base:safe_compare", 82 "../../../rtc_base:safe_minmax", 83 ] 84 } 85 86 rtc_library("biquad_filter") { 87 visibility = [ "./*" ] 88 sources = [ 89 "biquad_filter.cc", 90 "biquad_filter.h", 91 ] 92 deps = [ 93 "../../../api:array_view", 94 "../../../rtc_base:checks", 95 ] 96 } 97 98 rtc_library("clipping_predictor") { 99 visibility = [ 100 "../agc", 101 "./*", 102 ] 103 104 sources = [ 105 "clipping_predictor.cc", 106 "clipping_predictor.h", 107 "clipping_predictor_level_buffer.cc", 108 "clipping_predictor_level_buffer.h", 109 ] 110 111 deps = [ 112 ":gain_map", 113 "..:audio_frame_view", 114 "../../../api/audio:audio_processing", 115 "../../../common_audio", 116 "../../../rtc_base:checks", 117 "../../../rtc_base:logging", 118 "../../../rtc_base:safe_minmax", 119 ] 120 } 121 122 rtc_source_set("common") { 123 sources = [ "agc2_common.h" ] 124 } 125 126 rtc_library("fixed_digital") { 127 sources = [ 128 "fixed_digital_level_estimator.cc", 129 "fixed_digital_level_estimator.h", 130 "interpolated_gain_curve.cc", 131 "interpolated_gain_curve.h", 132 "limiter.cc", 133 "limiter.h", 134 ] 135 136 visibility = [ 137 "..:gain_controller2", 138 "../../audio_mixer:audio_mixer_impl", 139 "./*", 140 ] 141 142 configs += [ "..:apm_debug_dump" ] 143 144 deps = [ 145 ":common", 146 "..:apm_logging", 147 "..:audio_frame_view", 148 "../../../api:array_view", 149 "../../../api/audio:audio_frame_api", 150 "../../../common_audio", 151 "../../../rtc_base:checks", 152 "../../../rtc_base:gtest_prod", 153 "../../../rtc_base:safe_conversions", 154 "../../../rtc_base:safe_minmax", 155 "../../../rtc_base:stringutils", 156 "../../../system_wrappers:metrics", 157 "//third_party/abseil-cpp/absl/strings:string_view", 158 ] 159 } 160 161 rtc_library("gain_applier") { 162 sources = [ 163 "gain_applier.cc", 164 "gain_applier.h", 165 ] 166 167 visibility = [ 168 "..:gain_controller2", 169 "./*", 170 ] 171 172 deps = [ 173 ":common", 174 "..:audio_frame_view", 175 "../../../api/audio:audio_frame_api", 176 "../../../rtc_base:checks", 177 "../../../rtc_base:safe_minmax", 178 ] 179 } 180 181 rtc_source_set("gain_map") { 182 visibility = [ 183 "..:analog_mic_simulation", 184 "../agc", 185 "./*", 186 ] 187 188 sources = [ "gain_map_internal.h" ] 189 } 190 191 rtc_library("input_volume_controller") { 192 sources = [ 193 "input_volume_controller.cc", 194 "input_volume_controller.h", 195 "speech_probability_buffer.cc", 196 "speech_probability_buffer.h", 197 ] 198 199 visibility = [ 200 "..:audio_processing", 201 "..:audio_processing_unittests", 202 "..:gain_controller2", 203 "./*", 204 ] 205 206 configs += [ "..:apm_debug_dump" ] 207 208 deps = [ 209 ":clipping_predictor", 210 ":gain_map", 211 ":input_volume_stats_reporter", 212 "..:audio_buffer", 213 "..:audio_frame_view", 214 "../../../api:array_view", 215 "../../../api/audio:audio_processing", 216 "../../../rtc_base:checks", 217 "../../../rtc_base:checks", 218 "../../../rtc_base:gtest_prod", 219 "../../../rtc_base:gtest_prod", 220 "../../../rtc_base:logging", 221 "../../../rtc_base:safe_minmax", 222 "../../../system_wrappers:metrics", 223 ] 224 } 225 226 rtc_library("noise_level_estimator") { 227 sources = [ 228 "noise_level_estimator.cc", 229 "noise_level_estimator.h", 230 ] 231 deps = [ 232 ":biquad_filter", 233 "..:apm_logging", 234 "../../../api/audio:audio_frame_api", 235 "../../../rtc_base:checks", 236 "../../../system_wrappers", 237 ] 238 239 visibility = [ 240 "..:gain_controller2", 241 "./*", 242 ] 243 244 configs += [ "..:apm_debug_dump" ] 245 } 246 247 rtc_library("vad_wrapper") { 248 sources = [ 249 "vad_wrapper.cc", 250 "vad_wrapper.h", 251 ] 252 253 visibility = [ 254 "..:audio_processing_unittests", 255 "..:gain_controller2", 256 "./*", 257 ] 258 259 defines = [] 260 if (rtc_build_with_neon && current_cpu != "arm64") { 261 suppressed_configs += [ "//chromium/build/config/compiler:compiler_arm_fpu" ] 262 cflags = [ "-mfpu=neon" ] 263 } 264 265 deps = [ 266 ":common", 267 ":cpu_features", 268 "../../../api/audio:audio_frame_api", 269 "../../../common_audio", 270 "../../../rtc_base:checks", 271 "rnn_vad", 272 "rnn_vad:rnn_vad_common", 273 ] 274 } 275 276 rtc_library("cpu_features") { 277 sources = [ 278 "cpu_features.cc", 279 "cpu_features.h", 280 ] 281 282 visibility = [ 283 "..:audio_processing_unittests", 284 "..:gain_controller2", 285 "./*", 286 ] 287 288 deps = [ 289 "../../../rtc_base:cpu_info", 290 "../../../rtc_base:stringutils", 291 "../../../rtc_base/system:arch", 292 ] 293 } 294 295 rtc_library("speech_level_estimator_unittest") { 296 testonly = true 297 configs += [ "..:apm_debug_dump" ] 298 299 sources = [ "speech_level_estimator_unittest.cc" ] 300 deps = [ 301 ":common", 302 ":speech_level_estimator", 303 "..:apm_logging", 304 "../../../api/audio:audio_processing", 305 "../../../rtc_base:checks", 306 "../../../rtc_base:gunit_helpers", 307 "../../../test:test_support", 308 ] 309 } 310 311 rtc_library("adaptive_digital_gain_controller_unittest") { 312 testonly = true 313 configs += [ "..:apm_debug_dump" ] 314 315 sources = [ "adaptive_digital_gain_controller_unittest.cc" ] 316 317 deps = [ 318 ":adaptive_digital_gain_controller", 319 ":common", 320 ":test_utils", 321 "..:apm_logging", 322 "..:audio_frame_view", 323 "../../../api/audio:audio_processing", 324 "../../../common_audio", 325 "../../../rtc_base:gunit_helpers", 326 "../../../test:test_support", 327 ] 328 } 329 330 rtc_library("gain_applier_unittest") { 331 testonly = true 332 configs += [ "..:apm_debug_dump" ] 333 334 sources = [ "gain_applier_unittest.cc" ] 335 deps = [ 336 ":gain_applier", 337 ":test_utils", 338 "../../../api/audio:audio_frame_api", 339 "../../../rtc_base:gunit_helpers", 340 "../../../test:test_support", 341 ] 342 } 343 344 rtc_library("saturation_protector_unittest") { 345 testonly = true 346 configs += [ "..:apm_debug_dump" ] 347 348 sources = [ 349 "saturation_protector_buffer_unittest.cc", 350 "saturation_protector_unittest.cc", 351 ] 352 deps = [ 353 ":common", 354 ":saturation_protector", 355 "..:apm_logging", 356 "../../../rtc_base:gunit_helpers", 357 "../../../test:test_support", 358 ] 359 } 360 361 rtc_library("biquad_filter_unittests") { 362 testonly = true 363 sources = [ "biquad_filter_unittest.cc" ] 364 deps = [ 365 ":biquad_filter", 366 "../../../api:array_view", 367 "../../../rtc_base:gunit_helpers", 368 "../../../test:test_support", 369 ] 370 } 371 372 rtc_library("fixed_digital_unittests") { 373 testonly = true 374 configs += [ "..:apm_debug_dump" ] 375 376 sources = [ 377 "agc2_testing_common_unittest.cc", 378 "compute_interpolated_gain_curve.cc", 379 "compute_interpolated_gain_curve.h", 380 "fixed_digital_level_estimator_unittest.cc", 381 "interpolated_gain_curve_unittest.cc", 382 "limiter_db_gain_curve.cc", 383 "limiter_db_gain_curve.h", 384 "limiter_db_gain_curve_unittest.cc", 385 "limiter_unittest.cc", 386 ] 387 deps = [ 388 ":common", 389 ":fixed_digital", 390 ":test_utils", 391 "..:apm_logging", 392 "..:audio_frame_view", 393 "../../../api:array_view", 394 "../../../api/audio:audio_frame_api", 395 "../../../common_audio", 396 "../../../rtc_base:checks", 397 "../../../rtc_base:gunit_helpers", 398 "../../../system_wrappers:metrics", 399 "../../../test:test_support", 400 ] 401 } 402 403 rtc_library("input_volume_controller_unittests") { 404 testonly = true 405 sources = [ 406 "clipping_predictor_level_buffer_unittest.cc", 407 "clipping_predictor_unittest.cc", 408 "input_volume_controller_unittest.cc", 409 "speech_probability_buffer_unittest.cc", 410 ] 411 412 configs += [ "..:apm_debug_dump" ] 413 414 deps = [ 415 ":clipping_predictor", 416 ":gain_map", 417 ":input_volume_controller", 418 "..:audio_buffer", 419 "..:audio_frame_view", 420 "../../../api:array_view", 421 "../../../api/audio:audio_processing", 422 "../../../rtc_base:checks", 423 "../../../rtc_base:random", 424 "../../../rtc_base:safe_conversions", 425 "../../../rtc_base:safe_minmax", 426 "../../../rtc_base:stringutils", 427 "../../../system_wrappers:metrics", 428 "../../../test:fileutils", 429 "../../../test:test_support", 430 "//testing/gtest", 431 ] 432 } 433 434 rtc_library("noise_estimator_unittests") { 435 testonly = true 436 configs += [ "..:apm_debug_dump" ] 437 438 sources = [ "noise_level_estimator_unittest.cc" ] 439 deps = [ 440 ":noise_level_estimator", 441 ":test_utils", 442 "..:apm_logging", 443 "../../../api:function_view", 444 "../../../api/audio:audio_frame_api", 445 "../../../rtc_base:checks", 446 "../../../rtc_base:gunit_helpers", 447 "../../../test:test_support", 448 ] 449 } 450 451 rtc_library("vad_wrapper_unittests") { 452 testonly = true 453 sources = [ "vad_wrapper_unittest.cc" ] 454 deps = [ 455 ":common", 456 ":vad_wrapper", 457 "../../../api:array_view", 458 "../../../api/audio:audio_frame_api", 459 "../../../rtc_base:checks", 460 "../../../rtc_base:gunit_helpers", 461 "../../../rtc_base:safe_compare", 462 "../../../test:test_support", 463 ] 464 } 465 466 rtc_library("test_utils") { 467 testonly = true 468 visibility = [ 469 ":*", 470 "..:audio_processing_unittests", 471 ] 472 sources = [ 473 "agc2_testing_common.cc", 474 "agc2_testing_common.h", 475 "vector_float_frame.cc", 476 "vector_float_frame.h", 477 ] 478 deps = [ 479 "..:audio_frame_view", 480 "../../../api/audio:audio_frame_api", 481 "../../../rtc_base:checks", 482 "../../../rtc_base:random", 483 ] 484 } 485 486 rtc_library("input_volume_stats_reporter") { 487 sources = [ 488 "input_volume_stats_reporter.cc", 489 "input_volume_stats_reporter.h", 490 ] 491 deps = [ 492 "../../../rtc_base:checks", 493 "../../../rtc_base:gtest_prod", 494 "../../../rtc_base:logging", 495 "../../../rtc_base:safe_minmax", 496 "../../../rtc_base:stringutils", 497 "../../../system_wrappers:metrics", 498 "//third_party/abseil-cpp/absl/strings:string_view", 499 ] 500 } 501 502 rtc_library("input_volume_stats_reporter_unittests") { 503 testonly = true 504 sources = [ "input_volume_stats_reporter_unittest.cc" ] 505 deps = [ 506 ":input_volume_stats_reporter", 507 "../../../rtc_base:stringutils", 508 "../../../system_wrappers:metrics", 509 "../../../test:test_support", 510 "//third_party/abseil-cpp/absl/strings:string_view", 511 ] 512 }