| 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 408 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 419 return this; | 419 return this; |
| 420 } | 420 } |
| 421 | 421 |
| 422 webrtc::AudioSendStream* Call::CreateAudioSendStream( | 422 webrtc::AudioSendStream* Call::CreateAudioSendStream( |
| 423 const webrtc::AudioSendStream::Config& config) { | 423 const webrtc::AudioSendStream::Config& config) { |
| 424 TRACE_EVENT0("webrtc", "Call::CreateAudioSendStream"); | 424 TRACE_EVENT0("webrtc", "Call::CreateAudioSendStream"); |
| 425 RTC_DCHECK(configuration_thread_checker_.CalledOnValidThread()); | 425 RTC_DCHECK(configuration_thread_checker_.CalledOnValidThread()); |
| 426 event_log_->LogAudioSendStreamConfig(config); | 426 event_log_->LogAudioSendStreamConfig(config); |
| 427 AudioSendStream* send_stream = new AudioSendStream( | 427 AudioSendStream* send_stream = new AudioSendStream( |
| 428 config, config_.audio_state, &worker_queue_, &packet_router_, | 428 config, config_.audio_state, &worker_queue_, &packet_router_, |
| 429 congestion_controller_.get(), bitrate_allocator_.get(), event_log_); | 429 congestion_controller_.get(), bitrate_allocator_.get(), event_log_, |
| 430 call_stats_->rtcp_rtt_stats()); |
| 430 { | 431 { |
| 431 WriteLockScoped write_lock(*send_crit_); | 432 WriteLockScoped write_lock(*send_crit_); |
| 432 RTC_DCHECK(audio_send_ssrcs_.find(config.rtp.ssrc) == | 433 RTC_DCHECK(audio_send_ssrcs_.find(config.rtp.ssrc) == |
| 433 audio_send_ssrcs_.end()); | 434 audio_send_ssrcs_.end()); |
| 434 audio_send_ssrcs_[config.rtp.ssrc] = send_stream; | 435 audio_send_ssrcs_[config.rtp.ssrc] = send_stream; |
| 435 } | 436 } |
| 436 { | 437 { |
| 437 ReadLockScoped read_lock(*receive_crit_); | 438 ReadLockScoped read_lock(*receive_crit_); |
| 438 for (const auto& kv : audio_receive_ssrcs_) { | 439 for (const auto& kv : audio_receive_ssrcs_) { |
| 439 if (kv.second->config().rtp.local_ssrc == config.rtp.ssrc) { | 440 if (kv.second->config().rtp.local_ssrc == config.rtp.ssrc) { |
| (...skipping 682 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1122 uint32_t ssrc = ByteReader<uint32_t>::ReadBigEndian(&packet[8]); | 1123 uint32_t ssrc = ByteReader<uint32_t>::ReadBigEndian(&packet[8]); |
| 1123 ReadLockScoped read_lock(*receive_crit_); | 1124 ReadLockScoped read_lock(*receive_crit_); |
| 1124 auto it = video_receive_ssrcs_.find(ssrc); | 1125 auto it = video_receive_ssrcs_.find(ssrc); |
| 1125 if (it == video_receive_ssrcs_.end()) | 1126 if (it == video_receive_ssrcs_.end()) |
| 1126 return false; | 1127 return false; |
| 1127 return it->second->OnRecoveredPacket(packet, length); | 1128 return it->second->OnRecoveredPacket(packet, length); |
| 1128 } | 1129 } |
| 1129 | 1130 |
| 1130 } // namespace internal | 1131 } // namespace internal |
| 1131 } // namespace webrtc | 1132 } // namespace webrtc |
| OLD | NEW |