summaryrefslogtreecommitdiff
path: root/video_engine/vie_channel_manager.cc
diff options
context:
space:
mode:
authorvikasmarwaha@webrtc.org <vikasmarwaha@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2012-10-24 22:35:52 +0000
committervikasmarwaha@webrtc.org <vikasmarwaha@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d>2012-10-24 22:35:52 +0000
commit9f269d2d33e102713402c4c6aa84ac65a590f719 (patch)
tree74c84f363a6ca4f7081596222b708966a4c90f29 /video_engine/vie_channel_manager.cc
parentf30eb66fc70eb8ecf68599fffc8be3baf63d3489 (diff)
downloadwebrtc-9f269d2d33e102713402c4c6aa84ac65a590f719.tar.gz
Reverse Merged r2884 & r2888 from trunk.
Review URL: https://webrtc-codereview.appspot.com/929005 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@2988 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'video_engine/vie_channel_manager.cc')
-rw-r--r--video_engine/vie_channel_manager.cc33
1 files changed, 6 insertions, 27 deletions
diff --git a/video_engine/vie_channel_manager.cc b/video_engine/vie_channel_manager.cc
index 9fabd8d4..be95b31a 100644
--- a/video_engine/vie_channel_manager.cc
+++ b/video_engine/vie_channel_manager.cc
@@ -121,12 +121,8 @@ int ViEChannelManager::CreateChannel(int* channel_id) {
// Add ViEEncoder to EncoderFeedBackObserver.
unsigned int ssrc = 0;
- int idx = 0;
- channel_map_[new_channel_id]->GetLocalSSRC(idx, &ssrc);
+ channel_map_[new_channel_id]->GetLocalSSRC(&ssrc);
encoder_state_feedback->AddEncoder(ssrc, vie_encoder);
- std::list<unsigned int> ssrcs;
- ssrcs.push_back(ssrc);
- vie_encoder->SetSsrcs(ssrcs);
*channel_id = new_channel_id;
group->AddChannel(*channel_id);
@@ -174,8 +170,7 @@ int ViEChannelManager::CreateChannel(int* channel_id,
}
// Register the ViEEncoder to get key frame requests for this channel.
unsigned int ssrc = 0;
- int stream_idx = 0;
- channel_map_[new_channel_id]->GetLocalSSRC(stream_idx, &ssrc);
+ channel_map_[new_channel_id]->GetLocalSSRC(&ssrc);
encoder_state_feedback->AddEncoder(ssrc, vie_encoder);
} else {
vie_encoder = ViEEncoderPtr(original_channel);
@@ -229,12 +224,14 @@ int ViEChannelManager::DeleteChannel(int channel_id) {
group = FindGroup(channel_id);
group->SetChannelRembStatus(channel_id, false, false, vie_channel,
vie_encoder);
- group->GetEncoderStateFeedback()->RemoveEncoder(vie_encoder);
-
unsigned int remote_ssrc = 0;
vie_channel->GetRemoteSSRC(&remote_ssrc);
group->RemoveChannel(channel_id, remote_ssrc);
+ unsigned int local_ssrc = 0;
+ vie_channel->GetLocalSSRC(&local_ssrc);
+ group->GetEncoderStateFeedback()->RemoveEncoder(local_ssrc);
+
// Check if other channels are using the same encoder.
if (ChannelUsingViEEncoder(channel_id)) {
vie_encoder = NULL;
@@ -373,24 +370,6 @@ bool ViEChannelManager::SetBandwidthEstimationMode(
return true;
}
-void ViEChannelManager::UpdateSsrcs(int channel_id,
- const std::list<unsigned int>& ssrcs) {
- CriticalSectionScoped cs(channel_id_critsect_);
- ChannelGroup* channel_group = FindGroup(channel_id);
- if (channel_group == NULL) {
- return;
- }
- ViEEncoder* encoder = ViEEncoderPtr(channel_id);
- assert(encoder);
-
- EncoderStateFeedback* encoder_state_feedback =
- channel_group->GetEncoderStateFeedback();
- for (std::list<unsigned int>::const_iterator it = ssrcs.begin();
- it != ssrcs.end(); ++it) {
- encoder_state_feedback->AddEncoder(*it, encoder);
- }
-}
-
bool ViEChannelManager::CreateChannelObject(
int channel_id,
ViEEncoder* vie_encoder,