From c3dfff3126e4756c573cc1bdb95b28c57d1a66d7 Mon Sep 17 00:00:00 2001 From: "elad.alon" Date: Thu, 26 Jan 2017 02:46:55 -0800 Subject: [PATCH] Avoid multiple calls to webrtc::field_trial::FindFullName in RTPSender; it's inefficient to perform string comparison whenever we send a packet. BUG=None Review-Url: https://codereview.webrtc.org/2637203002 Cr-Commit-Position: refs/heads/master@{#16291} --- webrtc/modules/rtp_rtcp/source/rtp_sender.cc | 8 +++++--- webrtc/modules/rtp_rtcp/source/rtp_sender.h | 2 ++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc index ae491209b7..add7c21e9b 100644 --- a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc +++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc @@ -123,7 +123,10 @@ RTPSender::RTPSender( rtx_(kRtxOff), rtp_overhead_bytes_per_packet_(0), retransmission_rate_limiter_(retransmission_rate_limiter), - overhead_observer_(overhead_observer) { + overhead_observer_(overhead_observer), + send_side_bwe_with_overhead_( + webrtc::field_trial::FindFullName( + "WebRTC-SendSideBwe-WithOverhead") == "Enabled") { ssrc_ = ssrc_db_->CreateSSRC(); RTC_DCHECK(ssrc_ != 0); ssrc_rtx_ = ssrc_db_->CreateSSRC(); @@ -1256,8 +1259,7 @@ void RTPSender::AddPacketToTransportFeedback(uint16_t packet_id, const RtpPacketToSend& packet, int probe_cluster_id) { size_t packet_size = packet.payload_size() + packet.padding_size(); - if (webrtc::field_trial::FindFullName("WebRTC-SendSideBwe-WithOverhead") == - "Enabled") { + if (send_side_bwe_with_overhead_) { packet_size = packet.size(); } diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender.h b/webrtc/modules/rtp_rtcp/source/rtp_sender.h index b70b6885e1..87326daa00 100644 --- a/webrtc/modules/rtp_rtcp/source/rtp_sender.h +++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.h @@ -327,6 +327,8 @@ class RTPSender { RateLimiter* const retransmission_rate_limiter_; OverheadObserver* overhead_observer_; + const bool send_side_bwe_with_overhead_; + RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(RTPSender); };