Use explicit TaskQueueFactory for FrameGeneratorCapturer in FrameGeneratorCapturerVideoTrackSource
This replaces the implicit usage of GlobalTaskQueueFactory with an explicitly provided DefaultTaskQueueFactory instance. Bug: webrtc:10284 Change-Id: I40cbaa16181ab4b5a3528871cb068b09fe06b599 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/133574 Reviewed-by: Seth Hampson <shampson@webrtc.org> Commit-Queue: Danil Chapovalov <danilchap@webrtc.org> Cr-Commit-Position: refs/heads/master@{#27695}
This commit is contained in:
committed by
Commit Bot
parent
c129c359d7
commit
aec09a2d18
@ -410,6 +410,8 @@ if (rtc_include_tests) {
|
||||
"../api:scoped_refptr",
|
||||
"../api/audio:audio_mixer_api",
|
||||
"../api/audio_codecs:audio_codecs_api",
|
||||
"../api/task_queue",
|
||||
"../api/task_queue:default_task_queue_factory",
|
||||
"../api/video:builtin_video_bitrate_allocator_factory",
|
||||
"../api/video:video_frame",
|
||||
"../api/video_codecs:builtin_video_decoder_factory",
|
||||
|
||||
@ -14,6 +14,9 @@
|
||||
#include <memory>
|
||||
#include <utility>
|
||||
|
||||
#include "absl/memory/memory.h"
|
||||
#include "api/task_queue/default_task_queue_factory.h"
|
||||
#include "api/task_queue/task_queue_factory.h"
|
||||
#include "pc/video_track_source.h"
|
||||
#include "test/frame_generator_capturer.h"
|
||||
|
||||
@ -41,10 +44,15 @@ class FrameGeneratorCapturerVideoTrackSource : public VideoTrackSource {
|
||||
: FrameGeneratorCapturerVideoTrackSource(Config(), clock) {}
|
||||
|
||||
FrameGeneratorCapturerVideoTrackSource(Config config, Clock* clock)
|
||||
: VideoTrackSource(false /* remote */) {
|
||||
video_capturer_.reset(test::FrameGeneratorCapturer::Create(
|
||||
config.width, config.height, absl::nullopt,
|
||||
config.num_squares_generated, config.frames_per_second, clock));
|
||||
: VideoTrackSource(false /* remote */),
|
||||
task_queue_factory_(CreateDefaultTaskQueueFactory()) {
|
||||
video_capturer_ = absl::make_unique<test::FrameGeneratorCapturer>(
|
||||
clock,
|
||||
test::FrameGenerator::CreateSquareGenerator(
|
||||
config.width, config.height, absl::nullopt,
|
||||
config.num_squares_generated),
|
||||
config.frames_per_second, *task_queue_factory_);
|
||||
video_capturer_->Init();
|
||||
}
|
||||
|
||||
explicit FrameGeneratorCapturerVideoTrackSource(
|
||||
@ -68,6 +76,7 @@ class FrameGeneratorCapturerVideoTrackSource : public VideoTrackSource {
|
||||
}
|
||||
|
||||
private:
|
||||
const std::unique_ptr<TaskQueueFactory> task_queue_factory_;
|
||||
std::unique_ptr<test::FrameGeneratorCapturer> video_capturer_;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user