Propagate TaskQueueFactory to AudioDeviceBuffer

keep using GlobalTaskQueueFactory in android/ios bindings.
Switch to DefaultTaskQueueFactory in tests.

Bug: webrtc:10284
Change-Id: I034c70542be5eeb830be86527830d51204fb2855
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130223
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27380}
diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn
index 42db281..4cd3783 100644
--- a/sdk/BUILD.gn
+++ b/sdk/BUILD.gn
@@ -232,6 +232,7 @@
 
         deps = [
           ":audio_device",
+          "../api/task_queue:global_task_queue_factory",
           "../modules/audio_device:audio_device_api",
           "../modules/audio_device:audio_device_generic",
           "../rtc_base:checks",
@@ -271,6 +272,7 @@
           ":audio_session_observer",
           ":base_objc",
           "../api:array_view",
+          "../api/task_queue:global_task_queue_factory",
           "../modules/audio_device:audio_device_api",
           "../modules/audio_device:audio_device_buffer",
           "../modules/audio_device:audio_device_generic",
diff --git a/sdk/android/BUILD.gn b/sdk/android/BUILD.gn
index 9dd3089..530f8bd 100644
--- a/sdk/android/BUILD.gn
+++ b/sdk/android/BUILD.gn
@@ -1124,6 +1124,7 @@
       ":base_jni",
       ":generated_audio_device_module_base_jni",
       ":native_api_jni",
+      "../../api/task_queue:global_task_queue_factory",
       "../../modules/audio_device:audio_device_api",
       "../../modules/audio_device:audio_device_buffer",
       "../../rtc_base:checks",
diff --git a/sdk/android/src/jni/audio_device/audio_device_module.cc b/sdk/android/src/jni/audio_device/audio_device_module.cc
index 437012f..4e69dd5 100644
--- a/sdk/android/src/jni/audio_device/audio_device_module.cc
+++ b/sdk/android/src/jni/audio_device/audio_device_module.cc
@@ -13,6 +13,7 @@
 #include <utility>
 
 #include "absl/memory/memory.h"
+#include "api/task_queue/global_task_queue_factory.h"
 #include "modules/audio_device/audio_device_buffer.h"
 #include "rtc_base/checks.h"
 #include "rtc_base/logging.h"
@@ -88,7 +89,8 @@
   int32_t Init() override {
     RTC_LOG(INFO) << __FUNCTION__;
     RTC_DCHECK(thread_checker_.CalledOnValidThread());
-    audio_device_buffer_ = absl::make_unique<AudioDeviceBuffer>();
+    audio_device_buffer_ =
+        absl::make_unique<AudioDeviceBuffer>(&GlobalTaskQueueFactory());
     AttachAudioBuffer();
     if (initialized_) {
       return 0;
diff --git a/sdk/objc/native/src/audio/audio_device_module_ios.mm b/sdk/objc/native/src/audio/audio_device_module_ios.mm
index ff9da47..b001dea 100644
--- a/sdk/objc/native/src/audio/audio_device_module_ios.mm
+++ b/sdk/objc/native/src/audio/audio_device_module_ios.mm
@@ -10,6 +10,7 @@
 
 #include "audio_device_module_ios.h"
 
+#include "api/task_queue/global_task_queue_factory.h"
 #include "modules/audio_device/audio_device_config.h"
 #include "modules/audio_device/audio_device_generic.h"
 #include "rtc_base/checks.h"
@@ -69,7 +70,7 @@
     if (initialized_)
       return 0;
 
-    audio_device_buffer_.reset(new webrtc::AudioDeviceBuffer());
+    audio_device_buffer_.reset(new webrtc::AudioDeviceBuffer(&GlobalTaskQueueFactory()));
     audio_device_.reset(new ios_adm::AudioDeviceIOS());
     RTC_CHECK(audio_device_);