Extract some test code out from audio_device_impl into own targets
Bug: b/272350185, webrtc:15081
Change-Id: Ic7a0c8b335bb60d7975a490896da92aa95575ca5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/310784
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40384}
diff --git a/modules/audio_device/BUILD.gn b/modules/audio_device/BUILD.gn
index a0a6f53..3fe6f1d 100644
--- a/modules/audio_device/BUILD.gn
+++ b/modules/audio_device/BUILD.gn
@@ -57,11 +57,14 @@
absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
}
+rtc_library("audio_device_config") {
+ sources = [ "audio_device_config.h" ]
+}
+
rtc_library("audio_device_buffer") {
sources = [
"audio_device_buffer.cc",
"audio_device_buffer.h",
- "audio_device_config.h",
"fine_audio_buffer.cc",
"fine_audio_buffer.h",
]
@@ -209,6 +212,47 @@
}
}
+rtc_library("audio_device_dummy") {
+ visibility = [ "*" ]
+ sources = [
+ "dummy/audio_device_dummy.cc",
+ "dummy/audio_device_dummy.h",
+ ]
+ deps = [
+ ":audio_device_api",
+ ":audio_device_buffer",
+ ":audio_device_generic",
+ ]
+}
+
+if (!build_with_chromium) {
+ rtc_library("file_audio_device") {
+ visibility = [ "*" ]
+ sources = [
+ "dummy/file_audio_device.cc",
+ "dummy/file_audio_device.h",
+ "dummy/file_audio_device_factory.cc",
+ "dummy/file_audio_device_factory.h",
+ ]
+ defines = []
+ if (rtc_use_dummy_audio_file_devices) {
+ defines += [ "WEBRTC_DUMMY_FILE_DEVICES" ]
+ }
+ deps = [
+ ":audio_device_generic",
+ "../../rtc_base:checks",
+ "../../rtc_base:logging",
+ "../../rtc_base:platform_thread",
+ "../../rtc_base:stringutils",
+ "../../rtc_base:timeutils",
+ "../../rtc_base/synchronization:mutex",
+ "../../rtc_base/system:file_wrapper",
+ "../../system_wrappers",
+ ]
+ absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
+ }
+}
+
# Contains default implementations of webrtc::AudioDeviceModule for Windows,
# Linux, Mac, iOS and Android.
rtc_library("audio_device_impl") {
@@ -216,7 +260,9 @@
deps = [
":audio_device_api",
":audio_device_buffer",
+ ":audio_device_config",
":audio_device_default",
+ ":audio_device_dummy",
":audio_device_generic",
"../../api:array_view",
"../../api:make_ref_counted",
@@ -254,13 +300,7 @@
deps += [ "../../sdk:audio_device" ]
}
- sources = [
- "dummy/audio_device_dummy.cc",
- "dummy/audio_device_dummy.h",
- "dummy/file_audio_device.cc",
- "dummy/file_audio_device.h",
- "include/fake_audio_device.h",
- ]
+ sources = [ "include/fake_audio_device.h" ]
if (build_with_mozilla) {
sources += [
@@ -396,11 +436,10 @@
}
if (!build_with_chromium) {
- sources += [
- # Do not link these into Chrome since they contain static data.
- "dummy/file_audio_device_factory.cc",
- "dummy/file_audio_device_factory.h",
- ]
+ deps += [ ":file_audio_device" ]
+
+ # TODO(titovartem): remove after downstream is fixed
+ sources += [ "dummy/file_audio_device_factory.h" ]
}
}
diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn
index 0e9ce25..5375bab 100644
--- a/sdk/BUILD.gn
+++ b/sdk/BUILD.gn
@@ -303,6 +303,7 @@
"../api/task_queue:pending_task_safety_flag",
"../modules/audio_device:audio_device_api",
"../modules/audio_device:audio_device_buffer",
+ "../modules/audio_device:audio_device_config",
"../modules/audio_device:audio_device_generic",
"../rtc_base:buffer",
"../rtc_base:checks",