Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(663)

Unified Diff: webrtc/video_engine/vie_channel_group.cc

Issue 1241123002: Remove UpdateSsrcs from EncoderStateFeedback. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: empty SSRC vector handling Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/video_engine/vie_channel_group.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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..cb041bda2e250ae73c72ca822feff7848bdb4b22 100644
--- a/webrtc/video_engine/vie_channel_group.cc
+++ b/webrtc/video_engine/vie_channel_group.cc
@@ -193,9 +193,11 @@ 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);
+ // TODO(pbos): Remove checks for empty ssrcs and add this check when there's
+ // no base channel.
+ // 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,8 +207,8 @@ 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,
- disable_default_encoder)) {
+ vie_encoder.release(), ssrcs.empty() ? 1 : ssrcs.size(),
+ true, disable_default_encoder)) {
return false;
}
ViEChannel* channel = channel_map_[channel_id];
@@ -214,14 +216,11 @@ 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);
+ if (!ssrcs.empty()) {
+ encoder_state_feedback_->AddEncoder(ssrcs, encoder);
+ std::vector<uint32_t> first_ssrc(1, ssrcs[0]);
+ encoder->SetSsrcs(first_ssrc);
+ }
return true;
}
« no previous file with comments | « webrtc/video_engine/vie_channel_group.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698