Chromium Code Reviews| Index: webrtc/modules/congestion_controller/transport_feedback_adapter.cc |
| diff --git a/webrtc/modules/congestion_controller/transport_feedback_adapter.cc b/webrtc/modules/congestion_controller/transport_feedback_adapter.cc |
| index fa27cc0b18ff7c054bfc0656bd14b2c0d9a16d5a..55b23e5959ba14399caf86585a98b274b6c5b0d7 100644 |
| --- a/webrtc/modules/congestion_controller/transport_feedback_adapter.cc |
| +++ b/webrtc/modules/congestion_controller/transport_feedback_adapter.cc |
| @@ -54,11 +54,17 @@ TransportFeedbackAdapter::TransportFeedbackAdapter( |
| clock_(clock), |
| current_offset_ms_(kNoTimestamp), |
| last_timestamp_us_(kNoTimestamp), |
| - bitrate_controller_(bitrate_controller) {} |
| + bitrate_controller_(bitrate_controller) { |
| + packetizer_thread_checker_.DetachFromThread(); |
| + module_process_thread_checker_.DetachFromThread(); |
| +} |
| -TransportFeedbackAdapter::~TransportFeedbackAdapter() {} |
| +TransportFeedbackAdapter::~TransportFeedbackAdapter() { |
| + RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| +} |
| void TransportFeedbackAdapter::InitBwe() { |
| + RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| rtc::CritScope cs(&bwe_lock_); |
| delay_based_bwe_.reset(new DelayBasedBwe(event_log_, clock_)); |
| } |
| @@ -66,6 +72,7 @@ void TransportFeedbackAdapter::InitBwe() { |
| void TransportFeedbackAdapter::AddPacket(uint16_t sequence_number, |
| size_t length, |
| const PacedPacketInfo& pacing_info) { |
| + RTC_DCHECK(packetizer_thread_checker_.CalledOnValidThread()); |
|
stefan-webrtc
2017/02/24 14:48:53
Maybe the value of this is small? WDYT?
elad.alon_webrtc.org
2017/02/27 10:55:30
Hard for me to say. It does make sure no one ever
|
| rtc::CritScope cs(&lock_); |
| if (send_side_bwe_with_overhead_) { |
| length += transport_overhead_bytes_per_packet_; |
| @@ -75,16 +82,19 @@ void TransportFeedbackAdapter::AddPacket(uint16_t sequence_number, |
| void TransportFeedbackAdapter::OnSentPacket(uint16_t sequence_number, |
| int64_t send_time_ms) { |
| + RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| rtc::CritScope cs(&lock_); |
| send_time_history_.OnSentPacket(sequence_number, send_time_ms); |
| } |
| void TransportFeedbackAdapter::SetStartBitrate(int start_bitrate_bps) { |
| + RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| rtc::CritScope cs(&bwe_lock_); |
| delay_based_bwe_->SetStartBitrate(start_bitrate_bps); |
| } |
| void TransportFeedbackAdapter::SetMinBitrate(int min_bitrate_bps) { |
| + RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| rtc::CritScope cs(&bwe_lock_); |
| delay_based_bwe_->SetMinBitrate(min_bitrate_bps); |
| } |
| @@ -102,6 +112,7 @@ int64_t TransportFeedbackAdapter::GetProbingIntervalMs() const { |
| std::vector<PacketInfo> TransportFeedbackAdapter::GetPacketFeedbackVector( |
| const rtcp::TransportFeedback& feedback) { |
| + RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| int64_t timestamp_us = feedback.GetBaseTimeUs(); |
| // Add timestamp deltas to a local time base selected on first packet arrival. |
| // This won't be the true time base, but makes it easier to manually inspect |
| @@ -155,6 +166,7 @@ std::vector<PacketInfo> TransportFeedbackAdapter::GetPacketFeedbackVector( |
| void TransportFeedbackAdapter::OnTransportFeedback( |
| const rtcp::TransportFeedback& feedback) { |
| + RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| last_packet_feedback_vector_ = GetPacketFeedbackVector(feedback); |
| DelayBasedBwe::Result result; |
| { |
| @@ -168,11 +180,13 @@ void TransportFeedbackAdapter::OnTransportFeedback( |
| std::vector<PacketInfo> TransportFeedbackAdapter::GetTransportFeedbackVector() |
| const { |
| + RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| return last_packet_feedback_vector_; |
| } |
| void TransportFeedbackAdapter::OnRttUpdate(int64_t avg_rtt_ms, |
| int64_t max_rtt_ms) { |
| + RTC_DCHECK(module_process_thread_checker_.CalledOnValidThread()); |
| rtc::CritScope cs(&bwe_lock_); |
| delay_based_bwe_->OnRttUpdate(avg_rtt_ms, max_rtt_ms); |
| } |