Delete field trial WebRTC-UseShortVP8TL3Pattern as unused

Bug: webrtc:11503
Change-Id: I38cce7811fc2aa6db9d5bbd40a2c6b586fe30a77
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/347660
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42099}
diff --git a/experiments/field_trials.py b/experiments/field_trials.py
index 406b249..d4bd1d6 100755
--- a/experiments/field_trials.py
+++ b/experiments/field_trials.py
@@ -775,9 +775,6 @@
     FieldTrial('WebRTC-UseDifferentiatedCellularCosts',
                'webrtc:11473',
                date(2024, 4, 1)),
-    FieldTrial('WebRTC-UseShortVP8TL3Pattern',
-               'webrtc:8162',
-               INDEFINITE),
     FieldTrial('WebRTC-UseStandardBytesStats',
                'webrtc:10525',
                date(2024, 4, 1)),
@@ -893,7 +890,7 @@
 ])  # yapf: disable
 
 POLICY_EXEMPT_FIELD_TRIALS_DIGEST: str = \
-    'ac66aba5d08866be534a452b59c3de627bf38f3e'
+    '5690e723f0ca378ceb708e02bf2334327c0f64b6'
 
 REGISTERED_FIELD_TRIALS: FrozenSet[FieldTrial] = ACTIVE_FIELD_TRIALS.union(
     POLICY_EXEMPT_FIELD_TRIALS)
diff --git a/modules/video_coding/BUILD.gn b/modules/video_coding/BUILD.gn
index 15face2..acd49d0 100644
--- a/modules/video_coding/BUILD.gn
+++ b/modules/video_coding/BUILD.gn
@@ -634,7 +634,6 @@
     "../../rtc_base:rate_statistics",
     "../../rtc_base:rtc_numerics",
     "../../rtc_base:timeutils",
-    "../../system_wrappers:field_trial",
     "../../system_wrappers:metrics",
   ]
   absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
diff --git a/modules/video_coding/codecs/vp8/default_temporal_layers.cc b/modules/video_coding/codecs/vp8/default_temporal_layers.cc
index 8ad30f0..99dfb6e 100644
--- a/modules/video_coding/codecs/vp8/default_temporal_layers.cc
+++ b/modules/video_coding/codecs/vp8/default_temporal_layers.cc
@@ -22,7 +22,6 @@
 #include "rtc_base/arraysize.h"
 #include "rtc_base/checks.h"
 #include "rtc_base/logging.h"
-#include "system_wrappers/include/field_trial.h"
 
 namespace webrtc {
 DefaultTemporalLayers::PendingFrame::PendingFrame() = default;
@@ -149,54 +148,25 @@
               {"SR", {kReferenceAndUpdate, kNone, kNone}},
               {"-D", {kReference, kReference, kNone, kFreezeEntropy}}};
     case 3:
