Deprecate EventFactory and delete all usage.
Will be deleted as soon as downstream calls of VideoCodingModule::Create are updated. Tbr: sprang@webrtc.org # Trivial change in video/ Bug: webrtc:3380 Change-Id: Iaeb6da2fb68991225fe9086ddddd4a553e1620b4 Reviewed-on: https://webrtc-review.googlesource.com/c/107890 Reviewed-by: Niels Moller <nisse@webrtc.org> Reviewed-by: Philip Eliasson <philipel@webrtc.org> Commit-Queue: Niels Moller <nisse@webrtc.org> Cr-Commit-Position: refs/heads/master@{#25554}
This commit is contained in:
@ -166,6 +166,7 @@ rtc_static_library("video_coding") {
|
||||
"../../api/video_codecs:video_codecs_api",
|
||||
"../../common_video",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:deprecation",
|
||||
"../../rtc_base:rtc_base",
|
||||
"../../rtc_base:rtc_base_approved",
|
||||
"../../rtc_base:rtc_numerics",
|
||||
|
||||
@ -27,6 +27,7 @@
|
||||
#include "modules/include/module.h"
|
||||
#include "modules/include/module_common_types.h"
|
||||
#include "modules/video_coding/include/video_coding_defines.h"
|
||||
#include "rtc_base/deprecation.h"
|
||||
#include "system_wrappers/include/event_wrapper.h"
|
||||
|
||||
namespace webrtc {
|
||||
@ -37,6 +38,7 @@ class VideoDecoder;
|
||||
class VideoEncoder;
|
||||
struct CodecSpecificInfo;
|
||||
|
||||
// DEPRECATED
|
||||
class EventFactory {
|
||||
public:
|
||||
virtual ~EventFactory() {}
|
||||
@ -44,7 +46,7 @@ class EventFactory {
|
||||
virtual EventWrapper* CreateEvent() = 0;
|
||||
};
|
||||
|
||||
class EventFactoryImpl : public EventFactory {
|
||||
class RTC_DEPRECATED EventFactoryImpl : public EventFactory {
|
||||
public:
|
||||
~EventFactoryImpl() override {}
|
||||
|
||||
@ -68,8 +70,13 @@ class VideoCodingModule : public Module {
|
||||
public:
|
||||
enum SenderNackMode { kNackNone, kNackAll, kNackSelective };
|
||||
|
||||
RTC_DEPRECATED
|
||||
static VideoCodingModule* Create(Clock* clock,
|
||||
EventFactory* /* event_factory*/) {
|
||||
return Create(clock);
|
||||
}
|
||||
// DEPRECATED.
|
||||
static VideoCodingModule* Create(Clock* clock, EventFactory* event_factory);
|
||||
static VideoCodingModule* Create(Clock* clock);
|
||||
|
||||
/*
|
||||
* Sender
|
||||
|
||||
@ -35,7 +35,6 @@ enum VCMNackMode { kNack, kNoNack };
|
||||
|
||||
// forward declarations
|
||||
class Clock;
|
||||
class EventFactory;
|
||||
class EventWrapper;
|
||||
class VCMFrameBuffer;
|
||||
class VCMPacket;
|
||||
|
||||
@ -28,30 +28,23 @@ namespace webrtc {
|
||||
|
||||
enum { kMaxReceiverDelayMs = 10000 };
|
||||
|
||||
VCMReceiver::VCMReceiver(VCMTiming* timing,
|
||||
Clock* clock,
|
||||
EventFactory* event_factory)
|
||||
VCMReceiver::VCMReceiver(VCMTiming* timing, Clock* clock)
|
||||
: VCMReceiver::VCMReceiver(timing,
|
||||
clock,
|
||||
event_factory,
|
||||
absl::WrapUnique(EventWrapper::Create()),
|
||||
absl::WrapUnique(EventWrapper::Create()),
|
||||
nullptr, // NackSender
|
||||
nullptr) // KeyframeRequestSender
|
||||
{}
|
||||
|
||||
VCMReceiver::VCMReceiver(VCMTiming* timing,
|
||||
Clock* clock,
|
||||
EventFactory* event_factory,
|
||||
NackSender* nack_sender,
|
||||
KeyFrameRequestSender* keyframe_request_sender)
|
||||
: VCMReceiver(
|
||||
timing,
|
||||
: VCMReceiver(timing,
|
||||
clock,
|
||||
std::unique_ptr<EventWrapper>(event_factory
|
||||
? event_factory->CreateEvent()
|
||||
: EventWrapper::Create()),
|
||||
std::unique_ptr<EventWrapper>(event_factory
|
||||
? event_factory->CreateEvent()
|
||||
: EventWrapper::Create()),
|
||||
absl::WrapUnique(EventWrapper::Create()),
|
||||
absl::WrapUnique(EventWrapper::Create()),
|
||||
nack_sender,
|
||||
keyframe_request_sender) {}
|
||||
|
||||
|
||||
@ -30,17 +30,16 @@ class VCMReceiver {
|
||||
public:
|
||||
// Constructor for current interface, will be removed when the
|
||||
// new jitter buffer is in place.
|
||||
VCMReceiver(VCMTiming* timing, Clock* clock, EventFactory* event_factory);
|
||||
VCMReceiver(VCMTiming* timing, Clock* clock);
|
||||
|
||||
// Create method for the new jitter buffer.
|
||||
VCMReceiver(VCMTiming* timing,
|
||||
Clock* clock,
|
||||
EventFactory* event_factory,
|
||||
NackSender* nack_sender,
|
||||
KeyFrameRequestSender* keyframe_request_sender);
|
||||
|
||||
// Using this constructor, you can specify a different event factory for the
|
||||
// jitter buffer. Useful for unit tests when you want to simulate incoming
|
||||
// Using this constructor, you can specify a different event implemetation for
|
||||
// the jitter buffer. Useful for unit tests when you want to simulate incoming
|
||||
// packets, in which case the jitter buffer's wait event is different from
|
||||
// that of VCMReceiver itself.
|
||||
//
|
||||
|
||||
@ -30,7 +30,7 @@ class TestVCMReceiver : public ::testing::Test {
|
||||
TestVCMReceiver()
|
||||
: clock_(new SimulatedClock(0)),
|
||||
timing_(clock_.get()),
|
||||
receiver_(&timing_, clock_.get(), nullptr) {
|
||||
receiver_(&timing_, clock_.get()) {
|
||||
stream_generator_.reset(
|
||||
new StreamGenerator(0, clock_->TimeInMilliseconds()));
|
||||
}
|
||||
|
||||
@ -81,17 +81,13 @@ class EncodedImageCallbackWrapper : public EncodedImageCallback {
|
||||
class VideoCodingModuleImpl : public VideoCodingModule {
|
||||
public:
|
||||
VideoCodingModuleImpl(Clock* clock,
|
||||
EventFactory* event_factory,
|
||||
EventFactory* /* event_factory */,
|
||||
NackSender* nack_sender,
|
||||
KeyFrameRequestSender* keyframe_request_sender)
|
||||
: VideoCodingModule(),
|
||||
sender_(clock, &post_encode_callback_),
|
||||
timing_(new VCMTiming(clock)),
|
||||
receiver_(clock,
|
||||
event_factory,
|
||||
timing_.get(),
|
||||
nack_sender,
|
||||
keyframe_request_sender) {}
|
||||
receiver_(clock, timing_.get(), nack_sender, keyframe_request_sender) {}
|
||||
|
||||
virtual ~VideoCodingModuleImpl() {}
|
||||
|
||||
@ -221,11 +217,9 @@ class VideoCodingModuleImpl : public VideoCodingModule {
|
||||
|
||||
// DEPRECATED. Create method for current interface, will be removed when the
|
||||
// new jitter buffer is in place.
|
||||
VideoCodingModule* VideoCodingModule::Create(Clock* clock,
|
||||
EventFactory* event_factory) {
|
||||
VideoCodingModule* VideoCodingModule::Create(Clock* clock) {
|
||||
RTC_DCHECK(clock);
|
||||
RTC_DCHECK(event_factory);
|
||||
return new VideoCodingModuleImpl(clock, event_factory, nullptr, nullptr);
|
||||
return new VideoCodingModuleImpl(clock, nullptr, nullptr, nullptr);
|
||||
}
|
||||
|
||||
} // namespace webrtc
|
||||
|
||||
@ -127,7 +127,6 @@ class VideoSender {
|
||||
class VideoReceiver : public Module {
|
||||
public:
|
||||
VideoReceiver(Clock* clock,
|
||||
EventFactory* event_factory,
|
||||
VCMTiming* timing,
|
||||
NackSender* nack_sender = nullptr,
|
||||
KeyFrameRequestSender* keyframe_request_sender = nullptr);
|
||||
|
||||
@ -26,7 +26,6 @@ namespace webrtc {
|
||||
namespace vcm {
|
||||
|
||||
VideoReceiver::VideoReceiver(Clock* clock,
|
||||
EventFactory* event_factory,
|
||||
VCMTiming* timing,
|
||||
NackSender* nack_sender,
|
||||
KeyFrameRequestSender* keyframe_request_sender)
|
||||
@ -34,7 +33,6 @@ VideoReceiver::VideoReceiver(Clock* clock,
|
||||
_timing(timing),
|
||||
_receiver(_timing,
|
||||
clock_,
|
||||
event_factory,
|
||||
nack_sender,
|
||||
keyframe_request_sender),
|
||||
_decodedFrameCallback(_timing, clock_),
|
||||
|
||||
@ -36,7 +36,7 @@ class TestVideoReceiver : public ::testing::Test {
|
||||
|
||||
virtual void SetUp() {
|
||||
timing_.reset(new VCMTiming(&clock_));
|
||||
receiver_.reset(new VideoReceiver(&clock_, nullptr, timing_.get()));
|
||||
receiver_.reset(new VideoReceiver(&clock_, timing_.get()));
|
||||
receiver_->RegisterExternalDecoder(&decoder_, kUnusedPayloadType);
|
||||
const size_t kMaxNackListSize = 250;
|
||||
const int kMaxPacketAgeToNack = 450;
|
||||
|
||||
@ -138,7 +138,7 @@ VideoReceiveStream::VideoReceiveStream(
|
||||
call_stats_(call_stats),
|
||||
rtp_receive_statistics_(ReceiveStatistics::Create(clock_)),
|
||||
timing_(new VCMTiming(clock_)),
|
||||
video_receiver_(clock_, nullptr, timing_.get(), this, this),
|
||||
video_receiver_(clock_, timing_.get(), this, this),
|
||||
stats_proxy_(&config_, clock_),
|
||||
rtp_video_stream_receiver_(&transport_adapter_,
|
||||
call_stats,
|
||||
|
||||
Reference in New Issue
Block a user