OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 664 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
675 | 675 |
676 UpdateAggregateNetworkState(); | 676 UpdateAggregateNetworkState(); |
677 delete send_stream_impl; | 677 delete send_stream_impl; |
678 } | 678 } |
679 | 679 |
680 webrtc::VideoReceiveStream* Call::CreateVideoReceiveStream( | 680 webrtc::VideoReceiveStream* Call::CreateVideoReceiveStream( |
681 webrtc::VideoReceiveStream::Config configuration) { | 681 webrtc::VideoReceiveStream::Config configuration) { |
682 TRACE_EVENT0("webrtc", "Call::CreateVideoReceiveStream"); | 682 TRACE_EVENT0("webrtc", "Call::CreateVideoReceiveStream"); |
683 RTC_DCHECK(configuration_thread_checker_.CalledOnValidThread()); | 683 RTC_DCHECK(configuration_thread_checker_.CalledOnValidThread()); |
684 | 684 |
685 bool protected_by_flexfec = false; | |
686 { | |
687 ReadLockScoped read_lock(*receive_crit_); | |
688 protected_by_flexfec = | |
689 flexfec_receive_ssrcs_media_.find(configuration.rtp.remote_ssrc) != | |
690 flexfec_receive_ssrcs_media_.end(); | |
691 } | |
692 VideoReceiveStream* receive_stream = new VideoReceiveStream( | 685 VideoReceiveStream* receive_stream = new VideoReceiveStream( |
693 num_cpu_cores_, protected_by_flexfec, | 686 num_cpu_cores_, &packet_router_, std::move(configuration), |
694 &packet_router_, std::move(configuration), module_process_thread_.get(), | 687 module_process_thread_.get(), call_stats_.get(), &remb_); |
695 call_stats_.get(), &remb_); | |
696 | 688 |
697 const webrtc::VideoReceiveStream::Config& config = receive_stream->config(); | 689 const webrtc::VideoReceiveStream::Config& config = receive_stream->config(); |
698 ReceiveRtpConfig receive_config(config.rtp.extensions, | 690 ReceiveRtpConfig receive_config(config.rtp.extensions, |
699 UseSendSideBwe(config)); | 691 UseSendSideBwe(config)); |
700 { | 692 { |
701 WriteLockScoped write_lock(*receive_crit_); | 693 WriteLockScoped write_lock(*receive_crit_); |
702 RTC_DCHECK(video_receive_ssrcs_.find(config.rtp.remote_ssrc) == | 694 RTC_DCHECK(video_receive_ssrcs_.find(config.rtp.remote_ssrc) == |
703 video_receive_ssrcs_.end()); | 695 video_receive_ssrcs_.end()); |
704 video_receive_ssrcs_[config.rtp.remote_ssrc] = receive_stream; | 696 video_receive_ssrcs_[config.rtp.remote_ssrc] = receive_stream; |
705 if (config.rtp.rtx_ssrc) { | 697 if (config.rtp.rtx_ssrc) { |
(...skipping 581 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1287 if (media_type != MediaType::AUDIO || | 1279 if (media_type != MediaType::AUDIO || |
1288 (use_send_side_bwe && header.extension.hasTransportSequenceNumber)) { | 1280 (use_send_side_bwe && header.extension.hasTransportSequenceNumber)) { |
1289 congestion_controller_->OnReceivedPacket( | 1281 congestion_controller_->OnReceivedPacket( |
1290 packet.arrival_time_ms(), packet.payload_size() + packet.padding_size(), | 1282 packet.arrival_time_ms(), packet.payload_size() + packet.padding_size(), |
1291 header); | 1283 header); |
1292 } | 1284 } |
1293 } | 1285 } |
1294 | 1286 |
1295 } // namespace internal | 1287 } // namespace internal |
1296 } // namespace webrtc | 1288 } // namespace webrtc |
OLD | NEW |