From 2058fee396cb5801d7b821d34a61101af4e84463 Mon Sep 17 00:00:00 2001 From: "pwestin@webrtc.org" Date: Wed, 14 Mar 2012 13:24:53 +0000 Subject: [PATCH] Change call order. Review URL: https://webrtc-codereview.appspot.com/451011 git-svn-id: http://webrtc.googlecode.com/svn/trunk@1887 4adac7df-926f-26a2-2b94-8c16560cd09d --- src/video_engine/vie_channel_manager.cc | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/video_engine/vie_channel_manager.cc b/src/video_engine/vie_channel_manager.cc index 208ce26319..d0fc416e0b 100644 --- a/src/video_engine/vie_channel_manager.cc +++ b/src/video_engine/vie_channel_manager.cc @@ -304,14 +304,9 @@ bool ViEChannelManager::CreateChannelObject(int channel_id, delete vie_channel; return false; } - - VideoCodec encoder; - vie_encoder->GetEncoder(encoder); - if (vie_channel->SetSendCodec(encoder) != 0) { - vie_encoder = NULL; - } - // Register the channel at the encoder. + // Need to call RegisterSendRtpRtcpModule before SetSendCodec since + // the SetSendCodec call use the default rtp/rtcp module. RtpRtcp* send_rtp_rtcp_module = vie_encoder->SendRtpRtcpModule(); if (vie_channel->RegisterSendRtpRtcpModule(*send_rtp_rtcp_module) != 0) { delete vie_channel; @@ -320,6 +315,12 @@ bool ViEChannelManager::CreateChannelObject(int channel_id, return false; } + VideoCodec encoder; + vie_encoder->GetEncoder(encoder); + if (vie_channel->SetSendCodec(encoder) != 0) { + vie_encoder = NULL; + } + // Store the channel, add it to the channel group and save the vie_encoder. channel_map_[channel_id] = vie_channel; vie_encoder_map_[channel_id] = vie_encoder;