diff --git a/api/video_codecs/video_codec.cc b/api/video_codecs/video_codec.cc index e807e4cd3e..b4bc5b73fc 100644 --- a/api/video_codecs/video_codec.cc +++ b/api/video_codecs/video_codec.cc @@ -31,8 +31,7 @@ constexpr char kPayloadNameMultiplex[] = "Multiplex"; } // namespace bool VideoCodecVP8::operator==(const VideoCodecVP8& other) const { - return (complexity == other.complexity && - numberOfTemporalLayers == other.numberOfTemporalLayers && + return (numberOfTemporalLayers == other.numberOfTemporalLayers && denoisingOn == other.denoisingOn && automaticResizeOn == other.automaticResizeOn && frameDroppingOn == other.frameDroppingOn && @@ -40,8 +39,7 @@ bool VideoCodecVP8::operator==(const VideoCodecVP8& other) const { } bool VideoCodecVP9::operator==(const VideoCodecVP9& other) const { - return (complexity == other.complexity && - numberOfTemporalLayers == other.numberOfTemporalLayers && + return (numberOfTemporalLayers == other.numberOfTemporalLayers && denoisingOn == other.denoisingOn && frameDroppingOn == other.frameDroppingOn && keyFrameInterval == other.keyFrameInterval && @@ -74,7 +72,8 @@ VideoCodec::VideoCodec() expect_encode_from_texture(false), timing_frame_thresholds({0, 0}), legacy_conference_mode(false), - codec_specific_() {} + codec_specific_(), + complexity_(VideoCodecComplexity::kComplexityNormal) {} VideoCodecVP8* VideoCodec::VP8() { RTC_DCHECK_EQ(codecType, kVideoCodecVP8); @@ -140,17 +139,7 @@ VideoCodecType PayloadStringToCodecType(const std::string& name) { } VideoCodecComplexity VideoCodec::GetVideoEncoderComplexity() const { - if (complexity_.has_value()) { - return complexity_.value(); - } - switch (codecType) { - case kVideoCodecVP8: - return VP8().complexity; - case kVideoCodecVP9: - return VP9().complexity; - default: - return VideoCodecComplexity::kComplexityNormal; - } + return complexity_; } void VideoCodec::SetVideoEncoderComplexity( diff --git a/api/video_codecs/video_codec.h b/api/video_codecs/video_codec.h index 51c0ed78b5..e0cdad9cdc 100644 --- a/api/video_codecs/video_codec.h +++ b/api/video_codecs/video_codec.h @@ -43,7 +43,6 @@ struct VideoCodecVP8 { bool operator!=(const VideoCodecVP8& other) const { return !(*this == other); } - VideoCodecComplexity complexity; unsigned char numberOfTemporalLayers; bool denoisingOn; bool automaticResizeOn; @@ -63,7 +62,6 @@ struct VideoCodecVP9 { bool operator!=(const VideoCodecVP9& other) const { return !(*this == other); } - VideoCodecComplexity complexity; unsigned char numberOfTemporalLayers; bool denoisingOn; bool frameDroppingOn; @@ -181,7 +179,7 @@ class RTC_EXPORT VideoCodec { absl::optional scalability_mode_; // 'complexity_' indicates the CPU capability of the client. It's used to // determine encoder CPU complexity (e.g., cpu_used for VP8, VP9. and AV1). - absl::optional complexity_; + VideoCodecComplexity complexity_; // TODO(bugs.webrtc.org/6883): When unset, GetEnableFrameDrop checks the // codec-specific settings. absl::optional frame_drop_enabled_; diff --git a/api/video_codecs/video_encoder.cc b/api/video_codecs/video_encoder.cc index 6d61e5dcad..83c329152e 100644 --- a/api/video_codecs/video_encoder.cc +++ b/api/video_codecs/video_encoder.cc @@ -45,7 +45,6 @@ VideoCodecVP9 VideoEncoder::GetDefaultVp9Settings() { vp9_settings.numberOfSpatialLayers = 1; vp9_settings.flexibleMode = false; vp9_settings.interLayerPred = InterLayerPredMode::kOn; - vp9_settings.complexity = VideoCodecComplexity::kComplexityNormal; return vp9_settings; }