APM: Prepare to remove `AdaptiveDigitalGainController` wrapper
Isolates the build targets for the `AdaptiveDigitalGainController`
dependencies that will be moved into `GainController2`.
`AdaptiveDigitalGainController` will be removed because the wrapper
itself adds little - that's the reason why it has no unit tests.
Bug: webrtc:7494
Change-Id: I2ca41f9255c8faefe4b2cb4ec1f8db536e582f39
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/280482
Reviewed-by: Hanna Silen <silen@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38799}
diff --git a/modules/audio_processing/BUILD.gn b/modules/audio_processing/BUILD.gn
index e1f6877..a403ead 100644
--- a/modules/audio_processing/BUILD.gn
+++ b/modules/audio_processing/BUILD.gn
@@ -417,12 +417,14 @@
"../audio_coding:neteq_input_audio_tools",
"aec_dump:mock_aec_dump_unittests",
"agc:agc_unittests",
- "agc2:adaptive_digital_unittests",
+ "agc2:adaptive_digital_gain_applier_unittest",
"agc2:biquad_filter_unittests",
"agc2:fixed_digital_unittests",
+ "agc2:gain_applier_unittest",
"agc2:input_volume_controller_unittests",
"agc2:input_volume_stats_reporter_unittests",
"agc2:noise_estimator_unittests",
+ "agc2:saturation_protector_unittest",
"agc2:speech_level_estimator_unittest",
"agc2:test_utils",
"agc2:vad_wrapper_unittests",
diff --git a/modules/audio_processing/agc2/BUILD.gn b/modules/audio_processing/agc2/BUILD.gn
index cdea022..6e07c4c 100644
--- a/modules/audio_processing/agc2/BUILD.gn
+++ b/modules/audio_processing/agc2/BUILD.gn
@@ -41,10 +41,62 @@
rtc_library("adaptive_digital") {
sources = [
- "adaptive_digital_gain_applier.cc",
- "adaptive_digital_gain_applier.h",
"adaptive_digital_gain_controller.cc",
"adaptive_digital_gain_controller.h",
+ ]
+
+ visibility = [
+ "..:gain_controller2",
+ "./*",
+ ]
+
+ configs += [ "..:apm_debug_dump" ]
+
+ deps = [
+ ":adaptive_digital_gain_applier",
+ ":noise_level_estimator",
+ ":saturation_protector",
+ ":speech_level_estimator",
+ "..:api",
+ "..:apm_logging",
+ "..:audio_frame_view",
+ "../../../common_audio",
+ "../../../rtc_base:checks",
+ "../../../rtc_base:logging",
+ ]
+
+ absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
+}
+
+rtc_library("adaptive_digital_gain_applier") {
+ sources = [
+ "adaptive_digital_gain_applier.cc",
+ "adaptive_digital_gain_applier.h",
+ ]
+
+ visibility = [
+ "..:gain_controller2",
+ "./*",
+ ]
+
+ configs += [ "..:apm_debug_dump" ]
+
+ deps = [
+ ":common",
+ ":gain_applier",
+ "..:api",
+ "..:apm_logging",
+ "..:audio_frame_view",
+ "../../../common_audio",
+ "../../../rtc_base:checks",
+ "../../../rtc_base:logging",
+ "../../../rtc_base:safe_minmax",
+ "../../../system_wrappers:metrics",
+ ]
+}
+
+rtc_library("saturation_protector") {
+ sources = [
"saturation_protector.cc",
"saturation_protector.h",
"saturation_protector_buffer.cc",
@@ -60,19 +112,10 @@
deps = [
":common",
- ":gain_applier",
- ":noise_level_estimator",
- ":speech_level_estimator",
- "..:api",
"..:apm_logging",
- "..:audio_frame_view",
- "../../../api:array_view",
- "../../../common_audio",
"../../../rtc_base:checks",
- "../../../rtc_base:logging",
"../../../rtc_base:safe_compare",
"../../../rtc_base:safe_minmax",
- "../../../system_wrappers:metrics",
]
absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
@@ -298,27 +341,51 @@
]
}
-rtc_library("adaptive_digital_unittests") {
+rtc_library("adaptive_digital_gain_applier_unittest") {
testonly = true
configs += [ "..:apm_debug_dump" ]
- sources = [
- "adaptive_digital_gain_applier_unittest.cc",
- "gain_applier_unittest.cc",
- "saturation_protector_buffer_unittest.cc",
- "saturation_protector_unittest.cc",
- ]
+ sources = [ "adaptive_digital_gain_applier_unittest.cc" ]
+
deps = [
- ":adaptive_digital",
+ ":adaptive_digital_gain_applier",
":common",
- ":gain_applier",
":test_utils",
"..:api",
"..:apm_logging",
"..:audio_frame_view",
- "../../../api:array_view",
"../../../common_audio",
- "../../../rtc_base:checks",
+ "../../../rtc_base:gunit_helpers",
+ "../../../test:test_support",
+ ]
+}
+
+rtc_library("gain_applier_unittest") {
+ testonly = true
+ configs += [ "..:apm_debug_dump" ]
+
+ sources = [ "gain_applier_unittest.cc" ]
+ deps = [
+ ":gain_applier",
+ ":test_utils",
+ "..:audio_frame_view",
+ "../../../rtc_base:gunit_helpers",
+ "../../../test:test_support",
+ ]
+}
+
+rtc_library("saturation_protector_unittest") {
+ testonly = true
+ configs += [ "..:apm_debug_dump" ]
+
+ sources = [
+ "saturation_protector_buffer_unittest.cc",
+ "saturation_protector_unittest.cc",
+ ]
+ deps = [
+ ":common",
+ ":saturation_protector",
+ "..:apm_logging",
"../../../rtc_base:gunit_helpers",
"../../../test:test_support",
]