In video replace non-owning pointer to rtc::TaskQueue with non-owning pointer to TaskQueueBase
rtc::TaskQueue is a simple wrapper over TaskQueueBase and adds no
extra features when task queue is used without passing ownership.
Reducing usage of the internal rtc::TaskQueue wrapper gives users more flexibility how TaskQueueBase* is stored.
Bug: webrtc:14169
Change-Id: If5c8827544c843502c7dfcef775ac558de79ec3a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/268189
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37549}
diff --git a/modules/video_coding/frame_buffer2_unittest.cc b/modules/video_coding/frame_buffer2_unittest.cc
index 4faafa6..2c21a86 100644
--- a/modules/video_coding/frame_buffer2_unittest.cc
+++ b/modules/video_coding/frame_buffer2_unittest.cc
@@ -16,6 +16,7 @@
#include <memory>
#include <vector>
+#include "api/task_queue/task_queue_base.h"
#include "api/units/time_delta.h"
#include "api/units/timestamp.h"
#include "modules/video_coding/frame_object.h"
@@ -185,8 +186,9 @@
}
void ExtractFrame(int64_t max_wait_time = 0, bool keyframe_required = false) {
- time_task_queue_.PostTask([this, max_wait_time, keyframe_required]() {
- buffer_->NextFrame(max_wait_time, keyframe_required, &time_task_queue_,
+ time_task_queue_->PostTask([this, max_wait_time, keyframe_required]() {
+ buffer_->NextFrame(max_wait_time, keyframe_required,
+ time_task_queue_.get(),
[this](std::unique_ptr<EncodedFrame> frame) {
frames_.emplace_back(std::move(frame));
});
@@ -218,7 +220,7 @@
test::ScopedKeyValueConfig field_trials_;
webrtc::GlobalSimulatedTimeController time_controller_;
- rtc::TaskQueue time_task_queue_;
+ std::unique_ptr<TaskQueueBase, TaskQueueDeleter> time_task_queue_;
VCMTimingFake timing_;
std::unique_ptr<FrameBuffer> buffer_;
std::vector<std::unique_ptr<EncodedFrame>> frames_;