Index: webrtc/call/call.cc |
diff --git a/webrtc/call/call.cc b/webrtc/call/call.cc |
index ff5ebca0e205d557b32bcc61dce5dfd92c8973c9..43bf3d3305851ef46f7fed365c9cab22760bf213 100644 |
--- a/webrtc/call/call.cc |
+++ b/webrtc/call/call.cc |
@@ -202,6 +202,9 @@ class Call : public webrtc::Call, |
void SetBitrateConfigMask( |
const webrtc::Call::Config::BitrateConfigMask& bitrate_config) override; |
+ void SetBitrateAllocationStrategy( |
+ rtc::BitrateAllocationStrategy* bitrate_allocation_strategy) override; |
+ |
void SignalChannelNetworkState(MediaType media, NetworkState state) override; |
void OnTransportOverheadChanged(MediaType media, |
@@ -1011,6 +1014,18 @@ void Call::UpdateCurrentBitrateConfig(const rtc::Optional<int>& new_start) { |
config_.bitrate_config = updated; |
} |
+void Call::SetBitrateAllocationStrategy( |
+ rtc::BitrateAllocationStrategy* bitrate_allocation_strategy) { |
+ if (!worker_queue_.IsCurrent()) { |
+ worker_queue_.PostTask([this, bitrate_allocation_strategy] { |
+ SetBitrateAllocationStrategy(std::move(bitrate_allocation_strategy)); |
+ }); |
+ return; |
+ } |
+ RTC_DCHECK_RUN_ON(&worker_queue_); |
+ bitrate_allocator_->SetBitrateAllocationStrategy(bitrate_allocation_strategy); |
+} |
+ |
void Call::SignalChannelNetworkState(MediaType media, NetworkState state) { |
RTC_DCHECK_RUN_ON(&configuration_thread_checker_); |
switch (media) { |