From fe4f6942efa19c4a636cfa530c553862b81277e0 Mon Sep 17 00:00:00 2001 From: Elad Alon Date: Tue, 7 May 2019 23:13:42 +0200 Subject: [PATCH] Add missing overrides to QualityTestVideoEncoder The following overrides were missing: * OnPacketLossRateUpdate * OnRttUpdate * OnLossNotification Bug: webrtc:10501 Change-Id: I9b02d9cc153f2ad4cbf3c50ee3a17f3fa152da93 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/135561 Reviewed-by: Ilya Nikolaevskiy Commit-Queue: Elad Alon Cr-Commit-Position: refs/heads/master@{#27873} --- media/engine/encoder_simulcast_proxy.cc | 6 +++--- video/video_quality_test.cc | 16 ++++++++++++++++ 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/media/engine/encoder_simulcast_proxy.cc b/media/engine/encoder_simulcast_proxy.cc index f2c87ffb21..88cff1b567 100644 --- a/media/engine/encoder_simulcast_proxy.cc +++ b/media/engine/encoder_simulcast_proxy.cc @@ -56,15 +56,15 @@ int EncoderSimulcastProxy::RegisterEncodeCompleteCallback( } void EncoderSimulcastProxy::SetRates(const RateControlParameters& parameters) { - return encoder_->SetRates(parameters); + encoder_->SetRates(parameters); } void EncoderSimulcastProxy::OnPacketLossRateUpdate(float packet_loss_rate) { - return encoder_->OnPacketLossRateUpdate(packet_loss_rate); + encoder_->OnPacketLossRateUpdate(packet_loss_rate); } void EncoderSimulcastProxy::OnRttUpdate(int64_t rtt_ms) { - return encoder_->OnRttUpdate(rtt_ms); + encoder_->OnRttUpdate(rtt_ms); } void EncoderSimulcastProxy::OnLossNotification( diff --git a/video/video_quality_test.cc b/video/video_quality_test.cc index ccbc3e1d84..803bbb98e3 100644 --- a/video/video_quality_test.cc +++ b/video/video_quality_test.cc @@ -128,6 +128,7 @@ class QualityTestVideoEncoder : public VideoEncoder, IvfFileWriter::Wrap(std::move(file), /* byte_limit= */ 100000000)); } } + // Implement VideoEncoder int32_t InitEncode(const VideoCodec* codec_settings, int32_t number_of_cores, @@ -136,12 +137,15 @@ class QualityTestVideoEncoder : public VideoEncoder, return encoder_->InitEncode(codec_settings, number_of_cores, max_payload_size); } + int32_t RegisterEncodeCompleteCallback( EncodedImageCallback* callback) override { callback_ = callback; return encoder_->RegisterEncodeCompleteCallback(this); } + int32_t Release() override { return encoder_->Release(); } + int32_t Encode(const VideoFrame& frame, const std::vector* frame_types) { if (analyzer_) { @@ -149,6 +153,7 @@ class QualityTestVideoEncoder : public VideoEncoder, } return encoder_->Encode(frame, frame_types); } + void SetRates(const RateControlParameters& parameters) override { RTC_DCHECK_GT(overshoot_factor_, 0.0); if (overshoot_factor_ == 1.0) { @@ -194,6 +199,17 @@ class QualityTestVideoEncoder : public VideoEncoder, RateControlParameters(overshot_allocation, parameters.framerate_fps, parameters.bandwidth_allocation)); } + + void OnPacketLossRateUpdate(float packet_loss_rate) override { + encoder_->OnPacketLossRateUpdate(packet_loss_rate); + } + + void OnRttUpdate(int64_t rtt_ms) override { encoder_->OnRttUpdate(rtt_ms); } + + void OnLossNotification(const LossNotification& loss_notification) override { + encoder_->OnLossNotification(loss_notification); + } + EncoderInfo GetEncoderInfo() const override { EncoderInfo info = encoder_->GetEncoderInfo(); if (overshoot_factor_ != 1.0) {