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",
|
"../../api/video_codecs:video_codecs_api",
|
||||||
"../../common_video",
|
"../../common_video",
|
||||||
"../../rtc_base:checks",
|
"../../rtc_base:checks",
|
||||||
|
"../../rtc_base:deprecation",
|
||||||
"../../rtc_base:rtc_base",
|
"../../rtc_base:rtc_base",
|
||||||
"../../rtc_base:rtc_base_approved",
|
"../../rtc_base:rtc_base_approved",
|
||||||
"../../rtc_base:rtc_numerics",
|
"../../rtc_base:rtc_numerics",
|
||||||
|
|||||||
@ -27,6 +27,7 @@
|
|||||||
#include "modules/include/module.h"
|
#include "modules/include/module.h"
|
||||||
#include "modules/include/module_common_types.h"
|
#include "modules/include/module_common_types.h"
|
||||||
#include "modules/video_coding/include/video_coding_defines.h"
|
#include "modules/video_coding/include/video_coding_defines.h"
|
||||||
|
#include "rtc_base/deprecation.h"
|
||||||
#include "system_wrappers/include/event_wrapper.h"
|
#include "system_wrappers/include/event_wrapper.h"
|
||||||
|
|
||||||
namespace webrtc {
|
namespace webrtc {
|
||||||
@ -37,6 +38,7 @@ class VideoDecoder;
|
|||||||
class VideoEncoder;
|
class VideoEncoder;
|
||||||
struct CodecSpecificInfo;
|
struct CodecSpecificInfo;
|
||||||
|
|
||||||
|
// DEPRECATED
|
||||||
class EventFactory {
|
class EventFactory {
|
||||||
public:
|
public:
|
||||||
virtual ~EventFactory() {}
|
virtual ~EventFactory() {}
|
||||||
@ -44,7 +46,7 @@ class EventFactory {
|
|||||||
virtual EventWrapper* CreateEvent() = 0;
|
virtual EventWrapper* CreateEvent() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
class EventFactoryImpl : public EventFactory {
|
class RTC_DEPRECATED EventFactoryImpl : public EventFactory {
|
||||||
public:
|
public:
|
||||||
~EventFactoryImpl() override {}
|
~EventFactoryImpl() override {}
|
||||||
|
|
||||||
@ -68,8 +70,13 @@ class VideoCodingModule : public Module {
|
|||||||
public:
|
public:
|
||||||
enum SenderNackMode { kNackNone, kNackAll, kNackSelective };
|
enum SenderNackMode { kNackNone, kNackAll, kNackSelective };
|
||||||
|
|
||||||
|
RTC_DEPRECATED
|
||||||
|
static VideoCodingModule* Create(Clock* clock,
|
||||||
|
EventFactory* /* event_factory*/) {
|
||||||
|
return Create(clock);
|
||||||
|
}
|
||||||
// DEPRECATED.
|
// DEPRECATED.
|
||||||
static VideoCodingModule* Create(Clock* clock, EventFactory* event_factory);
|
static VideoCodingModule* Create(Clock* clock);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Sender
|
* Sender
|
||||||
|
|||||||
@ -35,7 +35,6 @@ enum VCMNackMode { kNack, kNoNack };
|
|||||||
|
|
||||||
// forward declarations
|
// forward declarations
|
||||||
class Clock;
|
class Clock;
|
||||||
class EventFactory;
|
|
||||||
class EventWrapper;
|
class EventWrapper;
|
||||||
class VCMFrameBuffer;
|
class VCMFrameBuffer;
|
||||||
class VCMPacket;
|
class VCMPacket;
|
||||||
|
|||||||
@ -28,32 +28,25 @@ namespace webrtc {
|
|||||||
|
|
||||||
enum { kMaxReceiverDelayMs = 10000 };
|
enum { kMaxReceiverDelayMs = 10000 };
|
||||||
|
|
||||||
VCMReceiver::VCMReceiver(VCMTiming* timing,
|
VCMReceiver::VCMReceiver(VCMTiming* timing, Clock* clock)
|
||||||
Clock* clock,
|
|
||||||
EventFactory* event_factory)
|
|
||||||
: VCMReceiver::VCMReceiver(timing,
|
: VCMReceiver::VCMReceiver(timing,
|
||||||
clock,
|
clock,
|
||||||
event_factory,
|
absl::WrapUnique(EventWrapper::Create()),
|
||||||
|
absl::WrapUnique(EventWrapper::Create()),
|
||||||
nullptr, // NackSender
|
nullptr, // NackSender
|
||||||
nullptr) // KeyframeRequestSender
|
nullptr) // KeyframeRequestSender
|
||||||
{}
|
{}
|
||||||
|
|
||||||
VCMReceiver::VCMReceiver(VCMTiming* timing,
|
VCMReceiver::VCMReceiver(VCMTiming* timing,
|
||||||
Clock* clock,
|
Clock* clock,
|
||||||
EventFactory* event_factory,
|
|
||||||
NackSender* nack_sender,
|
NackSender* nack_sender,
|
||||||
KeyFrameRequestSender* keyframe_request_sender)
|
KeyFrameRequestSender* keyframe_request_sender)
|
||||||
: VCMReceiver(
|
: VCMReceiver(timing,
|
||||||
timing,
|
clock,
|
||||||
clock,
|
absl::WrapUnique(EventWrapper::Create()),
|
||||||
std::unique_ptr<EventWrapper>(event_factory
|
absl::WrapUnique(EventWrapper::Create()),
|
||||||
? event_factory->CreateEvent()
|
nack_sender,
|
||||||
: EventWrapper::Create()),
|
keyframe_request_sender) {}
|
||||||
std::unique_ptr<EventWrapper>(event_factory
|
|
||||||
? event_factory->CreateEvent()
|
|
||||||
: EventWrapper::Create()),
|
|
||||||
nack_sender,
|
|
||||||
keyframe_request_sender) {}
|
|
||||||
|
|
||||||
VCMReceiver::VCMReceiver(VCMTiming* timing,
|
VCMReceiver::VCMReceiver(VCMTiming* timing,
|
||||||
Clock* clock,
|
Clock* clock,
|
||||||
|
|||||||
@ -30,17 +30,16 @@ class VCMReceiver {
|
|||||||
public:
|
public:
|
||||||
// Constructor for current interface, will be removed when the
|
// Constructor for current interface, will be removed when the
|
||||||
// new jitter buffer is in place.
|
// 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.
|
// Create method for the new jitter buffer.
|
||||||
VCMReceiver(VCMTiming* timing,
|
VCMReceiver(VCMTiming* timing,
|
||||||
Clock* clock,
|
Clock* clock,
|
||||||
EventFactory* event_factory,
|
|
||||||
NackSender* nack_sender,
|
NackSender* nack_sender,
|
||||||
KeyFrameRequestSender* keyframe_request_sender);
|
KeyFrameRequestSender* keyframe_request_sender);
|
||||||
|
|
||||||
// Using this constructor, you can specify a different event factory for the
|
// Using this constructor, you can specify a different event implemetation for
|
||||||
// jitter buffer. Useful for unit tests when you want to simulate incoming
|
// 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
|
// packets, in which case the jitter buffer's wait event is different from
|
||||||
// that of VCMReceiver itself.
|
// that of VCMReceiver itself.
|
||||||
//
|
//
|
||||||
|
|||||||
@ -30,7 +30,7 @@ class TestVCMReceiver : public ::testing::Test {
|
|||||||
TestVCMReceiver()
|
TestVCMReceiver()
|
||||||
: clock_(new SimulatedClock(0)),
|
: clock_(new SimulatedClock(0)),
|
||||||
timing_(clock_.get()),
|
timing_(clock_.get()),
|
||||||
receiver_(&timing_, clock_.get(), nullptr) {
|
receiver_(&timing_, clock_.get()) {
|
||||||
stream_generator_.reset(
|
stream_generator_.reset(
|
||||||
new StreamGenerator(0, clock_->TimeInMilliseconds()));
|
new StreamGenerator(0, clock_->TimeInMilliseconds()));
|
||||||
}
|
}
|
||||||
|
|||||||
@ -81,17 +81,13 @@ class EncodedImageCallbackWrapper : public EncodedImageCallback {
|
|||||||
class VideoCodingModuleImpl : public VideoCodingModule {
|
class VideoCodingModuleImpl : public VideoCodingModule {
|
||||||
public:
|
public:
|
||||||
VideoCodingModuleImpl(Clock* clock,
|
VideoCodingModuleImpl(Clock* clock,
|
||||||
EventFactory* event_factory,
|
EventFactory* /* event_factory */,
|
||||||
NackSender* nack_sender,
|
NackSender* nack_sender,
|
||||||
KeyFrameRequestSender* keyframe_request_sender)
|
KeyFrameRequestSender* keyframe_request_sender)
|
||||||
: VideoCodingModule(),
|
: VideoCodingModule(),
|
||||||
sender_(clock, &post_encode_callback_),
|
sender_(clock, &post_encode_callback_),
|
||||||
timing_(new VCMTiming(clock)),
|
timing_(new VCMTiming(clock)),
|
||||||
receiver_(clock,
|
receiver_(clock, timing_.get(), nack_sender, keyframe_request_sender) {}
|
||||||
event_factory,
|
|
||||||
timing_.get(),
|
|
||||||
nack_sender,
|
|
||||||
keyframe_request_sender) {}
|
|
||||||
|
|
||||||
virtual ~VideoCodingModuleImpl() {}
|
virtual ~VideoCodingModuleImpl() {}
|
||||||
|
|
||||||
@ -221,11 +217,9 @@ class VideoCodingModuleImpl : public VideoCodingModule {
|
|||||||
|
|
||||||
// DEPRECATED. Create method for current interface, will be removed when the
|
// DEPRECATED. Create method for current interface, will be removed when the
|
||||||
// new jitter buffer is in place.
|
// new jitter buffer is in place.
|
||||||
VideoCodingModule* VideoCodingModule::Create(Clock* clock,
|
VideoCodingModule* VideoCodingModule::Create(Clock* clock) {
|
||||||
EventFactory* event_factory) {
|
|
||||||
RTC_DCHECK(clock);
|
RTC_DCHECK(clock);
|
||||||
RTC_DCHECK(event_factory);
|
return new VideoCodingModuleImpl(clock, nullptr, nullptr, nullptr);
|
||||||
return new VideoCodingModuleImpl(clock, event_factory, nullptr, nullptr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace webrtc
|
} // namespace webrtc
|
||||||
|
|||||||
@ -127,7 +127,6 @@ class VideoSender {
|
|||||||
class VideoReceiver : public Module {
|
class VideoReceiver : public Module {
|
||||||
public:
|
public:
|
||||||
VideoReceiver(Clock* clock,
|
VideoReceiver(Clock* clock,
|
||||||
EventFactory* event_factory,
|
|
||||||
VCMTiming* timing,
|
VCMTiming* timing,
|
||||||
NackSender* nack_sender = nullptr,
|
NackSender* nack_sender = nullptr,
|
||||||
KeyFrameRequestSender* keyframe_request_sender = nullptr);
|
KeyFrameRequestSender* keyframe_request_sender = nullptr);
|
||||||
|
|||||||
@ -26,7 +26,6 @@ namespace webrtc {
|
|||||||
namespace vcm {
|
namespace vcm {
|
||||||
|
|
||||||
VideoReceiver::VideoReceiver(Clock* clock,
|
VideoReceiver::VideoReceiver(Clock* clock,
|
||||||
EventFactory* event_factory,
|
|
||||||
VCMTiming* timing,
|
VCMTiming* timing,
|
||||||
NackSender* nack_sender,
|
NackSender* nack_sender,
|
||||||
KeyFrameRequestSender* keyframe_request_sender)
|
KeyFrameRequestSender* keyframe_request_sender)
|
||||||
@ -34,7 +33,6 @@ VideoReceiver::VideoReceiver(Clock* clock,
|
|||||||
_timing(timing),
|
_timing(timing),
|
||||||
_receiver(_timing,
|
_receiver(_timing,
|
||||||
clock_,
|
clock_,
|
||||||
event_factory,
|
|
||||||
nack_sender,
|
nack_sender,
|
||||||
keyframe_request_sender),
|
keyframe_request_sender),
|
||||||
_decodedFrameCallback(_timing, clock_),
|
_decodedFrameCallback(_timing, clock_),
|
||||||
|
|||||||
@ -36,7 +36,7 @@ class TestVideoReceiver : public ::testing::Test {
|
|||||||
|
|
||||||
virtual void SetUp() {
|
virtual void SetUp() {
|
||||||
timing_.reset(new VCMTiming(&clock_));
|
timing_.reset(new VCMTiming(&clock_));
|
||||||
receiver_.reset(new VideoReceiver(&clock_, nullptr, timing_.get()));
|
receiver_.reset(new VideoReceiver(&clock_, timing_.get()));
|
||||||
receiver_->RegisterExternalDecoder(&decoder_, kUnusedPayloadType);
|
receiver_->RegisterExternalDecoder(&decoder_, kUnusedPayloadType);
|
||||||
const size_t kMaxNackListSize = 250;
|
const size_t kMaxNackListSize = 250;
|
||||||
const int kMaxPacketAgeToNack = 450;
|
const int kMaxPacketAgeToNack = 450;
|
||||||
|
|||||||
@ -138,7 +138,7 @@ VideoReceiveStream::VideoReceiveStream(
|
|||||||
call_stats_(call_stats),
|
call_stats_(call_stats),
|
||||||
rtp_receive_statistics_(ReceiveStatistics::Create(clock_)),
|
rtp_receive_statistics_(ReceiveStatistics::Create(clock_)),
|
||||||
timing_(new VCMTiming(clock_)),
|
timing_(new VCMTiming(clock_)),
|
||||||
video_receiver_(clock_, nullptr, timing_.get(), this, this),
|
video_receiver_(clock_, timing_.get(), this, this),
|
||||||
stats_proxy_(&config_, clock_),
|
stats_proxy_(&config_, clock_),
|
||||||
rtp_video_stream_receiver_(&transport_adapter_,
|
rtp_video_stream_receiver_(&transport_adapter_,
|
||||||
call_stats,
|
call_stats,
|
||||||
|
|||||||
Reference in New Issue
Block a user