Index: webrtc/video_engine/vie_channel_group.cc |
diff --git a/webrtc/video_engine/vie_channel_group.cc b/webrtc/video_engine/vie_channel_group.cc |
index 055e1c3a19553e011744323dae5fc7aea7280fa6..9d9001ce95970f179adfb6d29ebcc080bb691641 100644 |
--- a/webrtc/video_engine/vie_channel_group.cc |
+++ b/webrtc/video_engine/vie_channel_group.cc |
@@ -193,9 +193,9 @@ bool ChannelGroup::CreateSendChannel(int channel_id, |
int engine_id, |
Transport* transport, |
int number_of_cores, |
- size_t max_rtp_streams, |
+ const std::vector<uint32_t>& ssrcs, |
bool disable_default_encoder) { |
- DCHECK_GT(max_rtp_streams, 0u); |
+ DCHECK(!ssrcs.empty()); |
rtc::scoped_ptr<ViEEncoder> vie_encoder( |
new ViEEncoder(channel_id, number_of_cores, *config_.get(), |
*process_thread_, pacer_.get(), bitrate_allocator_.get(), |
@@ -205,7 +205,7 @@ bool ChannelGroup::CreateSendChannel(int channel_id, |
} |
ViEEncoder* encoder = vie_encoder.get(); |
if (!CreateChannel(channel_id, engine_id, transport, number_of_cores, |
- vie_encoder.release(), max_rtp_streams, true, |
+ vie_encoder.release(), ssrcs.size(), true, |
disable_default_encoder)) { |
return false; |
} |
@@ -214,14 +214,9 @@ bool ChannelGroup::CreateSendChannel(int channel_id, |
encoder->StartThreadsAndSetSharedMembers(channel->send_payload_router(), |
channel->vcm_protection_callback()); |
- // Register the ViEEncoder to get key frame requests for this channel. |
- unsigned int ssrc = 0; |
- int stream_idx = 0; |
- channel->GetLocalSSRC(stream_idx, &ssrc); |
- encoder_state_feedback_->AddEncoder(ssrc, encoder); |
- std::vector<uint32_t> ssrcs; |
- ssrcs.push_back(ssrc); |
- encoder->SetSsrcs(ssrcs); |
+ encoder_state_feedback_->AddEncoder(ssrcs, encoder); |
+ std::vector<uint32_t> first_ssrc(1, ssrcs[0]); |
+ encoder->SetSsrcs(first_ssrc); |
return true; |
} |