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();
}