Reland "in WebrtcVoiceEngine allow to set TaskQueueFactory"

in production code keep using GlobalTaskQueueFactory()
in tests switch to use DefaultTaskQueueFactory directly.

This reverts commit e27ccf9a1681e0e4ff9281f9a18fea357d2bc890.

Reason for revert: addressed the failure with patchset#2

Original change's description:
> Revert "in WebrtcVoiceEngine allow to set TaskQueueFactory"
>
> This reverts commit a39254da593bbdb0b1e072a44827229680afe3ee.
>
> Reason for revert: Tests are failing due to ThreadChecker's called on valid thread.
>
> Original change's description:
> > in WebrtcVoiceEngine allow to set TaskQueueFactory
> >
> > in production code keep using GlobalTaskQueueFactory()
> > in tests switch to use DefaultTaskQueueFactory directly.
> >
> > Bug: webrtc:10284
> > Change-Id: I170274a98324796623089a965a39f0cbb7e281d9
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/128878
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#27296}
>
> TBR=danilchap@webrtc.org,steveanton@webrtc.org
>
> Change-Id: I9742e5d0171a94f3840e197c40fdb44523e4963b
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:10284
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/129780
> Reviewed-by: Amit Hilbuch <amithi@webrtc.org>
> Commit-Queue: Amit Hilbuch <amithi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27297}

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:10284
Change-Id: I55fd5811c68d04c3e8cf537974496460b38c1d4f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/129933
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27348}
diff --git a/media/engine/webrtc_voice_engine.h b/media/engine/webrtc_voice_engine.h
index 1cf1ccb..f03bdfb 100644
--- a/media/engine/webrtc_voice_engine.h
+++ b/media/engine/webrtc_voice_engine.h
@@ -19,6 +19,7 @@
 #include "api/audio_codecs/audio_encoder_factory.h"
 #include "api/rtp_receiver_interface.h"
 #include "api/scoped_refptr.h"
+#include "api/task_queue/task_queue_factory.h"
 #include "call/audio_state.h"
 #include "call/call.h"
 #include "media/base/rtp_utils.h"
@@ -46,6 +47,7 @@
 
  public:
   WebRtcVoiceEngine(
+      webrtc::TaskQueueFactory* task_queue_factory,
       webrtc::AudioDeviceModule* adm,
       const rtc::scoped_refptr<webrtc::AudioEncoderFactory>& encoder_factory,
       const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& decoder_factory,
@@ -91,6 +93,7 @@
   void StartAecDump(const std::string& filename);
   int CreateVoEChannel();
 
+  webrtc::TaskQueueFactory* const task_queue_factory_;
   std::unique_ptr<rtc::TaskQueue> low_priority_worker_queue_;
 
   webrtc::AudioDeviceModule* adm();