Index: webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc |
diff --git a/webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc b/webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc |
index 7264541bb97a2b8e55ec6067818fabcb9bfbf2c5..f6dccf0dda10cd85605949a2cb6d294aef2ec832 100644 |
--- a/webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc |
+++ b/webrtc/modules/video_coding/utility/simulcast_rate_allocator.cc |
@@ -29,7 +29,7 @@ std::vector<uint32_t> webrtc::SimulcastRateAllocator::GetAllocation( |
if (codec_.maxBitrate) |
left_to_allocate = std::min(left_to_allocate, codec_.maxBitrate); |
- if (codec_.numberOfSimulcastStreams == 0) { |
+ if (codec_.numberOfSimulcastStreams < 2) { |
// No simulcast, just set the target as this has been capped already. |
return std::vector<uint32_t>(1, left_to_allocate); |
} |
@@ -65,6 +65,15 @@ std::vector<uint32_t> webrtc::SimulcastRateAllocator::GetAllocation( |
return allocated_bitrates_bps; |
} |
+uint32_t SimulcastRateAllocator::GetPreferedBitrate() const { |
+ std::vector<uint32_t> rates = GetAllocation(codec_.maxBitrate); |
+ uint32_t preferred_bitrate = 0; |
+ for (const uint32_t& rate : rates) { |
+ preferred_bitrate += rate; |
+ } |
+ return preferred_bitrate; |
+} |
+ |
const VideoCodec& webrtc::SimulcastRateAllocator::GetCodec() const { |
return codec_; |
} |