Embed Deceleration Target Level Offset Field Trial.

Bug: webrtc:10619
Change-Id: I4ef75ae03d6071bf84d2c1b6e50290ea26e83496
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/152663
Commit-Queue: Ruslan Burakov <kuddai@google.com>
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29169}
diff --git a/modules/audio_coding/neteq/delay_manager_unittest.cc b/modules/audio_coding/neteq/delay_manager_unittest.cc
index beb61b0..6979789 100644
--- a/modules/audio_coding/neteq/delay_manager_unittest.cc
+++ b/modules/audio_coding/neteq/delay_manager_unittest.cc
@@ -594,54 +594,17 @@
   InsertNextPacket();
 }
 
-TEST_F(DelayManagerTest, DecelerationTargetLevelOffsetFieldTrial) {
-  {
-    test::ScopedFieldTrials field_trial(
-        "WebRTC-Audio-NetEqDecelerationTargetLevelOffset/Enabled-105/");
-    RecreateDelayManager();
-    EXPECT_EQ(dm_->deceleration_target_level_offset_ms().value(), 105 << 8);
-  }
-  {
-    // Negative number.
-    test::ScopedFieldTrials field_trial(
-        "WebRTC-Audio-NetEqDecelerationTargetLevelOffset/Enabled--105/");
-    RecreateDelayManager();
-    EXPECT_FALSE(dm_->deceleration_target_level_offset_ms().has_value());
-  }
-  {
-    // Disabled.
-    test::ScopedFieldTrials field_trial(
-        "WebRTC-Audio-NetEqDecelerationTargetLevelOffset/Disabled/");
-    RecreateDelayManager();
-    EXPECT_FALSE(dm_->deceleration_target_level_offset_ms().has_value());
-  }
-  {
-    // Float number.
-    test::ScopedFieldTrials field_trial(
-        "WebRTC-Audio-NetEqDecelerationTargetLevelOffset/Enabled-105.5/");
-    RecreateDelayManager();
-    EXPECT_EQ(dm_->deceleration_target_level_offset_ms().value(), 105 << 8);
-  }
-  {
-    // Several numbers.
-    test::ScopedFieldTrials field_trial(
-        "WebRTC-Audio-NetEqDecelerationTargetLevelOffset/Enabled-20-40/");
-    RecreateDelayManager();
-    EXPECT_EQ(dm_->deceleration_target_level_offset_ms().value(), 20 << 8);
-  }
-}
-
 TEST_F(DelayManagerTest, DecelerationTargetLevelOffset) {
-  // Border value where 1/4 target buffer level meets
-  // WebRTC-Audio-NetEqDecelerationTargetLevelOffset.
-  constexpr int kBoarderTargetLevel = 100 * 4;
+  SetPacketAudioLength(kFrameSizeMs);
+
+  // Deceleration target level offset follows the value hardcoded in
+  // delay_manager.cc.
+  constexpr int kDecelerationTargetLevelOffsetMs = 85 << 8;  // In Q8.
+  // Border value where |x * 3/4 = target_level - x|.
+  constexpr int kBoarderTargetLevel = kDecelerationTargetLevelOffsetMs * 4;
   {
     // Test that for a low target level, default behaviour is intact.
-    test::ScopedFieldTrials field_trial(
-        "WebRTC-Audio-NetEqDecelerationTargetLevelOffset/Enabled-100/");
-    const int target_level_ms = ((kBoarderTargetLevel - 1) << 8) / kFrameSizeMs;
-    RecreateDelayManager();
-    SetPacketAudioLength(kFrameSizeMs);
+    const int target_level_ms = kBoarderTargetLevel / kFrameSizeMs - 1;
 
     int lower, higher;  // In Q8.
     dm_->BufferLimits(target_level_ms, &lower, &higher);
@@ -653,32 +616,14 @@
 
   {
     // Test that for the high target level, |lower| is below target level by
-    // fixed constant (100 ms in this Field Trial setup).
-    test::ScopedFieldTrials field_trial(
-        "WebRTC-Audio-NetEqDecelerationTargetLevelOffset/Enabled-100/");
-    const int target_level_ms = ((kBoarderTargetLevel + 1) << 8) / kFrameSizeMs;
-    RecreateDelayManager();
-    SetPacketAudioLength(kFrameSizeMs);
+    // fixed |kOffset|.
+    const int target_level_ms = kBoarderTargetLevel / kFrameSizeMs + 1;
 
     int lower, higher;  // In Q8.
     dm_->BufferLimits(target_level_ms, &lower, &higher);
 
-    EXPECT_EQ(target_level_ms - ((100 << 8) / kFrameSizeMs), lower);
-    EXPECT_EQ(target_level_ms, higher);
-  }
-
-  {
-    // Test that for the high target level, without Field Trial the behaviour
-    // will remain the same.
-    const int target_level_ms = ((kBoarderTargetLevel + 1) << 8) / kFrameSizeMs;
-    RecreateDelayManager();
-    SetPacketAudioLength(kFrameSizeMs);
-
-    int lower, higher;  // In Q8.
-    dm_->BufferLimits(target_level_ms, &lower, &higher);
-
-    // Default behaviour of taking 75% of target level.
-    EXPECT_EQ(target_level_ms * 3 / 4, lower);
+    EXPECT_EQ(target_level_ms - kDecelerationTargetLevelOffsetMs / kFrameSizeMs,
+              lower);
     EXPECT_EQ(target_level_ms, higher);
   }
 }