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:
Niels Möller
2018-11-07 16:36:22 +01:00
committed by Commit Bot
parent 54b4924349
commit 689983f6bc
11 changed files with 29 additions and 39 deletions

View File

@ -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",

View File

@ -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

View File

@ -35,7 +35,6 @@ enum VCMNackMode { kNack, kNoNack };
// forward declarations
class Clock;
class EventFactory;
class EventWrapper;
class VCMFrameBuffer;
class VCMPacket;

View File

@ -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) {}

View File

@ -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.
//

View File

@ -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()));
}

View File

@ -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

View File

@ -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);

View File

@ -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_),

View File

@ -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;

View File

@ -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,