Cleanup unused field trial WebRTC-Bwe-PaceAtMaxOfBweAndLowerLinkCapacity

Bug: webrtc:42220543
Change-Id: I7c4551fbdf68e52391c7ba02ca73c216ec6c5137
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/385160
Reviewed-by: Diep Bui <diepbp@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Auto-Submit: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#44333}
diff --git a/experiments/field_trials.py b/experiments/field_trials.py
index 470a12a..3ca7029 100755
--- a/experiments/field_trials.py
+++ b/experiments/field_trials.py
@@ -562,9 +562,6 @@
     FieldTrial('WebRTC-Bwe-NoFeedbackReset',
                42234928,
                date(2024, 4, 1)),
-    FieldTrial('WebRTC-Bwe-PaceAtMaxOfBweAndLowerLinkCapacity',
-               NO_BUG,
-               date(2024, 4, 1)),
     FieldTrial('WebRTC-Bwe-ProbingBehavior',
                42220440,
                date(2024, 4, 1)),
@@ -899,7 +896,7 @@
 ])  # yapf: disable
 
 POLICY_EXEMPT_FIELD_TRIALS_DIGEST: str = \
-    '936929707bc1d3db75b6702394ca3b69ef328410'
+    'e10a1af33d0a4cf81a6dc87d963b82cf6092ada3'
 
 REGISTERED_FIELD_TRIALS: FrozenSet[FieldTrial] = ACTIVE_FIELD_TRIALS.union(
     POLICY_EXEMPT_FIELD_TRIALS)
diff --git a/modules/congestion_controller/goog_cc/goog_cc_network_control.cc b/modules/congestion_controller/goog_cc/goog_cc_network_control.cc
index 11f5f58..a50a9b6 100644
--- a/modules/congestion_controller/goog_cc/goog_cc_network_control.cc
+++ b/modules/congestion_controller/goog_cc/goog_cc_network_control.cc
@@ -105,8 +105,6 @@
           !env_.field_trials().IsDisabled(
               "WebRTC-Bwe-LimitProbesLowerThanThroughputEstimate")),
       rate_control_settings_(env_.field_trials()),
-      pace_at_max_of_bwe_and_lower_link_capacity_(env_.field_trials().IsEnabled(
-          "WebRTC-Bwe-PaceAtMaxOfBweAndLowerLinkCapacity")),
       limit_pacingfactor_by_upper_link_capacity_estimate_(
           env_.field_trials().IsEnabled(
               "WebRTC-Bwe-LimitPacingFactorByUpperLinkCapacityEstimate")),
