| 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 844 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 855 // TODO(brandtr): Store config in RtcEventLog here. | 855 // TODO(brandtr): Store config in RtcEventLog here. |
| 856 | 856 |
| 857 return receive_stream; | 857 return receive_stream; |
| 858 } | 858 } |
| 859 | 859 |
| 860 void Call::DestroyFlexfecReceiveStream(FlexfecReceiveStream* receive_stream) { | 860 void Call::DestroyFlexfecReceiveStream(FlexfecReceiveStream* receive_stream) { |
| 861 TRACE_EVENT0("webrtc", "Call::DestroyFlexfecReceiveStream"); | 861 TRACE_EVENT0("webrtc", "Call::DestroyFlexfecReceiveStream"); |
| 862 RTC_DCHECK_RUN_ON(&configuration_thread_checker_); | 862 RTC_DCHECK_RUN_ON(&configuration_thread_checker_); |
| 863 | 863 |
| 864 RTC_DCHECK(receive_stream != nullptr); | 864 RTC_DCHECK(receive_stream != nullptr); |
| 865 // There exist no other derived classes of FlexfecReceiveStream, | |
| 866 // so this downcast is safe. | |
| 867 FlexfecReceiveStreamImpl* receive_stream_impl = | |
| 868 static_cast<FlexfecReceiveStreamImpl*>(receive_stream); | |
| 869 { | 865 { |
| 870 WriteLockScoped write_lock(*receive_crit_); | 866 WriteLockScoped write_lock(*receive_crit_); |
| 871 | 867 |
| 872 const FlexfecReceiveStream::Config& config = | 868 const FlexfecReceiveStream::Config& config = receive_stream->GetConfig(); |
| 873 receive_stream_impl->GetConfig(); | |
| 874 uint32_t ssrc = config.remote_ssrc; | 869 uint32_t ssrc = config.remote_ssrc; |
| 875 receive_rtp_config_.erase(ssrc); | 870 receive_rtp_config_.erase(ssrc); |
| 876 | 871 |
| 877 // Remove all SSRCs pointing to the FlexfecReceiveStreamImpl to be | 872 // Remove all SSRCs pointing to the FlexfecReceiveStreamImpl to be |
| 878 // destroyed. | 873 // destroyed. |
| 879 receive_side_cc_.GetRemoteBitrateEstimator(UseSendSideBwe(config)) | 874 receive_side_cc_.GetRemoteBitrateEstimator(UseSendSideBwe(config)) |
| 880 ->RemoveStream(ssrc); | 875 ->RemoveStream(ssrc); |
| 881 } | 876 } |
| 882 | 877 |
| 883 delete receive_stream_impl; | 878 delete receive_stream; |
| 884 } | 879 } |
| 885 | 880 |
| 886 Call::Stats Call::GetStats() const { | 881 Call::Stats Call::GetStats() const { |
| 887 // TODO(solenberg): Some test cases in EndToEndTest use this from a different | 882 // TODO(solenberg): Some test cases in EndToEndTest use this from a different |
| 888 // thread. Re-enable once that is fixed. | 883 // thread. Re-enable once that is fixed. |
| 889 // RTC_DCHECK_RUN_ON(&configuration_thread_checker_); | 884 // RTC_DCHECK_RUN_ON(&configuration_thread_checker_); |
| 890 Stats stats; | 885 Stats stats; |
| 891 // Fetch available send/receive bitrates. | 886 // Fetch available send/receive bitrates. |
| 892 uint32_t send_bandwidth = 0; | 887 uint32_t send_bandwidth = 0; |
| 893 transport_send_->send_side_cc()->GetBitrateController()->AvailableBandwidth( | 888 transport_send_->send_side_cc()->GetBitrateController()->AvailableBandwidth( |
| (...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1383 (use_send_side_bwe && header.extension.hasTransportSequenceNumber)) { | 1378 (use_send_side_bwe && header.extension.hasTransportSequenceNumber)) { |
| 1384 receive_side_cc_.OnReceivedPacket( | 1379 receive_side_cc_.OnReceivedPacket( |
| 1385 packet.arrival_time_ms(), packet.payload_size() + packet.padding_size(), | 1380 packet.arrival_time_ms(), packet.payload_size() + packet.padding_size(), |
| 1386 header); | 1381 header); |
| 1387 } | 1382 } |
| 1388 } | 1383 } |
| 1389 | 1384 |
| 1390 } // namespace internal | 1385 } // namespace internal |
| 1391 | 1386 |
| 1392 } // namespace webrtc | 1387 } // namespace webrtc |
| OLD | NEW |