Update test::CreateVideoStreams to use the configured min bitrate if set.

VideoSendStreamTest.ReconfigureBitratesSetsEncoderBitratesCorrectly:
Configure min_bitrate_bps via VideoEncoderConfig (and remove
implementations of VideoStreamFactoryInterface used to override
the default min_bitrate_bps configuration).

Bug: none
Change-Id: I488f78d8d145b24fd65dd29fdc979e543fcb0b7c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/132798
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27711}
diff --git a/test/encoder_settings.cc b/test/encoder_settings.cc
index cc1994f..1673160 100644
--- a/test/encoder_settings.cc
+++ b/test/encoder_settings.cc
@@ -66,6 +66,10 @@
               : DefaultVideoStreamFactory::kMaxBitratePerStream[i];
       target_bitrate_bps = std::min(max_bitrate_bps, target_bitrate_bps);
 
+      if (stream.min_bitrate_bps > 0) {
+        RTC_DCHECK_LE(stream.min_bitrate_bps, target_bitrate_bps);
+        stream_settings[i].min_bitrate_bps = stream.min_bitrate_bps;
+      }
       if (stream.max_framerate > 0) {
         stream_settings[i].max_framerate = stream.max_framerate;
       }
diff --git a/video/video_send_stream_tests.cc b/video/video_send_stream_tests.cc
index 2338997..f461a10 100644
--- a/video/video_send_stream_tests.cc
+++ b/video/video_send_stream_tests.cc
@@ -27,7 +27,6 @@
 #include "modules/rtp_rtcp/source/rtp_format_vp9.h"
 #include "modules/video_coding/codecs/vp8/include/vp8.h"
 #include "modules/video_coding/codecs/vp9/include/vp9.h"
-#include "rtc_base/bind.h"
 #include "rtc_base/checks.h"
 #include "rtc_base/critical_section.h"
 #include "rtc_base/event.h"
@@ -2891,26 +2890,6 @@
       bitrate_config->max_bitrate_bps = kMaxBitrateKbps * 1000;
     }
 
-    class VideoStreamFactory
-        : public VideoEncoderConfig::VideoStreamFactoryInterface {
-     public:
-      explicit VideoStreamFactory(int min_bitrate_bps)
-          : min_bitrate_bps_(min_bitrate_bps) {}
-
-     private:
-      std::vector<VideoStream> CreateEncoderStreams(
-          int width,
-          int height,
-          const VideoEncoderConfig& encoder_config) override {
-        std::vector<VideoStream> streams =
-            test::CreateVideoStreams(width, height, encoder_config);
-        streams[0].min_bitrate_bps = min_bitrate_bps_;
-        return streams;
-      }
-
-      const int min_bitrate_bps_;
-    };
-
     void ModifyVideoConfigs(
         VideoSendStream::Config* send_config,
         std::vector<VideoReceiveStream::Config>* receive_configs,
@@ -2919,10 +2898,9 @@
       // Set bitrates lower/higher than min/max to make sure they are properly
       // capped.
       encoder_config->max_bitrate_bps = kMaxBitrateKbps * 1000;
-      // Create a new StreamFactory to be able to set
-      // |VideoStream.min_bitrate_bps|.
-      encoder_config->video_stream_factory =
-          new rtc::RefCountedObject<VideoStreamFactory>(kMinBitrateKbps * 1000);
+      EXPECT_EQ(1u, encoder_config->simulcast_layers.size());
+      encoder_config->simulcast_layers[0].min_bitrate_bps =
+          kMinBitrateKbps * 1000;
       encoder_config_ = encoder_config->Copy();
     }