-      if (field_trial::IsEnabled("WebRTC-UseShortVP8TL3Pattern")) {
-        // This field trial is intended to check if it is worth using a shorter
-        // temporal pattern, trading some coding efficiency for less risk of
-        // dropped frames.
-        // The coding efficiency will decrease somewhat since the higher layer
-        // state is more volatile, but it will be offset slightly by updating
-        // the altref buffer with TL2 frames, instead of just referencing lower
-        // layers.
-        // If a frame is dropped in a higher layer, the jitter
-        // buffer on the receive side won't be able to decode any higher layer
-        // frame until the next sync frame. So we expect a noticeable decrease
-        // in frame drops on links with high packet loss.
-
-        // TL0 references and updates the 'last' buffer.
-        // TL1  references 'last' and references and updates 'golden'.
-        // TL2 references both 'last' & 'golden' and references and updates
-        // 'arf'.
-        //     2-------2       2-------2       2
-        //    /     __/       /     __/       /
-        //   /   __1         /   __1         /
-        //  /___/           /___/           /
-        // 0---------------0---------------0-----
-        // 0   1   2   3   4   5   6   7   8   9 ...
-        return {{"SSS", {kReferenceAndUpdate, kNone, kNone}},
-                {"--S", {kReference, kNone, kUpdate}},
-                {"-DR", {kReference, kUpdate, kNone}},
-                {"--D", {kReference, kReference, kReference, kFreezeEntropy}}};
-      } else {
-        // All layers can reference but not update the 'alt' buffer, this means
-        // that the 'alt' buffer reference is effectively the last keyframe.
-        // TL0 also references and updates the 'last' buffer.
-        // TL1 also references 'last' and references and updates 'golden'.
-        // TL2 references both 'last' and 'golden' but updates no buffer.
-        //     2     __2  _____2     __2       2
-        //    /     /____/    /     /         /
-        //   /     1---------/-----1         /
-        //  /_____/         /_____/         /
-        // 0---------------0---------------0-----
-        // 0   1   2   3   4   5   6   7   8   9 ...
-        return {{"SSS", {kReferenceAndUpdate, kNone, kNone}},
-                {"--D", {kReference, kNone, kNone, kFreezeEntropy}},
-                {"-SS", {kReference, kUpdate, kNone}},
-                {"--D", {kReference, kReference, kNone, kFreezeEntropy}},
-                {"SRR", {kReferenceAndUpdate, kNone, kNone}},
-                {"--D", {kReference, kReference, kNone, kFreezeEntropy}},
-                {"-DS", {kReference, kReferenceAndUpdate, kNone}},
-                {"--D", {kReference, kReference, kNone, kFreezeEntropy}}};
-      }
+      // All layers can reference but not update the 'alt' buffer, this means
+      // that the 'alt' buffer reference is effectively the last keyframe.
+      // TL0 also references and updates the 'last' buffer.
+      // TL1 also references 'last' and references and updates 'golden'.
+      // TL2 references both 'last' and 'golden' but updates no buffer.
+      //     2     __2  _____2     __2       2
+      //    /     /____/    /     /         /
+      //   /     1---------/-----1         /
+      //  /_____/         /_____/         /
+      // 0---------------0---------------0-----
+      // 0   1   2   3   4   5   6   7   8   9 ...
+      return {{"SSS", {kReferenceAndUpdate, kNone, kNone}},
+              {"--D", {kReference, kNone, kNone, kFreezeEntropy}},
+              {"-SS", {kReference, kUpdate, kNone}},
+              {"--D", {kReference, kReference, kNone, kFreezeEntropy}},
+              {"SRR", {kReferenceAndUpdate, kNone, kNone}},
+              {"--D", {kReference, kReference, kNone, kFreezeEntropy}},
+              {"-DS", {kReference, kReferenceAndUpdate, kNone}},
+              {"--D", {kReference, kReference, kNone, kFreezeEntropy}}};
     case 4:
       // TL0 references and updates only the 'last' buffer.
       // TL1 references 'last' and updates and references 'golden'.
