| 12
 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
 
 | # Copyright (c) 2019 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS.  All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
import("../../../webrtc.gni")
rtc_static_library("ns") {
  visibility = [ "*" ]
  configs += [ "..:apm_debug_dump" ]
  sources = [
    "fast_math.cc",
    "fast_math.h",
    "histograms.cc",
    "histograms.h",
    "noise_estimator.cc",
    "noise_estimator.h",
    "noise_suppressor.cc",
    "noise_suppressor.h",
    "ns_common.h",
    "ns_config.h",
    "ns_fft.cc",
    "ns_fft.h",
    "prior_signal_model.cc",
    "prior_signal_model.h",
    "prior_signal_model_estimator.cc",
    "prior_signal_model_estimator.h",
    "quantile_noise_estimator.cc",
    "quantile_noise_estimator.h",
    "signal_model.cc",
    "signal_model.h",
    "signal_model_estimator.cc",
    "signal_model_estimator.h",
    "speech_probability_estimator.cc",
    "speech_probability_estimator.h",
    "suppression_params.cc",
    "suppression_params.h",
    "wiener_filter.cc",
    "wiener_filter.h",
  ]
  defines = []
  if (rtc_build_with_neon && target_cpu != "arm64") {
    suppressed_configs += [ "//chromium/build/config/compiler:compiler_arm_fpu" ]
    cflags = [ "-mfpu=neon" ]
  }
  deps = [
    "..:apm_logging",
    "..:audio_buffer",
    "..:high_pass_filter",
    "../../../api:array_view",
    "../../../common_audio:common_audio_c",
    "../../../common_audio/third_party/ooura:fft_size_128",
    "../../../common_audio/third_party/ooura:fft_size_256",
    "../../../rtc_base:checks",
    "../../../rtc_base:safe_minmax",
    "../../../rtc_base/system:arch",
    "../../../system_wrappers",
    "../../../system_wrappers:field_trial",
    "../../../system_wrappers:metrics",
    "../utility:cascaded_biquad_filter",
  ]
}
if (rtc_include_tests) {
  rtc_source_set("ns_unittests") {
    testonly = true
    configs += [ "..:apm_debug_dump" ]
    sources = [ "noise_suppressor_unittest.cc" ]
    deps = [
      ":ns",
      "..:apm_logging",
      "..:audio_buffer",
      "..:audio_processing",
      "..:high_pass_filter",
      "../../../api:array_view",
      "../../../rtc_base:checks",
      "../../../rtc_base:safe_minmax",
      "../../../rtc_base:stringutils",
      "../../../rtc_base/system:arch",
      "../../../system_wrappers",
      "../../../test:test_support",
      "../utility:cascaded_biquad_filter",
    ]
    defines = []
    if (rtc_enable_protobuf) {
      sources += []
    }
    if (!build_with_chromium) {
      deps += [ "..:audio_processing_unittests" ]
    }
  }
}
 |