diff options
author | solenberg@webrtc.org <solenberg@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> | 2014-03-26 14:32:47 +0000 |
---|---|---|
committer | solenberg@webrtc.org <solenberg@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> | 2014-03-26 14:32:47 +0000 |
commit | 2f0c5f796148eba014cd90b0d080ccd6a4761fd3 (patch) | |
tree | 416eff5139ba472b21082995c22d5f0c452e72f7 /video_engine/vie_channel_manager.cc | |
parent | 9511bbddf90d6cd4e1449da8c75c1e267415fb1a (diff) | |
download | webrtc-2f0c5f796148eba014cd90b0d080ccd6a4761fd3.tar.gz |
Add API to allow deducting bitrate from incoming estimates before the capacity is distributed among outgoing video streams. For example, this can be used to reserve space for audio streams.
BUG=
R=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/10499004
git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@5791 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'video_engine/vie_channel_manager.cc')
-rw-r--r-- | video_engine/vie_channel_manager.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/video_engine/vie_channel_manager.cc b/video_engine/vie_channel_manager.cc index 746cb258..2e838724 100644 --- a/video_engine/vie_channel_manager.cc +++ b/video_engine/vie_channel_manager.cc @@ -368,6 +368,19 @@ bool ViEChannelManager::SetRembStatus(int channel_id, bool sender, return group->SetChannelRembStatus(channel_id, sender, receiver, channel); } +bool ViEChannelManager::SetReservedTransmitBitrate( + int channel_id, uint32_t reserved_transmit_bitrate_bps) { + CriticalSectionScoped cs(channel_id_critsect_); + ChannelGroup* group = FindGroup(channel_id); + if (!group) { + return false; + } + + BitrateController* bitrate_controller = group->GetBitrateController(); + bitrate_controller->SetReservedBitrate(reserved_transmit_bitrate_bps); + return true; +} + void ViEChannelManager::UpdateSsrcs(int channel_id, const std::list<unsigned int>& ssrcs) { CriticalSectionScoped cs(channel_id_critsect_); |