From 83d667925fa0af4b1334ae57af02846ebba43497 Mon Sep 17 00:00:00 2001 From: philipel Date: Tue, 2 Nov 2021 14:34:01 +0100 Subject: [PATCH] Removed unused WebRTC-SupportVP9SVC field trial. Instead use `parameters_.config.rtp.ssrcs.size()` directly to make decisions about the number of temporal and spatial layer used. Bug: none Change-Id: Icba553178ae7fea281c2c67654c510228d9ab5b6 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237080 Commit-Queue: Philip Eliasson Reviewed-by: Niels Moller Cr-Commit-Position: refs/heads/main@{#35299} --- media/engine/webrtc_video_engine.cc | 63 ++------------------ media/engine/webrtc_video_engine_unittest.cc | 8 --- 2 files changed, 6 insertions(+), 65 deletions(-) diff --git a/media/engine/webrtc_video_engine.cc b/media/engine/webrtc_video_engine.cc index 359cbd3a19..f497d9046e 100644 --- a/media/engine/webrtc_video_engine.cc +++ b/media/engine/webrtc_video_engine.cc @@ -345,49 +345,6 @@ static int GetMaxDefaultVideoBitrateKbps(int width, return max_bitrate; } -bool GetVp9LayersFromFieldTrialGroup( - size_t* num_spatial_layers, - size_t* num_temporal_layers, - const webrtc::WebRtcKeyValueConfig& trials) { - std::string group = trials.Lookup("WebRTC-SupportVP9SVC"); - if (group.empty()) - return false; - - if (sscanf(group.c_str(), "EnabledByFlag_%zuSL%zuTL", num_spatial_layers, - num_temporal_layers) != 2) { - return false; - } - if (*num_spatial_layers > webrtc::kMaxSpatialLayers || - *num_spatial_layers < 1) - return false; - - const size_t kMaxTemporalLayers = 3; - if (*num_temporal_layers > kMaxTemporalLayers || *num_temporal_layers < 1) - return false; - - return true; -} - -absl::optional GetVp9SpatialLayersFromFieldTrial( - const webrtc::WebRtcKeyValueConfig& trials) { - size_t num_sl; - size_t num_tl; - if (GetVp9LayersFromFieldTrialGroup(&num_sl, &num_tl, trials)) { - return num_sl; - } - return absl::nullopt; -} - -absl::optional GetVp9TemporalLayersFromFieldTrial( - const webrtc::WebRtcKeyValueConfig& trials) { - size_t num_sl; - size_t num_tl; - if (GetVp9LayersFromFieldTrialGroup(&num_sl, &num_tl, trials)) { - return num_tl; - } - return absl::nullopt; -} - // Returns its smallest positive argument. If neither argument is positive, // returns an arbitrary nonpositive value. int MinPositive(int a, int b) { @@ -541,22 +498,14 @@ WebRtcVideoChannel::WebRtcVideoSendStream::ConfigureVideoEncoderSettings( if (absl::EqualsIgnoreCase(codec.name, kVp9CodecName)) { webrtc::VideoCodecVP9 vp9_settings = webrtc::VideoEncoder::GetDefaultVp9Settings(); - const size_t default_num_spatial_layers = - parameters_.config.rtp.ssrcs.size(); - const size_t num_spatial_layers = - GetVp9SpatialLayersFromFieldTrial(call_->trials()) - .value_or(default_num_spatial_layers); - - const size_t default_num_temporal_layers = - num_spatial_layers > 1 ? kConferenceDefaultNumTemporalLayers : 1; - const size_t num_temporal_layers = - GetVp9TemporalLayersFromFieldTrial(call_->trials()) - .value_or(default_num_temporal_layers); vp9_settings.numberOfSpatialLayers = std::min( - num_spatial_layers, kConferenceMaxNumSpatialLayers); - vp9_settings.numberOfTemporalLayers = std::min( - num_temporal_layers, kConferenceMaxNumTemporalLayers); + parameters_.config.rtp.ssrcs.size(), kConferenceMaxNumSpatialLayers); + vp9_settings.numberOfTemporalLayers = + std::min(parameters_.config.rtp.ssrcs.size() > 1 + ? kConferenceDefaultNumTemporalLayers + : 1, + kConferenceMaxNumTemporalLayers); // VP9 denoising is disabled by default. vp9_settings.denoisingOn = codec_default_denoising ? true : denoising; diff --git a/media/engine/webrtc_video_engine_unittest.cc b/media/engine/webrtc_video_engine_unittest.cc index 339e360c61..5307f63497 100644 --- a/media/engine/webrtc_video_engine_unittest.cc +++ b/media/engine/webrtc_video_engine_unittest.cc @@ -3791,14 +3791,6 @@ INSTANTIATE_TEST_SUITE_P( Vp9SettingsTestWithFieldTrial, Values( std::make_tuple("", 1, 1, webrtc::InterLayerPredMode::kOnKeyPic), - std::make_tuple("WebRTC-SupportVP9SVC/Default/", - 1, - 1, - webrtc::InterLayerPredMode::kOnKeyPic), - std::make_tuple("WebRTC-SupportVP9SVC/EnabledByFlag_2SL3TL/", - 2, - 3, - webrtc::InterLayerPredMode::kOnKeyPic), std::make_tuple("WebRTC-Vp9InterLayerPred/Default/", 1, 1,