| 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 51ef83cbcb86f2c5588aa205fe3a4c63ad9525b7..75865aec80371198a62881e4eace2f68a8e76648 100644
|
| --- a/webrtc/video_engine/vie_channel_group.cc
|
| +++ b/webrtc/video_engine/vie_channel_group.cc
|
| @@ -191,83 +191,10 @@ ChannelGroup::~ChannelGroup() {
|
| call_stats_->DeregisterStatsObserver(remote_bitrate_estimator_.get());
|
| if (transport_feedback_adapter_.get())
|
| call_stats_->DeregisterStatsObserver(transport_feedback_adapter_.get());
|
| - RTC_DCHECK(channel_map_.empty());
|
| RTC_DCHECK(!remb_->InUse());
|
| RTC_DCHECK(encoders_.empty());
|
| }
|
|
|
| -bool ChannelGroup::CreateReceiveChannel(
|
| - int channel_id,
|
| - Transport* transport,
|
| - int number_of_cores,
|
| - const VideoReceiveStream::Config& config) {
|
| - bool send_side_bwe = false;
|
| - for (const RtpExtension& extension : config.rtp.extensions) {
|
| - if (extension.name == RtpExtension::kTransportSequenceNumber) {
|
| - send_side_bwe = true;
|
| - break;
|
| - }
|
| - }
|
| -
|
| - RemoteBitrateEstimator* bitrate_estimator;
|
| - if (send_side_bwe) {
|
| - bitrate_estimator = remote_estimator_proxy_.get();
|
| - } else {
|
| - bitrate_estimator = remote_bitrate_estimator_.get();
|
| - }
|
| - return CreateChannel(channel_id, transport, number_of_cores, 1, false,
|
| - bitrate_estimator, nullptr);
|
| -}
|
| -
|
| -bool ChannelGroup::CreateChannel(int channel_id,
|
| - Transport* transport,
|
| - int number_of_cores,
|
| - size_t max_rtp_streams,
|
| - bool sender,
|
| - RemoteBitrateEstimator* bitrate_estimator,
|
| - TransportFeedbackObserver* feedback_observer) {
|
| - rtc::scoped_ptr<ViEChannel> channel(new ViEChannel(
|
| - number_of_cores, transport, process_thread_,
|
| - encoder_state_feedback_->GetRtcpIntraFrameObserver(),
|
| - bitrate_controller_->CreateRtcpBandwidthObserver(), feedback_observer,
|
| - bitrate_estimator, call_stats_->rtcp_rtt_stats(), pacer_.get(),
|
| - packet_router_.get(), max_rtp_streams, sender));
|
| - if (channel->Init() != 0) {
|
| - return false;
|
| - }
|
| -
|
| - // Register the channel to receive stats updates.
|
| - call_stats_->RegisterStatsObserver(channel->GetStatsObserver());
|
| -
|
| - // Store the channel and add it to the channel group.
|
| - channel_map_[channel_id] = channel.release();
|
| - return true;
|
| -}
|
| -
|
| -void ChannelGroup::DeleteChannel(int channel_id) {
|
| - ViEChannel* vie_channel = PopChannel(channel_id);
|
| -
|
| - call_stats_->DeregisterStatsObserver(vie_channel->GetStatsObserver());
|
| - SetChannelRembStatus(false, false, vie_channel);
|
| -
|
| - unsigned int remote_ssrc = vie_channel->GetRemoteSSRC();
|
| - channel_map_.erase(channel_id);
|
| - remote_bitrate_estimator_->RemoveStream(remote_ssrc);
|
| -
|
| - delete vie_channel;
|
| -
|
| - LOG(LS_VERBOSE) << "Channel deleted " << channel_id;
|
| -}
|
| -
|
| -ViEChannel* ChannelGroup::GetChannel(int channel_id) const {
|
| - ChannelMap::const_iterator it = channel_map_.find(channel_id);
|
| - if (it == channel_map_.end()) {
|
| - LOG(LS_ERROR) << "Channel doesn't exist " << channel_id;
|
| - return NULL;
|
| - }
|
| - return it->second;
|
| -}
|
| -
|
| void ChannelGroup::AddEncoder(const std::vector<uint32_t>& ssrcs,
|
| ViEEncoder* encoder) {
|
| encoder_state_feedback_->AddEncoder(ssrcs, encoder);
|
| @@ -286,20 +213,6 @@ void ChannelGroup::RemoveEncoder(ViEEncoder* encoder) {
|
| }
|
| }
|
|
|
| -ViEChannel* ChannelGroup::PopChannel(int channel_id) {
|
| - ChannelMap::iterator c_it = channel_map_.find(channel_id);
|
| - RTC_DCHECK(c_it != channel_map_.end());
|
| - ViEChannel* channel = c_it->second;
|
| - channel_map_.erase(c_it);
|
| -
|
| - return channel;
|
| -}
|
| -
|
| -void ChannelGroup::SetSyncInterface(VoEVideoSync* sync_interface) {
|
| - for (auto channel : channel_map_)
|
| - channel.second->SetVoiceChannel(-1, sync_interface);
|
| -}
|
| -
|
| void ChannelGroup::SetBweBitrates(int min_bitrate_bps,
|
| int start_bitrate_bps,
|
| int max_bitrate_bps) {
|
| @@ -318,8 +231,13 @@ BitrateController* ChannelGroup::GetBitrateController() const {
|
| return bitrate_controller_.get();
|
| }
|
|
|
| -RemoteBitrateEstimator* ChannelGroup::GetRemoteBitrateEstimator() const {
|
| - return remote_bitrate_estimator_.get();
|
| +RemoteBitrateEstimator* ChannelGroup::GetRemoteBitrateEstimator(
|
| + bool send_side_bwe) const {
|
| +
|
| + if (send_side_bwe)
|
| + return remote_estimator_proxy_.get();
|
| + else
|
| + return remote_bitrate_estimator_.get();
|
| }
|
|
|
| CallStats* ChannelGroup::GetCallStats() const {
|
|
|