@@ -646,23 +616,14 @@
       return template_structure;
     }
     case 3: {
-      if (field_trial::IsEnabled("WebRTC-UseShortVP8TL3Pattern")) {
-        template_structure.templates.resize(5);
-        template_structure.templates[0].T(0).Dtis("SSS");
-        template_structure.templates[1].T(0).Dtis("SSS").FrameDiffs({4});
-        template_structure.templates[2].T(1).Dtis("-DR").FrameDiffs({2});
-        template_structure.templates[3].T(2).Dtis("--S").FrameDiffs({1});
-        template_structure.templates[4].T(2).Dtis("--D").FrameDiffs({2, 1});
-      } else {
-        template_structure.templates.resize(7);
-        template_structure.templates[0].T(0).Dtis("SSS");
-        template_structure.templates[1].T(0).Dtis("SSS").FrameDiffs({4});
-        template_structure.templates[2].T(0).Dtis("SRR").FrameDiffs({4});
-        template_structure.templates[3].T(1).Dtis("-SS").FrameDiffs({2});
-        template_structure.templates[4].T(1).Dtis("-DS").FrameDiffs({4, 2});
-        template_structure.templates[5].T(2).Dtis("--D").FrameDiffs({1});
-        template_structure.templates[6].T(2).Dtis("--D").FrameDiffs({3, 1});
-      }
+      template_structure.templates.resize(7);
+      template_structure.templates[0].T(0).Dtis("SSS");
+      template_structure.templates[1].T(0).Dtis("SSS").FrameDiffs({4});
+      template_structure.templates[2].T(0).Dtis("SRR").FrameDiffs({4});
+      template_structure.templates[3].T(1).Dtis("-SS").FrameDiffs({2});
+      template_structure.templates[4].T(1).Dtis("-DS").FrameDiffs({4, 2});
+      template_structure.templates[5].T(2).Dtis("--D").FrameDiffs({1});
+      template_structure.templates[6].T(2).Dtis("--D").FrameDiffs({3, 1});
       return template_structure;
     }
     case 4: {
@@ -694,11 +655,7 @@
     case 2:
       return {{2}, {0}, {0}, {1, 2}};
     case 3:
-      if (field_trial::IsEnabled("WebRTC-UseShortVP8TL3Pattern")) {
-        return {{0}, {0}, {0}, {0, 1, 2}};
-      } else {
-        return {{4}, {0}, {0}, {0, 2}, {0}, {2, 4}, {2, 4}, {4, 6}};
-      }
+      return {{4}, {0}, {0}, {0, 2}, {0}, {2, 4}, {2, 4}, {4, 6}};
     case 4:
       return {{8},    {0},         {0},         {0, 2},
               {0},    {0, 2, 4},   {0, 2, 4},   {0, 4, 6},
diff --git a/modules/video_coding/codecs/vp8/default_temporal_layers_unittest.cc b/modules/video_coding/codecs/vp8/default_temporal_layers_unittest.cc
index ae027a9..ac9c565 100644
--- a/modules/video_coding/codecs/vp8/default_temporal_layers_unittest.cc
+++ b/modules/video_coding/codecs/vp8/default_temporal_layers_unittest.cc
@@ -19,7 +19,6 @@
 #include "modules/video_coding/codecs/vp8/libvpx_vp8_encoder.h"
 #include "modules/video_coding/include/video_codec_interface.h"
 #include "modules/video_coding/utility/simulcast_rate_allocator.h"
-#include "test/field_trial.h"
 #include "test/gmock.h"
 #include "test/gtest.h"
 #include "vpx/vp8cx.h"
@@ -226,221 +225,6 @@
   }
 }
 
