From ff7020af2704a46d867a894f94465ad40e4f2651 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Erik=20Spr=C3=A5ng?= Date: Tue, 6 Nov 2018 15:32:48 +0100 Subject: [PATCH] Remove non-default VideoEncoder::EncoderInfo() ctor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This removes the constructor that takes all members as parameters. A main goal with this struct is to make it easy to add or remove fields without having to refactor implementations and usage all over the palce, this breaks down if we need to update the arguments in this constructor every time. Also cleans up a few commented-out lines that were forgotten in an earliers cl. Bug: webrtc:9722 Change-Id: I22db35d399469bdb3bfd8bdc531b24ead9fe1c3e Reviewed-on: https://webrtc-review.googlesource.com/c/109570 Reviewed-by: Niels Moller Reviewed-by: Per Kjellander Commit-Queue: Erik Språng Cr-Commit-Position: refs/heads/master@{#25542} --- ...encoder_software_fallback_wrapper_unittest.cc | 7 +++++-- api/video_codecs/video_encoder.cc | 16 +++++++--------- api/video_codecs/video_encoder.h | 5 ----- 3 files changed, 12 insertions(+), 16 deletions(-) diff --git a/api/video_codecs/test/video_encoder_software_fallback_wrapper_unittest.cc b/api/video_codecs/test/video_encoder_software_fallback_wrapper_unittest.cc index fb3cdfd7a0..555914ea23 100644 --- a/api/video_codecs/test/video_encoder_software_fallback_wrapper_unittest.cc +++ b/api/video_codecs/test/video_encoder_software_fallback_wrapper_unittest.cc @@ -86,8 +86,11 @@ class VideoEncoderSoftwareFallbackWrapperTest : public ::testing::Test { EncoderInfo GetEncoderInfo() const override { ++supports_native_handle_count_; - return EncoderInfo(ScalingSettings(kLowThreshold, kHighThreshold), - supports_native_handle_, "fake-encoder"); + EncoderInfo info; + info.scaling_settings = ScalingSettings(kLowThreshold, kHighThreshold); + info.supports_native_handle = supports_native_handle_; + info.implementation_name = "fake-encoder"; + return info; } int init_encode_count_ = 0; diff --git a/api/video_codecs/video_encoder.cc b/api/video_codecs/video_encoder.cc index d9ca4583ca..0963886894 100644 --- a/api/video_codecs/video_encoder.cc +++ b/api/video_codecs/video_encoder.cc @@ -88,13 +88,6 @@ VideoEncoder::EncoderInfo::EncoderInfo() supports_native_handle(false), implementation_name("unknown") {} -VideoEncoder::EncoderInfo::EncoderInfo(const ScalingSettings& scaling_settings, - bool supports_native_handle, - const std::string& implementation_name) - : scaling_settings(scaling_settings), - supports_native_handle(supports_native_handle), - implementation_name(implementation_name) {} - VideoEncoder::EncoderInfo::~EncoderInfo() = default; int32_t VideoEncoder::SetRates(uint32_t bitrate, uint32_t framerate) { @@ -120,9 +113,14 @@ const char* VideoEncoder::ImplementationName() const { return "unknown"; } +// TODO(webrtc:9722): Remove and make pure virtual when the three legacy +// methods called here are gone. VideoEncoder::EncoderInfo VideoEncoder::GetEncoderInfo() const { - return EncoderInfo(GetScalingSettings(), SupportsNativeHandle(), - ImplementationName()); + EncoderInfo info; + info.scaling_settings = GetScalingSettings(); + info.supports_native_handle = SupportsNativeHandle(); + info.implementation_name = ImplementationName(); + return info; } int32_t VideoEncoder::SetChannelParameters(uint32_t packet_loss, int64_t rtt) { diff --git a/api/video_codecs/video_encoder.h b/api/video_codecs/video_encoder.h index 1328bd5127..f8f0313c3a 100644 --- a/api/video_codecs/video_encoder.h +++ b/api/video_codecs/video_encoder.h @@ -120,11 +120,6 @@ class RTC_EXPORT VideoEncoder { // Struct containing metadata about the encoder implementing this interface. struct EncoderInfo { EncoderInfo(); - EncoderInfo(const ScalingSettings& scaling_settings, - bool supports_native_handle, - const std::string& implementation_name); - // EncoderInfo(const EncoderInfo& rhs); - // EncoderInfo& operator=(const EncoderInfo& rhs); ~EncoderInfo(); // Any encoder implementation wishing to use the WebRTC provided