Change default adaptive ptime min bitrate to 16kbps.

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 <jakobi@webrtc.org>
Reviewed-by: Per Ã…hgren <peah@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Philipp Hancke <philipp.hancke@googlemail.com>
Cr-Commit-Position: refs/heads/master@{#33539}
diff --git a/media/engine/webrtc_voice_engine.cc b/media/engine/webrtc_voice_engine.cc
index e7c2be6..a2e6c17 100644
--- a/media/engine/webrtc_voice_engine.cc
+++ b/media/engine/webrtc_voice_engine.cc
@@ -211,7 +211,9 @@
 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<std::string> audio_network_adaptor_config;
diff --git a/media/engine/webrtc_voice_engine_unittest.cc b/media/engine/webrtc_voice_engine_unittest.cc
index 7fd1387..3286837 100644
--- a/media/engine/webrtc_voice_engine_unittest.cc
+++ b/media/engine/webrtc_voice_engine_unittest.cc
@@ -1218,7 +1218,7 @@
   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());