-TEST_F(TemporalLayersTest, Alternative3Layers) {
-  constexpr int kNumLayers = 3;
-  ScopedFieldTrials field_trial("WebRTC-UseShortVP8TL3Pattern/Enabled/");
-  DefaultTemporalLayers tl(kNumLayers);
-  DefaultTemporalLayersChecker checker(kNumLayers);
-  tl.OnRatesUpdated(0,
-                    GetTemporalLayerRates(kDefaultBytesPerFrame,
-                                          kDefaultFramerate, kNumLayers),
-                    kDefaultFramerate);
-  tl.UpdateConfiguration(0);
-
-  int expected_flags[8] = {kTemporalUpdateLast,
-                           kTemporalUpdateAltrefWithoutDependency,
-                           kTemporalUpdateGoldenWithoutDependency,
-                           kTemporalUpdateNone,
-                           kTemporalUpdateLast,
-                           kTemporalUpdateAltrefWithoutDependency,
-                           kTemporalUpdateGoldenWithoutDependency,
-                           kTemporalUpdateNone};
-  int expected_temporal_idx[8] = {0, 2, 1, 2, 0, 2, 1, 2};
-
-  bool expected_layer_sync[8] = {false, true, true, false,
-                                 false, true, true, false};
-
-  unsigned int timestamp = 0;
-  for (int i = 0; i < 8; ++i) {
-    const bool is_keyframe = (i == 0);
-    CodecSpecificInfo info;
-    Vp8FrameConfig tl_config = tl.NextFrameConfig(0, timestamp);
-    EXPECT_EQ(is_keyframe ? kKeyFrameFlags : expected_flags[i],
-              LibvpxVp8Encoder::EncodeFlags(tl_config))
-        << i;
-    tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, is_keyframe,
-                    kDefaultQp, &info);
-    EXPECT_TRUE(checker.CheckTemporalConfig(is_keyframe, tl_config));
-    EXPECT_EQ(expected_temporal_idx[i], info.codecSpecific.VP8.temporalIdx);
-    EXPECT_EQ(expected_temporal_idx[i], tl_config.packetizer_temporal_idx);
-    EXPECT_EQ(expected_temporal_idx[i], tl_config.encoder_layer_id);
-    EXPECT_EQ(is_keyframe || expected_layer_sync[i],
-              info.codecSpecific.VP8.layerSync);
-    EXPECT_EQ(expected_layer_sync[i], tl_config.layer_sync);
-    timestamp += 3000;
-  }
-}
-
-TEST_F(TemporalLayersTest, SearchOrder) {
-  constexpr int kNumLayers = 3;
-  ScopedFieldTrials field_trial("WebRTC-UseShortVP8TL3Pattern/Enabled/");
-  DefaultTemporalLayers tl(kNumLayers);
-  DefaultTemporalLayersChecker checker(kNumLayers);
-  tl.OnRatesUpdated(0,
-                    GetTemporalLayerRates(kDefaultBytesPerFrame,
-                                          kDefaultFramerate, kNumLayers),
-                    kDefaultFramerate);
-  tl.UpdateConfiguration(0);
-
-  // Use a repeating pattern of tl 0, 2, 1, 2.
-  // Tl 0, 1, 2 update last, golden, altref respectively.
-
-  // Start with a key-frame. tl_config flags can be ignored.
-  uint32_t timestamp = 0;
-  Vp8FrameConfig tl_config = tl.NextFrameConfig(0, timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, true, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // TL2 frame. First one only references TL0. Updates altref.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-  EXPECT_EQ(tl_config.first_reference, Vp8BufferReference::kLast);
-  EXPECT_EQ(tl_config.second_reference, Vp8BufferReference::kNone);
-
-  // TL1 frame. Can only reference TL0. Updated golden.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-  EXPECT_EQ(tl_config.first_reference, Vp8BufferReference::kLast);
-  EXPECT_EQ(tl_config.second_reference, Vp8BufferReference::kNone);
-
-  // TL2 frame. Can reference all three buffers. Golden was the last to be
-  // updated, the next to last was altref.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-  EXPECT_EQ(tl_config.first_reference, Vp8BufferReference::kGolden);
-  EXPECT_EQ(tl_config.second_reference, Vp8BufferReference::kAltref);
-}
-
-TEST_F(TemporalLayersTest, SearchOrderWithDrop) {
-  constexpr int kNumLayers = 3;
-  ScopedFieldTrials field_trial("WebRTC-UseShortVP8TL3Pattern/Enabled/");
-  DefaultTemporalLayers tl(kNumLayers);
-  DefaultTemporalLayersChecker checker(kNumLayers);
-  tl.OnRatesUpdated(0,
-                    GetTemporalLayerRates(kDefaultBytesPerFrame,
-                                          kDefaultFramerate, kNumLayers),
-                    kDefaultFramerate);
-  tl.UpdateConfiguration(0);
-
-  // Use a repeating pattern of tl 0, 2, 1, 2.
-  // Tl 0, 1, 2 update last, golden, altref respectively.
-
-  // Start with a key-frame. tl_config flags can be ignored.
-  uint32_t timestamp = 0;
-  Vp8FrameConfig tl_config = tl.NextFrameConfig(0, timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, true, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // TL2 frame. First one only references TL0. Updates altref.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-  EXPECT_EQ(tl_config.first_reference, Vp8BufferReference::kLast);
-  EXPECT_EQ(tl_config.second_reference, Vp8BufferReference::kNone);
-
-  // Dropped TL1 frame. Can only reference TL0. Should have updated golden.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, 0, false, 0, nullptr);
-
-  // TL2 frame. Can normally reference all three buffers, but golden has not
-  // been populated this cycle. Altref was last to be updated, before that last.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-  EXPECT_EQ(tl_config.first_reference, Vp8BufferReference::kAltref);
-  EXPECT_EQ(tl_config.second_reference, Vp8BufferReference::kLast);
-}
-
-TEST_F(TemporalLayersTest, DoesNotReferenceDroppedFrames) {
-  constexpr int kNumLayers = 3;
-  // Use a repeating pattern of tl 0, 2, 1, 2.
-  // Tl 0, 1, 2 update last, golden, altref respectively.
-  ScopedFieldTrials field_trial("WebRTC-UseShortVP8TL3Pattern/Enabled/");
-  DefaultTemporalLayers tl(kNumLayers);
-  DefaultTemporalLayersChecker checker(kNumLayers);
-  tl.OnRatesUpdated(0,
-                    GetTemporalLayerRates(kDefaultBytesPerFrame,
-                                          kDefaultFramerate, kNumLayers),
-                    kDefaultFramerate);
-  tl.UpdateConfiguration(0);
-
-  // Start with a keyframe.
-  uint32_t timestamp = 0;
-  Vp8FrameConfig tl_config = tl.NextFrameConfig(0, timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, true, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // Dropped TL2 frame.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, 0, false, 0, nullptr);
-
-  // Dropped TL1 frame.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, 0, false, 0, nullptr);
-
-  // TL2 frame. Can reference all three buffers, valid since golden and altref
-  // both contain the last keyframe.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-  EXPECT_TRUE(tl_config.last_buffer_flags & BufferFlags::kReference);
-  EXPECT_TRUE(tl_config.golden_buffer_flags & BufferFlags::kReference);
-  EXPECT_TRUE(tl_config.arf_buffer_flags & BufferFlags::kReference);
-
-  // Restart of cycle!
-
-  // TL0 base layer frame, updating and referencing last.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // TL2 frame, updating altref.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // TL1 frame, updating golden.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // TL2 frame. Can still reference all buffer since they have been update this
-  // cycle.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-  EXPECT_TRUE(tl_config.last_buffer_flags & BufferFlags::kReference);
-  EXPECT_TRUE(tl_config.golden_buffer_flags & BufferFlags::kReference);
-  EXPECT_TRUE(tl_config.arf_buffer_flags & BufferFlags::kReference);
-
-  // Restart of cycle!
-
-  // TL0 base layer frame, updating and referencing last.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // Dropped TL2 frame.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, 0, false, 0, nullptr);
-
-  // Dropped TL1 frame.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, 0, false, 0, nullptr);
-
-  // TL2 frame. This time golden and altref contain data from the previous cycle
-  // and cannot be referenced.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-  EXPECT_TRUE(tl_config.last_buffer_flags & BufferFlags::kReference);
-  EXPECT_FALSE(tl_config.golden_buffer_flags & BufferFlags::kReference);
-  EXPECT_FALSE(tl_config.arf_buffer_flags & BufferFlags::kReference);
-}
-
 TEST_F(TemporalLayersTest, DoesNotReferenceUnlessGuaranteedToExist) {
   constexpr int kNumLayers = 3;
   // Use a repeating pattern of tl 0, 2, 1, 2.
@@ -509,69 +293,6 @@
   EXPECT_FALSE(tl_config.arf_buffer_flags & BufferFlags::kReference);
 }
 
-TEST_F(TemporalLayersTest, DoesNotReferenceUnlessGuaranteedToExistLongDelay) {
-  constexpr int kNumLayers = 3;
-  // Use a repeating pattern of tl 0, 2, 1, 2.
-  // Tl 0, 1 updates last, golden, altref respectively.
-  ScopedFieldTrials field_trial("WebRTC-UseShortVP8TL3Pattern/Enabled/");
-  DefaultTemporalLayers tl(kNumLayers);
-  DefaultTemporalLayersChecker checker(kNumLayers);
-  tl.OnRatesUpdated(0,
-                    GetTemporalLayerRates(kDefaultBytesPerFrame,
-                                          kDefaultFramerate, kNumLayers),
-                    kDefaultFramerate);
-  tl.UpdateConfiguration(0);
-
-  // Start with a keyframe.
-  uint32_t timestamp = 0;
-  Vp8FrameConfig tl_config = tl.NextFrameConfig(0, timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, true, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // Do a full cycle of the pattern.
-  for (int i = 0; i < 3; ++i) {
-    tl_config = tl.NextFrameConfig(0, ++timestamp);
-    tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                    IgnoredCodecSpecificInfo());
-  }
-
-  // TL0 base layer frame, starting the cycle over.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // TL2 frame.
-  tl_config = tl.NextFrameConfig(0, ++timestamp);
-  tl.OnEncodeDone(0, timestamp, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // Encoder has a hiccup and builds a queue, so frame encoding is delayed.
-  // Encoded, but delayed frames in TL 1, 2.
-  tl_config = tl.NextFrameConfig(0, timestamp + 1);
-  tl_config = tl.NextFrameConfig(0, timestamp + 2);
-
-  // Restart of the pattern!
-
-  // Encoded, but delayed frames in TL 2, 1.
-  tl_config = tl.NextFrameConfig(0, timestamp + 3);
-  tl_config = tl.NextFrameConfig(0, timestamp + 4);
-
-  // TL1 frame from last cycle is ready.
-  tl.OnEncodeDone(0, timestamp + 1, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-  // TL2 frame from last cycle is ready.
-  tl.OnEncodeDone(0, timestamp + 2, kDefaultBytesPerFrame, false, kDefaultQp,
-                  IgnoredCodecSpecificInfo());
-
-  // TL2 frame, that should be referencing all buffers, but altref and golden
-  // haven not been updated this cycle. (Don't be fooled by the late frames from
-  // the last cycle!)
-  tl_config = tl.NextFrameConfig(0, timestamp + 5);
-  EXPECT_TRUE(tl_config.last_buffer_flags & BufferFlags::kReference);
-  EXPECT_FALSE(tl_config.golden_buffer_flags & BufferFlags::kReference);
-  EXPECT_FALSE(tl_config.arf_buffer_flags & BufferFlags::kReference);
-}
-
 TEST_F(TemporalLayersTest, KeyFrame) {
   constexpr int kNumLayers = 3;
   DefaultTemporalLayers tl(kNumLayers);
diff --git a/video/full_stack_tests.cc b/video/full_stack_tests.cc
index 5abfa92..892359f 100644
--- a/video/full_stack_tests.cc
+++ b/video/full_stack_tests.cc
@@ -649,56 +649,6 @@
   fixture->RunWithAnalyzer(conf_motion_hd);
 }
 
-TEST(FullStackTest, Conference_Motion_Hd_3tl_Alt_Moderate_Limits) {
-  test::ScopedFieldTrials field_trial(
-      AppendFieldTrials("WebRTC-UseShortVP8TL3Pattern/Enabled/"));
-  auto fixture = CreateVideoQualityTestFixture();
-  ParamsWithLogging conf_motion_hd;
-  conf_motion_hd.call.send_side_bwe = true;
-  conf_motion_hd.video[0] = {
-      true,    1280,
-      720,     50,
-      30000,   3000000,
-      3000000, false,
-      "VP8",   3,
-      -1,      0,
-      false,   false,
-      false,   ClipNameToClipPath("ConferenceMotion_1280_720_50")};
-  conf_motion_hd.analyzer = {"conference_motion_hd_3tl_alt_moderate_limits",
-                             0.0, 0.0, kFullStackTestDurationSecs};
-  conf_motion_hd.config->queue_length_packets = 50;
-  conf_motion_hd.config->loss_percent = 3;
-  conf_motion_hd.config->queue_delay_ms = 100;
-  conf_motion_hd.config->link_capacity_kbps = 2000;
-  fixture->RunWithAnalyzer(conf_motion_hd);
-}
-
-TEST(FullStackTest, Conference_Motion_Hd_3tl_Alt_Heavy_Moderate_Limits) {
-  auto fixture = CreateVideoQualityTestFixture();
-  test::ScopedFieldTrials field_trial(
-      AppendFieldTrials("WebRTC-UseShortVP8TL3Pattern/Enabled/"
-                        "WebRTC-UseBaseHeavyVP8TL3RateAllocation/Enabled/"));
-  ParamsWithLogging conf_motion_hd;
-  conf_motion_hd.call.send_side_bwe = true;
-  conf_motion_hd.video[0] = {
-      true,    1280,
-      720,     50,
-      30000,   3000000,
-      3000000, false,
-      "VP8",   3,
-      -1,      0,
-      false,   false,
-      false,   ClipNameToClipPath("ConferenceMotion_1280_720_50")};
-  conf_motion_hd.analyzer = {
-      "conference_motion_hd_3tl_alt_heavy_moderate_limits", 0.0, 0.0,
-      kFullStackTestDurationSecs};
-  conf_motion_hd.config->queue_length_packets = 50;
-  conf_motion_hd.config->loss_percent = 3;
-  conf_motion_hd.config->queue_delay_ms = 100;
-  conf_motion_hd.config->link_capacity_kbps = 2000;
-  fixture->RunWithAnalyzer(conf_motion_hd);
-}
-
 TEST(FullStackTest, Foreman_Cif_30kbps_AV1) {
   auto fixture = CreateVideoQualityTestFixture();
   ParamsWithLogging foreman_cif;
diff --git a/video/pc_full_stack_tests.cc b/video/pc_full_stack_tests.cc
index f423e4b..a4d3cda 100644
--- a/video/pc_full_stack_tests.cc
+++ b/video/pc_full_stack_tests.cc
@@ -914,58 +914,6 @@
   fixture->RunWithAnalyzer(conf_motion_hd);
 }
 
-// TODO(bugs.webrtc.org/10639) requires simulcast/SVC support in PC framework
-TEST(PCFullStackTest, ConferenceMotionHd3TLModerateLimitsAltTLPattern) {
-  test::ScopedFieldTrials field_trial(
-      AppendFieldTrials("WebRTC-UseShortVP8TL3Pattern/Enabled/"));
-  auto fixture = CreateVideoQualityTestFixture();
-  ParamsWithLogging conf_motion_hd;
-  conf_motion_hd.call.send_side_bwe = true;
-  conf_motion_hd.video[0] = {
-      true,    1280,
-      720,     50,
-      30000,   3000000,
-      3000000, false,
-      "VP8",   3,
-      -1,      0,
-      false,   false,
-      false,   ClipNameToClipPath("ConferenceMotion_1280_720_50")};
-  conf_motion_hd.analyzer = {"conference_motion_hd_3tl_alt_moderate_limits",
-                             0.0, 0.0, kTestDurationSec};
-  conf_motion_hd.config->queue_length_packets = 50;
-  conf_motion_hd.config->loss_percent = 3;
-  conf_motion_hd.config->queue_delay_ms = 100;
-  conf_motion_hd.config->link_capacity_kbps = 2000;
-  fixture->RunWithAnalyzer(conf_motion_hd);
-}
-
-// TODO(bugs.webrtc.org/10639) requires simulcast/SVC support in PC framework
-TEST(PCFullStackTest,
-     ConferenceMotionHd3TLModerateLimitsAltTLPatternAndBaseHeavyTLAllocation) {
-  auto fixture = CreateVideoQualityTestFixture();
-  test::ScopedFieldTrials field_trial(
-      AppendFieldTrials("WebRTC-UseShortVP8TL3Pattern/Enabled/"
-                        "WebRTC-UseBaseHeavyVP8TL3RateAllocation/Enabled/"));
-  ParamsWithLogging conf_motion_hd;
-  conf_motion_hd.call.send_side_bwe = true;
-  conf_motion_hd.video[0] = {
-      true,    1280,
-      720,     50,
-      30000,   3000000,
-      3000000, false,
-      "VP8",   3,
-      -1,      0,
-      false,   false,
-      false,   ClipNameToClipPath("ConferenceMotion_1280_720_50")};
-  conf_motion_hd.analyzer = {
-      "conference_motion_hd_3tl_alt_heavy_moderate_limits", 0.0, 0.0,
-      kTestDurationSec};
-  conf_motion_hd.config->queue_length_packets = 50;
-  conf_motion_hd.config->loss_percent = 3;
-  conf_motion_hd.config->queue_delay_ms = 100;
-  conf_motion_hd.config->link_capacity_kbps = 2000;
-  fixture->RunWithAnalyzer(conf_motion_hd);
-}
 */
 
 #if defined(RTC_ENABLE_VP9)