BUILD.gn (5157B)
1 # Copyright (c) 2018 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_source_set("audio_device") { 12 visibility = [ "*" ] 13 sources = [ 14 "audio_device.h", 15 "audio_device_defines.h", 16 ] 17 deps = [ 18 "..:ref_count", 19 "../../rtc_base:stringutils", 20 ] 21 } 22 23 if (rtc_include_internal_audio_device) { 24 rtc_library("create_audio_device_module") { 25 visibility = [ "*" ] 26 sources = [ 27 "create_audio_device_module.cc", 28 "create_audio_device_module.h", 29 ] 30 deps = [ 31 ":audio_device", 32 "..:scoped_refptr", 33 "../../modules/audio_device:audio_device_impl", 34 "../environment", 35 "//third_party/abseil-cpp/absl/base:nullability", 36 ] 37 } 38 } 39 40 rtc_library("audio_frame_api") { 41 visibility = [ "*" ] 42 sources = [ 43 "audio_frame.cc", 44 "audio_frame.h", 45 "audio_view.h", 46 "channel_layout.cc", 47 "channel_layout.h", 48 ] 49 50 deps = [ 51 "..:array_view", 52 "..:rtp_packet_info", 53 "../../rtc_base:checks", 54 "../../rtc_base:logging", 55 "../../rtc_base:timeutils", 56 ] 57 } 58 59 rtc_source_set("audio_frame_processor") { 60 visibility = [ "*" ] 61 sources = [ "audio_frame_processor.h" ] 62 } 63 64 rtc_source_set("audio_mixer_api") { 65 visibility = [ "*" ] 66 sources = [ "audio_mixer.h" ] 67 68 deps = [ 69 ":audio_frame_api", 70 "..:make_ref_counted", 71 "..:ref_count", 72 "../../rtc_base:refcount", 73 ] 74 } 75 76 rtc_library("audio_processing") { 77 visibility = [ "*" ] 78 sources = [ 79 "audio_processing.cc", 80 "audio_processing.h", 81 ] 82 deps = [ 83 ":aec3_config", 84 ":audio_processing_statistics", 85 ":echo_control", 86 "..:array_view", 87 "..:ref_count", 88 "..:scoped_refptr", 89 "../../rtc_base:checks", 90 "../../rtc_base:stringutils", 91 "../../rtc_base/system:arch", 92 "../../rtc_base/system:file_wrapper", 93 "../../rtc_base/system:rtc_export", 94 "../environment", 95 "../task_queue", 96 "//third_party/abseil-cpp/absl/base:nullability", 97 "//third_party/abseil-cpp/absl/strings:string_view", 98 ] 99 } 100 101 rtc_library("builtin_audio_processing_builder") { 102 visibility = [ "*" ] 103 configs += [ "../../modules/audio_processing:apm_debug_dump" ] 104 sources = [ 105 "builtin_audio_processing_builder.cc", 106 "builtin_audio_processing_builder.h", 107 ] 108 deps = [ 109 ":aec3_config", 110 ":audio_processing", 111 ":echo_control", 112 ":neural_residual_echo_estimator_api", 113 "..:make_ref_counted", 114 "..:scoped_refptr", 115 "../../modules/audio_processing", 116 "../../rtc_base:logging", 117 "../../rtc_base/system:rtc_export", 118 "../environment", 119 "//third_party/abseil-cpp/absl/base:nullability", 120 ] 121 } 122 123 rtc_library("audio_processing_statistics") { 124 visibility = [ "*" ] 125 sources = [ 126 "audio_processing_statistics.cc", 127 "audio_processing_statistics.h", 128 ] 129 deps = [ "../../rtc_base/system:rtc_export" ] 130 } 131 132 rtc_library("aec3_config") { 133 visibility = [ "*" ] 134 sources = [ 135 "echo_canceller3_config.cc", 136 "echo_canceller3_config.h", 137 ] 138 deps = [ 139 "../../rtc_base:checks", 140 "../../rtc_base:safe_minmax", 141 "../../rtc_base/system:rtc_export", 142 ] 143 } 144 145 rtc_library("aec3_factory") { 146 visibility = [ "*" ] 147 configs += [ "../../modules/audio_processing:apm_debug_dump" ] 148 sources = [ 149 "echo_canceller3_factory.cc", 150 "echo_canceller3_factory.h", 151 ] 152 153 deps = [ 154 ":aec3_config", 155 ":echo_control", 156 ":neural_residual_echo_estimator_api", 157 "../../modules/audio_processing/aec3", 158 "../../rtc_base/system:rtc_export", 159 "../environment", 160 "//third_party/abseil-cpp/absl/base:nullability", 161 ] 162 } 163 164 rtc_source_set("echo_control") { 165 visibility = [ "*" ] 166 sources = [ "echo_control.h" ] 167 deps = [ 168 ":neural_residual_echo_estimator_api", 169 "../../rtc_base:checks", 170 "../environment", 171 "//third_party/abseil-cpp/absl/base:nullability", 172 ] 173 } 174 175 rtc_source_set("neural_residual_echo_estimator_api") { 176 visibility = [ "*" ] 177 sources = [ "neural_residual_echo_estimator.h" ] 178 deps = [ "..:array_view" ] 179 } 180 181 rtc_library("echo_detector_creator") { 182 visibility = [ "*" ] 183 allow_poison = [ "default_echo_detector" ] 184 sources = [ 185 "echo_detector_creator.cc", 186 "echo_detector_creator.h", 187 ] 188 deps = [ 189 ":audio_processing", 190 "..:make_ref_counted", 191 "../../api:scoped_refptr", 192 "../../modules/audio_processing:residual_echo_detector", 193 ] 194 } 195 196 if (rtc_include_tests) { 197 rtc_library("audio_api_unittests") { 198 testonly = true 199 sources = [ 200 "audio_processing_unittest.cc", 201 "builtin_audio_processing_builder_unittest.cc", 202 ] 203 deps = [ 204 ":audio_processing", 205 ":builtin_audio_processing_builder", 206 "..:make_ref_counted", 207 "..:scoped_refptr", 208 "../../modules/audio_processing:mocks", 209 "../../test:test_support", 210 "../environment", 211 "../environment:environment_factory", 212 "test:audio_api_unittests", 213 ] 214 } 215 }