From 10608708eba16c7a70a69cd05317cb9766325d81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Erik=20Spr=C3=A5ng?= Date: Wed, 7 Nov 2018 16:47:06 +0100 Subject: [PATCH] Update LibVpxVp8Encoder to use GetEncoderInfo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: webrtc:9890 Change-Id: I76566bc38137c81b029fa848da89c96454260895 Reviewed-on: https://webrtc-review.googlesource.com/c/109920 Reviewed-by: Ilya Nikolaevskiy Commit-Queue: Erik Språng Cr-Commit-Position: refs/heads/master@{#25552} --- .../codecs/vp8/libvpx_vp8_encoder.cc | 19 +++++++++++-------- .../codecs/vp8/libvpx_vp8_encoder.h | 4 +--- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc b/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc index 6207c36744..5d5e20b9e2 100644 --- a/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc +++ b/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.cc @@ -261,10 +261,6 @@ int LibvpxVp8Encoder::SetRateAllocation(const VideoBitrateAllocation& bitrate, return WEBRTC_VIDEO_CODEC_OK; } -const char* LibvpxVp8Encoder::ImplementationName() const { - return "libvpx"; -} - void LibvpxVp8Encoder::SetStreamState(bool send_stream, int stream_idx) { if (send_stream && !send_stream_[stream_idx]) { // Need a key frame if we have not sent this stream before. @@ -916,13 +912,20 @@ int LibvpxVp8Encoder::GetEncodedPartitions(const VideoFrame& input_image) { return result; } -VideoEncoder::ScalingSettings LibvpxVp8Encoder::GetScalingSettings() const { +VideoEncoder::EncoderInfo LibvpxVp8Encoder::GetEncoderInfo() const { + EncoderInfo info; + info.supports_native_handle = false; + info.implementation_name = "libvpx"; + const bool enable_scaling = encoders_.size() == 1 && configurations_[0].rc_dropframe_thresh > 0 && codec_.VP8().automaticResizeOn; - return enable_scaling ? VideoEncoder::ScalingSettings(kLowVp8QpThreshold, - kHighVp8QpThreshold) - : VideoEncoder::ScalingSettings::kOff; + info.scaling_settings = enable_scaling + ? VideoEncoder::ScalingSettings( + kLowVp8QpThreshold, kHighVp8QpThreshold) + : VideoEncoder::ScalingSettings::kOff; + + return info; } int LibvpxVp8Encoder::RegisterEncodeCompleteCallback( diff --git a/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h b/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h index 37e3c8df95..8a8a12c7ec 100644 --- a/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h +++ b/modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h @@ -50,9 +50,7 @@ class LibvpxVp8Encoder : public VideoEncoder { int SetRateAllocation(const VideoBitrateAllocation& bitrate, uint32_t new_framerate) override; - ScalingSettings GetScalingSettings() const override; - - const char* ImplementationName() const override; + EncoderInfo GetEncoderInfo() const override; static vpx_enc_frame_flags_t EncodeFlags( const Vp8TemporalLayers::FrameConfig& references);