Remove VideoCodingModule::InitializeReceiver.
This code is no longer used to reset, so we can just initialize the object in the constructor. BUG=4391 R=stefan@webrtc.org Review URL: https://webrtc-codereview.appspot.com/43249004 Cr-Commit-Position: refs/heads/master@{#9044}
This commit is contained in:
@ -320,17 +320,6 @@ public:
|
||||
* Receiver
|
||||
*/
|
||||
|
||||
// The receiver state of the VCM will be initialized to the
|
||||
// same state as when the VCM was created. This will not interrupt
|
||||
// or effect the send side functionality of VCM. VCM will lose all the
|
||||
// decoding-related settings by calling this function. All frames
|
||||
// inside the jitter buffer are flushed and the delay is reset.
|
||||
// For instance, a receive codec has to be registered again.
|
||||
//
|
||||
// Return value : VCM_OK, on success.
|
||||
// < 0, on error.
|
||||
virtual int32_t InitializeReceiver() = 0;
|
||||
|
||||
// Register possible receive codecs, can be called multiple times for different codecs.
|
||||
// The module will automatically switch between registered codecs depending on the
|
||||
// payload type of incoming frames. The actual decoder will be created when needed.
|
||||
|
@ -35,7 +35,9 @@ VCMReceiver::VCMReceiver(VCMTiming* timing,
|
||||
timing_(timing),
|
||||
render_wait_event_(event_factory->CreateEvent()),
|
||||
state_(kPassive),
|
||||
max_video_delay_ms_(kMaxVideoDelayMs) {}
|
||||
max_video_delay_ms_(kMaxVideoDelayMs) {
|
||||
Reset();
|
||||
}
|
||||
|
||||
VCMReceiver::~VCMReceiver() {
|
||||
render_wait_event_->Set();
|
||||
@ -52,11 +54,6 @@ void VCMReceiver::Reset() {
|
||||
state_ = kReceiving;
|
||||
}
|
||||
|
||||
int32_t VCMReceiver::Initialize() {
|
||||
Reset();
|
||||
return VCM_OK;
|
||||
}
|
||||
|
||||
void VCMReceiver::UpdateRtt(int64_t rtt) {
|
||||
jitter_buffer_.UpdateRtt(rtt);
|
||||
}
|
||||
|
@ -43,7 +43,6 @@ class VCMReceiver {
|
||||
~VCMReceiver();
|
||||
|
||||
void Reset();
|
||||
int32_t Initialize();
|
||||
void UpdateRtt(int64_t rtt);
|
||||
int32_t InsertPacket(const VCMPacket& packet,
|
||||
uint16_t frame_width,
|
||||
|
@ -206,10 +206,6 @@ class VideoCodingModuleImpl : public VideoCodingModule {
|
||||
|
||||
bool VideoSuspended() const override { return sender_->VideoSuspended(); }
|
||||
|
||||
int32_t InitializeReceiver() override {
|
||||
return receiver_->InitializeReceiver();
|
||||
}
|
||||
|
||||
int32_t RegisterReceiveCodec(const VideoCodec* receiveCodec,
|
||||
int32_t numberOfCores,
|
||||
bool requireKeyFrame) override {
|
||||
|
@ -148,7 +148,6 @@ class VideoReceiver {
|
||||
VideoReceiver(Clock* clock, EventFactory* event_factory);
|
||||
~VideoReceiver();
|
||||
|
||||
int32_t InitializeReceiver();
|
||||
int32_t RegisterReceiveCodec(const VideoCodec* receiveCodec,
|
||||
int32_t numberOfCores,
|
||||
bool requireKeyFrame);
|
||||
|
@ -37,7 +37,6 @@ class VCMRobustnessTest : public ::testing::Test {
|
||||
ASSERT_TRUE(clock_.get() != NULL);
|
||||
vcm_ = VideoCodingModule::Create(clock_.get(), &event_factory_);
|
||||
ASSERT_TRUE(vcm_ != NULL);
|
||||
ASSERT_EQ(0, vcm_->InitializeReceiver());
|
||||
const size_t kMaxNackListSize = 250;
|
||||
const int kMaxPacketAgeToNack = 450;
|
||||
vcm_->SetNackSettings(kMaxNackListSize, kMaxPacketAgeToNack, 0);
|
||||
|
@ -245,34 +245,6 @@ int32_t VideoReceiver::SetVideoProtection(VCMVideoProtection videoProtection,
|
||||
return VCM_OK;
|
||||
}
|
||||
|
||||
// Initialize receiver, resets codec database etc
|
||||
int32_t VideoReceiver::InitializeReceiver() {
|
||||
int32_t ret = _receiver.Initialize();
|
||||
if (ret < 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
{
|
||||
CriticalSectionScoped receive_cs(_receiveCritSect);
|
||||
_codecDataBase.ResetReceiver();
|
||||
_timing.Reset();
|
||||
}
|
||||
|
||||
{
|
||||
CriticalSectionScoped process_cs(process_crit_sect_.get());
|
||||
_decoder = NULL;
|
||||
_decodedFrameCallback.SetUserReceiveCallback(NULL);
|
||||
_frameTypeCallback = NULL;
|
||||
_receiveStatsCallback = NULL;
|
||||
_decoderTimingCallback = NULL;
|
||||
_packetRequestCallback = NULL;
|
||||
_keyRequestMode = kKeyOnError;
|
||||
_scheduleKeyRequest = false;
|
||||
}
|
||||
|
||||
return VCM_OK;
|
||||
}
|
||||
|
||||
// Register a receive callback. Will be called whenever there is a new frame
|
||||
// ready for rendering.
|
||||
int32_t VideoReceiver::RegisterReceiveCallback(
|
||||
@ -486,7 +458,7 @@ int32_t VideoReceiver::ResetDecoder() {
|
||||
{
|
||||
CriticalSectionScoped cs(_receiveCritSect);
|
||||
if (_decoder != NULL) {
|
||||
_receiver.Initialize();
|
||||
_receiver.Reset();
|
||||
_timing.Reset();
|
||||
reset_key_request = true;
|
||||
_decoder->Reset();
|
||||
|
@ -34,10 +34,8 @@ class TestVideoReceiver : public ::testing::Test {
|
||||
|
||||
virtual void SetUp() {
|
||||
receiver_.reset(new VideoReceiver(&clock_, &event_factory_));
|
||||
EXPECT_EQ(0, receiver_->InitializeReceiver());
|
||||
EXPECT_EQ(0,
|
||||
receiver_->RegisterExternalDecoder(
|
||||
&decoder_, kUnusedPayloadType, true));
|
||||
EXPECT_EQ(0, receiver_->RegisterExternalDecoder(&decoder_,
|
||||
kUnusedPayloadType, true));
|
||||
const size_t kMaxNackListSize = 250;
|
||||
const int kMaxPacketAgeToNack = 450;
|
||||
receiver_->SetNackSettings(kMaxNackListSize, kMaxPacketAgeToNack, 0);
|
||||
|
@ -134,9 +134,6 @@ PayloadSinkInterface* VcmPayloadSinkFactory::Create(
|
||||
if (vcm.get() == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
if (vcm->InitializeReceiver() < 0) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
const PayloadTypes& plt = stream->payload_types();
|
||||
for (PayloadTypesIterator it = plt.begin(); it != plt.end();
|
||||
|
@ -163,9 +163,6 @@ int32_t ViEChannel::Init() {
|
||||
send_payload_router_->SetSendingRtpModules(send_rtp_modules);
|
||||
DCHECK(!send_payload_router_->active());
|
||||
}
|
||||
if (vcm_->InitializeReceiver() != 0) {
|
||||
return -1;
|
||||
}
|
||||
if (vcm_->SetVideoProtection(kProtectionKeyOnLoss, true)) {
|
||||
return -1;
|
||||
}
|
||||
|
Reference in New Issue
Block a user