@@ -711,18 +709,10 @@
 PacerConfig GoogCcNetworkController::GetPacingRates(Timestamp at_time) const {
   // Pacing rate is based on target rate before congestion window pushback,
   // because we don't want to build queues in the pacer when pushback occurs.
-  DataRate pacing_rate = DataRate::Zero();
-  if (pace_at_max_of_bwe_and_lower_link_capacity_ && estimate_ &&
-      !bandwidth_estimation_->PaceAtLossBasedEstimate()) {
-    pacing_rate =
-        std::max({min_total_allocated_bitrate_, estimate_->link_capacity_lower,
-                  last_loss_based_target_rate_}) *
-        pacing_factor_;
-  } else {
-    pacing_rate =
-        std::max(min_total_allocated_bitrate_, last_loss_based_target_rate_) *
-        pacing_factor_;
-  }
+  DataRate pacing_rate =
+      std::max(min_total_allocated_bitrate_, last_loss_based_target_rate_) *
+      pacing_factor_;
+
   if (limit_pacingfactor_by_upper_link_capacity_estimate_ && estimate_ &&
       estimate_->link_capacity_upper.IsFinite() &&
       pacing_rate > estimate_->link_capacity_upper) {
diff --git a/modules/congestion_controller/goog_cc/goog_cc_network_control.h b/modules/congestion_controller/goog_cc/goog_cc_network_control.h
index 7e7fe07..46d1cab 100644
--- a/modules/congestion_controller/goog_cc/goog_cc_network_control.h
+++ b/modules/congestion_controller/goog_cc/goog_cc_network_control.h
@@ -93,7 +93,6 @@
   const bool ignore_probes_lower_than_network_estimate_;
   const bool limit_probes_lower_than_throughput_estimate_;
   const RateControlSettings rate_control_settings_;
-  const bool pace_at_max_of_bwe_and_lower_link_capacity_;
   const bool limit_pacingfactor_by_upper_link_capacity_estimate_;
 
   const std::unique_ptr<ProbeController> probe_controller_;
diff --git a/modules/congestion_controller/goog_cc/goog_cc_network_control_unittest.cc b/modules/congestion_controller/goog_cc/goog_cc_network_control_unittest.cc
index e9e4568..abe9a9b 100644
--- a/modules/congestion_controller/goog_cc/goog_cc_network_control_unittest.cc
+++ b/modules/congestion_controller/goog_cc/goog_cc_network_control_unittest.cc
@@ -438,58 +438,6 @@
   EXPECT_LT(*target_bitrate_after_delay, *target_bitrate_before_delay);
 }
 
-TEST(GoogCcNetworkControllerTest, PaceAtMaxOfLowerLinkCapacityAndBwe) {
-  ScopedFieldTrials trial(
-      "WebRTC-Bwe-PaceAtMaxOfBweAndLowerLinkCapacity/Enabled/");
-  NetworkControllerTestFixture fixture;
-  std::unique_ptr<NetworkControllerInterface> controller =
-      fixture.CreateController();
-  Timestamp current_time = Timestamp::Millis(123);
-  NetworkControlUpdate update = controller->OnNetworkAvailability(
-      {.at_time = current_time, .network_available = true});
-  update = controller->OnProcessInterval({.at_time = current_time});
-  current_time += TimeDelta::Millis(100);
-  NetworkStateEstimate network_estimate = {.link_capacity_lower =
-                                               10 * kInitialBitrate};
-  update = controller->OnNetworkStateEstimate(network_estimate);
-  // OnNetworkStateEstimate does not trigger processing a new estimate. So add a
-  // dummy loss report to trigger a BWE update in the next process interval.
-  TransportLossReport loss_report;
-  loss_report.start_time = current_time;
-  loss_report.end_time = current_time;
-  loss_report.receive_time = current_time;
-  loss_report.packets_received_delta = 50;
-  loss_report.packets_lost_delta = 1;
-  update = controller->OnTransportLossReport(loss_report);
-  update = controller->OnProcessInterval({.at_time = current_time});
-  ASSERT_TRUE(update.pacer_config);
-  ASSERT_TRUE(update.target_rate);
-  ASSERT_LT(update.target_rate->target_rate,
-            network_estimate.link_capacity_lower);
-  EXPECT_EQ(update.pacer_config->data_rate().kbps(),
-            network_estimate.link_capacity_lower.kbps() * kDefaultPacingRate);
-
-  current_time += TimeDelta::Millis(100);
-  // Set a low link capacity estimate and verify that pacing rate is set
-  // relative to loss based/delay based estimate.
-  network_estimate = {.link_capacity_lower = 0.5 * kInitialBitrate};
-  update = controller->OnNetworkStateEstimate(network_estimate);
-  // Again, we need to inject a dummy loss report to trigger an update of the
-  // BWE in the next process interval.
-  loss_report.start_time = current_time;
-  loss_report.end_time = current_time;
-  loss_report.receive_time = current_time;
-  loss_report.packets_received_delta = 50;
-  loss_report.packets_lost_delta = 0;
-  update = controller->OnTransportLossReport(loss_report);
-  update = controller->OnProcessInterval({.at_time = current_time});
-  ASSERT_TRUE(update.target_rate);
-  ASSERT_GT(update.target_rate->target_rate,
-            network_estimate.link_capacity_lower);
-  EXPECT_EQ(update.pacer_config->data_rate().kbps(),
-            update.target_rate->target_rate.kbps() * kDefaultPacingRate);
-}
-
 TEST(GoogCcNetworkControllerTest, LimitPacingFactorToUpperLinkCapacity) {
   ScopedFieldTrials trial(
       "WebRTC-Bwe-LimitPacingFactorByUpperLinkCapacityEstimate/Enabled/");