From 7cbe88767be56f18b734fd643246e04389e3b759 Mon Sep 17 00:00:00 2001 From: Jakob Ivarsson Date: Tue, 23 Mar 2021 10:54:00 +0100 Subject: [PATCH] Change default adaptive ptime min bitrate to 16kbps. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is to allow FEC to be encoded at the lowest bitrate. Bug: chromium:1086942 Change-Id: I1d30276a9a2aaa80016250dc786d5d867ba6cd10 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/212501 Commit-Queue: Jakob Ivarsson Reviewed-by: Per Ã…hgren Reviewed-by: Minyue Li Reviewed-by: Philipp Hancke Cr-Commit-Position: refs/heads/master@{#33539} --- media/engine/webrtc_voice_engine.cc | 4 +++- media/engine/webrtc_voice_engine_unittest.cc | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/media/engine/webrtc_voice_engine.cc b/media/engine/webrtc_voice_engine.cc index e7c2be600e..a2e6c1714e 100644 --- a/media/engine/webrtc_voice_engine.cc +++ b/media/engine/webrtc_voice_engine.cc @@ -211,7 +211,9 @@ bool IsEnabled(const webrtc::WebRtcKeyValueConfig& config, struct AdaptivePtimeConfig { bool enabled = false; webrtc::DataRate min_payload_bitrate = webrtc::DataRate::KilobitsPerSec(16); - webrtc::DataRate min_encoder_bitrate = webrtc::DataRate::KilobitsPerSec(12); + // Value is chosen to ensure FEC can be encoded, see LBRR_WB_MIN_RATE_BPS in + // libopus. + webrtc::DataRate min_encoder_bitrate = webrtc::DataRate::KilobitsPerSec(16); bool use_slow_adaptation = true; absl::optional audio_network_adaptor_config; diff --git a/media/engine/webrtc_voice_engine_unittest.cc b/media/engine/webrtc_voice_engine_unittest.cc index 7fd138736a..3286837d81 100644 --- a/media/engine/webrtc_voice_engine_unittest.cc +++ b/media/engine/webrtc_voice_engine_unittest.cc @@ -1218,7 +1218,7 @@ TEST_P(WebRtcVoiceEngineTestFake, SetRtpParametersAdaptivePtime) { parameters.encodings[0].adaptive_ptime = true; EXPECT_TRUE(channel_->SetRtpSendParameters(kSsrcX, parameters).ok()); EXPECT_TRUE(GetAudioNetworkAdaptorConfig(kSsrcX)); - EXPECT_EQ(12000, GetSendStreamConfig(kSsrcX).min_bitrate_bps); + EXPECT_EQ(16000, GetSendStreamConfig(kSsrcX).min_bitrate_bps); parameters.encodings[0].adaptive_ptime = false; EXPECT_TRUE(channel_->SetRtpSendParameters(kSsrcX, parameters).ok());