Replace RTC_DCHECK by RTC_DCHECK_RUN_ON for worker thread.
Enabled use of RTC_GUARDED_BY on members.
Bug: webrtc:9801
Change-Id: Id09176e2053f59ae55cfd7236e6d93d3f81636d5
Reviewed-on: https://webrtc-review.googlesource.com/c/111380
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25695}
diff --git a/audio/channel_send.cc b/audio/channel_send.cc
index 001fd6c..715c93f 100644
--- a/audio/channel_send.cc
+++ b/audio/channel_send.cc
@@ -247,7 +247,7 @@
rtc::CriticalSection _callbackCritSect;
rtc::CriticalSection volume_settings_critsect_;
- bool sending_ = false;
+ bool sending_ RTC_GUARDED_BY(&worker_thread_checker_) = false;
RtcEventLog* const event_log_;
@@ -794,7 +794,7 @@
}
void ChannelSend::StartSend() {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
RTC_DCHECK(!sending_);
sending_ = true;
@@ -814,7 +814,7 @@
}
void ChannelSend::StopSend() {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
if (!sending_) {
return;
}
@@ -856,7 +856,7 @@
bool ChannelSend::SetEncoder(int payload_type,
std::unique_ptr<AudioEncoder> encoder) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
RTC_DCHECK_GE(payload_type, 0);
RTC_DCHECK_LE(payload_type, 127);
// TODO(ossu): Make CodecInsts up, for now: one for the RTP/RTCP module and
@@ -900,7 +900,7 @@
void ChannelSend::ModifyEncoder(
rtc::FunctionView<void(std::unique_ptr<AudioEncoder>*)> modifier) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
audio_coding_->ModifyEncoder(modifier);
}
@@ -928,7 +928,7 @@
}
void ChannelSend::OnTwccBasedUplinkPacketLossRate(float packet_loss_rate) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
if (!use_twcc_plr_for_ana_)
return;
audio_coding_->ModifyEncoder([&](std::unique_ptr<AudioEncoder>* encoder) {
@@ -940,7 +940,7 @@
void ChannelSend::OnRecoverableUplinkPacketLossRate(
float recoverable_packet_loss_rate) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
audio_coding_->ModifyEncoder([&](std::unique_ptr<AudioEncoder>* encoder) {
if (*encoder) {
(*encoder)->OnReceivedUplinkRecoverablePacketLossFraction(
@@ -960,7 +960,7 @@
}
void ChannelSend::RegisterTransport(Transport* transport) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
rtc::CritScope cs(&_callbackCritSect);
_transportPtr = transport;
}
@@ -996,7 +996,7 @@
}
void ChannelSend::SetInputMute(bool enable) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
rtc::CritScope cs(&volume_settings_critsect_);
input_mute_ = enable;
}
@@ -1007,7 +1007,7 @@
}
bool ChannelSend::SendTelephoneEventOutband(int event, int duration_ms) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
RTC_DCHECK_LE(0, event);
RTC_DCHECK_GE(255, event);
RTC_DCHECK_LE(0, duration_ms);
@@ -1025,7 +1025,7 @@
bool ChannelSend::SetSendTelephoneEventPayloadType(int payload_type,
int payload_frequency) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
RTC_DCHECK_LE(0, payload_type);
RTC_DCHECK_GE(127, payload_type);
CodecInst codec = {0};
@@ -1045,7 +1045,7 @@
}
void ChannelSend::SetLocalSSRC(uint32_t ssrc) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
RTC_DCHECK(!sending_);
if (media_transport_) {
@@ -1056,26 +1056,26 @@
}
void ChannelSend::SetMid(const std::string& mid, int extension_id) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
int ret = SetSendRtpHeaderExtension(true, kRtpExtensionMid, extension_id);
RTC_DCHECK_EQ(0, ret);
_rtpRtcpModule->SetMid(mid);
}
void ChannelSend::SetExtmapAllowMixed(bool extmap_allow_mixed) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
_rtpRtcpModule->SetExtmapAllowMixed(extmap_allow_mixed);
}
void ChannelSend::SetSendAudioLevelIndicationStatus(bool enable, int id) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
_includeAudioLevelIndication = enable;
int ret = SetSendRtpHeaderExtension(enable, kRtpExtensionAudioLevel, id);
RTC_DCHECK_EQ(0, ret);
}
void ChannelSend::EnableSendTransportSequenceNumber(int id) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
int ret =
SetSendRtpHeaderExtension(true, kRtpExtensionTransportSequenceNumber, id);
RTC_DCHECK_EQ(0, ret);
@@ -1084,7 +1084,7 @@
void ChannelSend::RegisterSenderCongestionControlObjects(
RtpTransportControllerSendInterface* transport,
RtcpBandwidthObserver* bandwidth_observer) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
RtpPacketSender* rtp_packet_sender = transport->packet_sender();
TransportFeedbackObserver* transport_feedback_observer =
transport->transport_feedback_observer();
@@ -1106,7 +1106,7 @@
}
void ChannelSend::ResetSenderCongestionControlObjects() {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
RTC_DCHECK(packet_router_);
_rtpRtcpModule->SetStorePacketsStatus(false, 600);
rtcp_observer_->SetBandwidthObserver(nullptr);
@@ -1118,7 +1118,7 @@
}
void ChannelSend::SetRTCP_CNAME(absl::string_view c_name) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
// Note: SetCNAME() accepts a c string of length at most 255.
const std::string c_name_limited(c_name.substr(0, 255));
int ret = _rtpRtcpModule->SetCNAME(c_name_limited.c_str()) != 0;
@@ -1126,7 +1126,7 @@
}
std::vector<ReportBlock> ChannelSend::GetRemoteRTCPReportBlocks() const {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
// Get the report blocks from the latest received RTCP Sender or Receiver
// Report. Each element in the vector contains the sender's SSRC and a
// report block according to RFC 3550.
@@ -1155,7 +1155,7 @@
}
CallSendStatistics ChannelSend::GetRTCPStatistics() const {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
CallSendStatistics stats = {0};
stats.rttMs = GetRTT();
@@ -1175,7 +1175,7 @@
}
void ChannelSend::SetNACKStatus(bool enable, int max_packets) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
// None of these functions can fail.
if (enable)
audio_coding_->EnableNack(max_packets);
@@ -1256,7 +1256,7 @@
}
void ChannelSend::SetTransportOverhead(size_t transport_overhead_per_packet) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
rtc::CritScope cs(&overhead_per_packet_lock_);
transport_overhead_per_packet_ = transport_overhead_per_packet;
UpdateOverheadForEncoder();
@@ -1270,7 +1270,7 @@
}
ANAStats ChannelSend::GetANAStatistics() const {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
return audio_coding_->GetANAStats();
}
@@ -1343,7 +1343,7 @@
void ChannelSend::SetFrameEncryptor(
rtc::scoped_refptr<FrameEncryptorInterface> frame_encryptor) {
- RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
+ RTC_DCHECK_RUN_ON(&worker_thread_checker_);
rtc::CritScope cs(&encoder_queue_lock_);
if (encoder_queue_is_active_) {
encoder_queue_->PostTask([this, frame_encryptor]() {