Cleanup static constants in modules/rtp_rtcp/
Change static const to static constexpr where applicable
In .cc files ensure static constants are in unnamed namespace
Remove obsolete declaration for class level constexpr values
Bug: None
Change-Id: I23759974b5042c8c9d9ec2816ee7df283a8872d4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364483
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Emil Lundmark <lndmrk@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43171}
diff --git a/modules/rtp_rtcp/source/packet_loss_stats.cc b/modules/rtp_rtcp/source/packet_loss_stats.cc
index 36f0a63..a55cf55 100644
--- a/modules/rtp_rtcp/source/packet_loss_stats.cc
+++ b/modules/rtp_rtcp/source/packet_loss_stats.cc
@@ -16,11 +16,14 @@
#include "rtc_base/checks.h"
+namespace webrtc {
+namespace {
+
// After this many packets are added, adding additional packets will cause the
// oldest packets to be pruned from the buffer.
-static const int kBufferSize = 100;
+constexpr int kBufferSize = 100;
-namespace webrtc {
+} // namespace
PacketLossStats::PacketLossStats()
: single_loss_historic_count_(0),
diff --git a/modules/rtp_rtcp/source/rtcp_packet.cc b/modules/rtp_rtcp/source/rtcp_packet.cc
index bac03e7..004e6fd 100644
--- a/modules/rtp_rtcp/source/rtcp_packet.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet.cc
@@ -15,7 +15,6 @@
namespace webrtc {
namespace rtcp {
-constexpr size_t RtcpPacket::kHeaderLength;
rtc::Buffer RtcpPacket::Build() const {
rtc::Buffer packet(BlockLength());
diff --git a/modules/rtp_rtcp/source/rtcp_packet/app.cc b/modules/rtp_rtcp/source/rtcp_packet/app.cc
index d5734c6..f90c84e 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/app.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/app.cc
@@ -21,8 +21,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t App::kPacketType;
-constexpr size_t App::kMaxDataSize;
// Application-Defined packet (APP) (RFC 3550).
//
// 0 1 2 3
diff --git a/modules/rtp_rtcp/source/rtcp_packet/bye.cc b/modules/rtp_rtcp/source/rtcp_packet/bye.cc
index a647177..1d6dff2 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/bye.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/bye.cc
@@ -23,7 +23,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t Bye::kPacketType;
// Bye packet (BYE) (RFC 3550).
//
// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
diff --git a/modules/rtp_rtcp/source/rtcp_packet/bye.h b/modules/rtp_rtcp/source/rtcp_packet/bye.h
index d312057..a3ee428 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/bye.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/bye.h
@@ -46,7 +46,8 @@
PacketReadyCallback callback) const override;
private:
- static const int kMaxNumberOfCsrcs = 0x1f - 1; // First item is sender SSRC.
+ static constexpr int kMaxNumberOfCsrcs =
+ 0x1f - 1; // First item is sender SSRC.
std::vector<uint32_t> csrcs_;
std::string reason_;
diff --git a/modules/rtp_rtcp/source/rtcp_packet/common_header.cc b/modules/rtp_rtcp/source/rtcp_packet/common_header.cc
index 5b54982..1d174a9 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/common_header.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/common_header.cc
@@ -15,7 +15,6 @@
namespace webrtc {
namespace rtcp {
-constexpr size_t CommonHeader::kHeaderSizeBytes;
// 0 1 1 2 3
// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
diff --git a/modules/rtp_rtcp/source/rtcp_packet/dlrr.h b/modules/rtp_rtcp/source/rtcp_packet/dlrr.h
index ad91dfd..d9c4123 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/dlrr.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/dlrr.h
@@ -42,7 +42,7 @@
// DLRR Report Block: Delay since the Last Receiver Report (RFC 3611).
class Dlrr {
public:
- static const uint8_t kBlockType = 5;
+ static constexpr uint8_t kBlockType = 5;
Dlrr();
Dlrr(const Dlrr& other);
@@ -70,8 +70,8 @@
const std::vector<ReceiveTimeInfo>& sub_blocks() const { return sub_blocks_; }
private:
- static const size_t kBlockHeaderLength = 4;
- static const size_t kSubBlockLength = 12;
+ static constexpr size_t kBlockHeaderLength = 4;
+ static constexpr size_t kSubBlockLength = 12;
std::vector<ReceiveTimeInfo> sub_blocks_;
};
diff --git a/modules/rtp_rtcp/source/rtcp_packet/extended_reports.cc b/modules/rtp_rtcp/source/rtcp_packet/extended_reports.cc
index 84a3a53..3967ead 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/extended_reports.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/extended_reports.cc
@@ -19,8 +19,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t ExtendedReports::kPacketType;
-constexpr size_t ExtendedReports::kMaxNumberOfDlrrItems;
// From RFC 3611: RTP Control Protocol Extended Reports (RTCP XR).
//
// Format for XR packets:
diff --git a/modules/rtp_rtcp/source/rtcp_packet/fir.cc b/modules/rtp_rtcp/source/rtcp_packet/fir.cc
index fd4a4c9..3405b81 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/fir.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/fir.cc
@@ -17,7 +17,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t Fir::kFeedbackMessageType;
// RFC 4585: Feedback format.
// Common packet format:
//
diff --git a/modules/rtp_rtcp/source/rtcp_packet/nack.cc b/modules/rtp_rtcp/source/rtcp_packet/nack.cc
index 6fe7ead..8b5c738 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/nack.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/nack.cc
@@ -21,8 +21,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t Nack::kFeedbackMessageType;
-constexpr size_t Nack::kNackItemLength;
// RFC 4585: Feedback format.
//
// Common packet format:
diff --git a/modules/rtp_rtcp/source/rtcp_packet/pli.cc b/modules/rtp_rtcp/source/rtcp_packet/pli.cc
index 5b41aa5..7366500 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/pli.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/pli.cc
@@ -16,7 +16,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t Pli::kFeedbackMessageType;
// RFC 4585: Feedback format.
//
// Common packet format:
diff --git a/modules/rtp_rtcp/source/rtcp_packet/psfb.cc b/modules/rtp_rtcp/source/rtcp_packet/psfb.cc
index 384d8ba..ebc05c6 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/psfb.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/psfb.cc
@@ -14,9 +14,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t Psfb::kPacketType;
-constexpr uint8_t Psfb::kAfbMessageType;
-constexpr size_t Psfb::kCommonFeedbackLength;
// RFC 4585: Feedback format.
//
// Common packet format:
diff --git a/modules/rtp_rtcp/source/rtcp_packet/rapid_resync_request.cc b/modules/rtp_rtcp/source/rtcp_packet/rapid_resync_request.cc
index 8563c28..e9ec8cf 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/rapid_resync_request.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/rapid_resync_request.cc
@@ -16,7 +16,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t RapidResyncRequest::kFeedbackMessageType;
// RFC 4585: Feedback format.
// Rapid Resynchronisation Request (draft-perkins-avt-rapid-rtp-sync-03).
//
diff --git a/modules/rtp_rtcp/source/rtcp_packet/receiver_report.cc b/modules/rtp_rtcp/source/rtcp_packet/receiver_report.cc
index 185011d..baebbed 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/receiver_report.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/receiver_report.cc
@@ -19,8 +19,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t ReceiverReport::kPacketType;
-constexpr size_t ReceiverReport::kMaxNumberOfReportBlocks;
// RTCP receiver report (RFC 3550).
//
// 0 1 2 3
diff --git a/modules/rtp_rtcp/source/rtcp_packet/receiver_report.h b/modules/rtp_rtcp/source/rtcp_packet/receiver_report.h
index b9c1c46..4ea4126 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/receiver_report.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/receiver_report.h
@@ -50,7 +50,7 @@
PacketReadyCallback callback) const override;
private:
- static const size_t kRrBaseLength = 4;
+ static constexpr size_t kRrBaseLength = 4;
std::vector<ReportBlock> report_blocks_;
};
diff --git a/modules/rtp_rtcp/source/rtcp_packet/report_block.h b/modules/rtp_rtcp/source/rtcp_packet/report_block.h
index b49219e..9c94411 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/report_block.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/report_block.h
@@ -22,7 +22,7 @@
// RFC 3550 section 6.4.1.
class ReportBlock {
public:
- static const size_t kLength = 24;
+ static constexpr size_t kLength = 24;
ReportBlock();
~ReportBlock() {}
diff --git a/modules/rtp_rtcp/source/rtcp_packet/rrtr.h b/modules/rtp_rtcp/source/rtcp_packet/rrtr.h
index 827bd74..47ac35c 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/rrtr.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/rrtr.h
@@ -22,9 +22,9 @@
class Rrtr {
public:
- static const uint8_t kBlockType = 4;
- static const uint16_t kBlockLength = 2;
- static const size_t kLength = 4 * (kBlockLength + 1); // 12
+ static constexpr uint8_t kBlockType = 4;
+ static constexpr uint16_t kBlockLength = 2;
+ static constexpr size_t kLength = 4 * (kBlockLength + 1); // 12
Rrtr() {}
Rrtr(const Rrtr&) = default;
diff --git a/modules/rtp_rtcp/source/rtcp_packet/rtpfb.cc b/modules/rtp_rtcp/source/rtcp_packet/rtpfb.cc
index 18097de..968c50f 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/rtpfb.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/rtpfb.cc
@@ -14,7 +14,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t Rtpfb::kPacketType;
// RFC 4585, Section 6.1: Feedback format.
//
// Common packet format:
diff --git a/modules/rtp_rtcp/source/rtcp_packet/sdes.cc b/modules/rtp_rtcp/source/rtcp_packet/sdes.cc
index f244ec5..f9432e9 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/sdes.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/sdes.cc
@@ -22,8 +22,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t Sdes::kPacketType;
-constexpr size_t Sdes::kMaxNumberOfChunks;
// Source Description (SDES) (RFC 3550).
//
// 0 1 2 3
diff --git a/modules/rtp_rtcp/source/rtcp_packet/sender_report.cc b/modules/rtp_rtcp/source/rtcp_packet/sender_report.cc
index 7373837..6986343 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/sender_report.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/sender_report.cc
@@ -19,9 +19,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t SenderReport::kPacketType;
-constexpr size_t SenderReport::kMaxNumberOfReportBlocks;
-constexpr size_t SenderReport::kSenderBaseLength;
// Sender report (SR) (RFC 3550).
// 0 1 2 3
// 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
diff --git a/modules/rtp_rtcp/source/rtcp_packet/target_bitrate.cc b/modules/rtp_rtcp/source/rtcp_packet/target_bitrate.cc
index 601b24f..c0e8a12 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/target_bitrate.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/target_bitrate.cc
@@ -16,9 +16,11 @@
namespace webrtc {
namespace rtcp {
+namespace {
+
constexpr size_t kTargetBitrateHeaderSizeBytes = 4;
-constexpr uint8_t TargetBitrate::kBlockType;
-const size_t TargetBitrate::kBitrateItemSizeBytes = 4;
+
+} // namespace
TargetBitrate::BitrateItem::BitrateItem()
: spatial_layer(0), temporal_layer(0), target_bitrate_kbps(0) {}
diff --git a/modules/rtp_rtcp/source/rtcp_packet/target_bitrate.h b/modules/rtp_rtcp/source/rtcp_packet/target_bitrate.h
index 07e5da1..5e0f1ca 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/target_bitrate.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/target_bitrate.h
@@ -24,7 +24,7 @@
// TODO(sprang): This block type is just a place holder. We need to get an
// id assigned by IANA.
static constexpr uint8_t kBlockType = 42;
- static const size_t kBitrateItemSizeBytes;
+ static constexpr size_t kBitrateItemSizeBytes = 4;
struct BitrateItem {
BitrateItem();
diff --git a/modules/rtp_rtcp/source/rtcp_packet/tmmb_item.h b/modules/rtp_rtcp/source/rtcp_packet/tmmb_item.h
index dc5d1b2..6156ffa 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/tmmb_item.h
+++ b/modules/rtp_rtcp/source/rtcp_packet/tmmb_item.h
@@ -21,7 +21,7 @@
// Used both by TMMBR and TMMBN rtcp packets.
class TmmbItem {
public:
- static const size_t kLength = 8;
+ static constexpr size_t kLength = 8;
TmmbItem() : ssrc_(0), bitrate_bps_(0), packet_overhead_(0) {}
TmmbItem(uint32_t ssrc, uint64_t bitrate_bps, uint16_t overhead);
diff --git a/modules/rtp_rtcp/source/rtcp_packet/tmmbn.cc b/modules/rtp_rtcp/source/rtcp_packet/tmmbn.cc
index f57e574..751c0e6 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/tmmbn.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/tmmbn.cc
@@ -16,7 +16,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t Tmmbn::kFeedbackMessageType;
// RFC 4585: Feedback format.
// Common packet format:
//
diff --git a/modules/rtp_rtcp/source/rtcp_packet/tmmbr.cc b/modules/rtp_rtcp/source/rtcp_packet/tmmbr.cc
index 9dc745e..94e4ded 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/tmmbr.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/tmmbr.cc
@@ -16,7 +16,6 @@
namespace webrtc {
namespace rtcp {
-constexpr uint8_t Tmmbr::kFeedbackMessageType;
// RFC 4585: Feedback format.
// Common packet format:
//
diff --git a/modules/rtp_rtcp/source/rtcp_packet/transport_feedback.cc b/modules/rtp_rtcp/source/rtcp_packet/transport_feedback.cc
index 049c317..29de7d8 100644
--- a/modules/rtp_rtcp/source/rtcp_packet/transport_feedback.cc
+++ b/modules/rtp_rtcp/source/rtcp_packet/transport_feedback.cc
@@ -73,13 +73,6 @@
// | recv delta | recv delta | zero padding |
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
} // namespace
-constexpr uint8_t TransportFeedback::kFeedbackMessageType;
-constexpr size_t TransportFeedback::kMaxReportedPackets;
-
-constexpr size_t TransportFeedback::LastChunk::kMaxRunLengthCapacity;
-constexpr size_t TransportFeedback::LastChunk::kMaxOneBitCapacity;
-constexpr size_t TransportFeedback::LastChunk::kMaxTwoBitCapacity;
-constexpr size_t TransportFeedback::LastChunk::kMaxVectorCapacity;
TransportFeedback::LastChunk::LastChunk() {
Clear();
diff --git a/modules/rtp_rtcp/source/rtcp_receiver.cc b/modules/rtp_rtcp/source/rtcp_receiver.cc
index 9e5a2e1..a4ea1b0 100644
--- a/modules/rtp_rtcp/source/rtcp_receiver.cc
+++ b/modules/rtp_rtcp/source/rtcp_receiver.cc
@@ -107,8 +107,6 @@
} // namespace
-constexpr size_t RTCPReceiver::RegisteredSsrcs::kMediaSsrcIndex;
-
RTCPReceiver::RegisteredSsrcs::RegisteredSsrcs(
bool disable_sequence_checker,
const RtpRtcpInterface::Configuration& config)
diff --git a/modules/rtp_rtcp/source/rtcp_sender_unittest.cc b/modules/rtp_rtcp/source/rtcp_sender_unittest.cc
index 3a77df5..7485508 100644
--- a/modules/rtp_rtcp/source/rtcp_sender_unittest.cc
+++ b/modules/rtp_rtcp/source/rtcp_sender_unittest.cc
@@ -49,6 +49,9 @@
#include "test/mock_transport.h"
#include "test/rtcp_packet_parser.h"
+namespace webrtc {
+namespace {
+
using ::testing::_;
using ::testing::ElementsAre;
using ::testing::Eq;
@@ -56,8 +59,6 @@
using ::testing::Property;
using ::testing::SizeIs;
-namespace webrtc {
-
class RtcpPacketTypeCounterObserverImpl : public RtcpPacketTypeCounterObserver {
public:
RtcpPacketTypeCounterObserverImpl() : ssrc_(0) {}
@@ -87,12 +88,10 @@
test::RtcpPacketParser parser_;
};
-namespace {
-static const uint32_t kSenderSsrc = 0x11111111;
-static const uint32_t kRemoteSsrc = 0x22222222;
-static const uint32_t kStartRtpTimestamp = 0x34567;
-static const uint32_t kRtpTimestamp = 0x45678;
-} // namespace
+constexpr uint32_t kSenderSsrc = 0x11111111;
+constexpr uint32_t kRemoteSsrc = 0x22222222;
+constexpr uint32_t kStartRtpTimestamp = 0x34567;
+constexpr uint32_t kRtpTimestamp = 0x45678;
class RtcpSenderTest : public ::testing::Test {
protected:
@@ -856,4 +855,5 @@
EXPECT_EQ(parser()->app()->sender_ssrc(), kSenderSsrc);
}
+} // namespace
} // namespace webrtc
diff --git a/modules/rtp_rtcp/source/rtp_dependency_descriptor_extension.cc b/modules/rtp_rtcp/source/rtp_dependency_descriptor_extension.cc
index 5d61e66..c1a4517 100644
--- a/modules/rtp_rtcp/source/rtp_dependency_descriptor_extension.cc
+++ b/modules/rtp_rtcp/source/rtp_dependency_descriptor_extension.cc
@@ -22,9 +22,6 @@
namespace webrtc {
-constexpr RTPExtensionType RtpDependencyDescriptorExtension::kId;
-constexpr std::bitset<32> RtpDependencyDescriptorExtension::kAllChainsAreActive;
-
bool RtpDependencyDescriptorExtension::Parse(
rtc::ArrayView<const uint8_t> data,
const FrameDependencyStructure* structure,
diff --git a/modules/rtp_rtcp/source/rtp_fec_unittest.cc b/modules/rtp_rtcp/source/rtp_fec_unittest.cc
index 7e5aef7..f6bd15c 100644
--- a/modules/rtp_rtcp/source/rtp_fec_unittest.cc
+++ b/modules/rtp_rtcp/source/rtp_fec_unittest.cc
@@ -173,7 +173,7 @@
class FlexfecForwardErrorCorrection : public ForwardErrorCorrection {
public:
- static const uint32_t kFecSsrc = kFlexfecSsrc;
+ static constexpr uint32_t kFecSsrc = kFlexfecSsrc;
FlexfecForwardErrorCorrection()
: ForwardErrorCorrection(
@@ -192,7 +192,7 @@
class UlpfecForwardErrorCorrection : public ForwardErrorCorrection {
public:
- static const uint32_t kFecSsrc = kMediaSsrc;
+ static constexpr uint32_t kFecSsrc = kMediaSsrc;
UlpfecForwardErrorCorrection()
: ForwardErrorCorrection(
diff --git a/modules/rtp_rtcp/source/rtp_format_h264.cc b/modules/rtp_rtcp/source/rtp_format_h264.cc
index 917cb1b..e3dba0b 100644
--- a/modules/rtp_rtcp/source/rtp_format_h264.cc
+++ b/modules/rtp_rtcp/source/rtp_format_h264.cc
@@ -34,9 +34,9 @@
namespace webrtc {
namespace {
-static const size_t kNalHeaderSize = 1;
-static const size_t kFuAHeaderSize = 2;
-static const size_t kLengthFieldSize = 2;
+constexpr size_t kNalHeaderSize = 1;
+constexpr size_t kFuAHeaderSize = 2;
+constexpr size_t kLengthFieldSize = 2;
} // namespace
diff --git a/modules/rtp_rtcp/source/rtp_format_h264_unittest.cc b/modules/rtp_rtcp/source/rtp_format_h264_unittest.cc
index 3920c4a..8f9f1a9 100644
--- a/modules/rtp_rtcp/source/rtp_format_h264_unittest.cc
+++ b/modules/rtp_rtcp/source/rtp_format_h264_unittest.cc
@@ -47,8 +47,8 @@
kFuA = 28
};
-static const size_t kNalHeaderSize = 1;
-static const size_t kFuAHeaderSize = 2;
+constexpr size_t kNalHeaderSize = 1;
+constexpr size_t kFuAHeaderSize = 2;
// Creates Buffer that looks like nal unit of given size.
rtc::Buffer GenerateNalUnit(size_t size) {
diff --git a/modules/rtp_rtcp/source/rtp_format_video_generic.cc b/modules/rtp_rtcp/source/rtp_format_video_generic.cc
index d91e6b4..56a11aa 100644
--- a/modules/rtp_rtcp/source/rtp_format_video_generic.cc
+++ b/modules/rtp_rtcp/source/rtp_format_video_generic.cc
@@ -19,9 +19,12 @@
#include "rtc_base/logging.h"
namespace webrtc {
+namespace {
-static const size_t kGenericHeaderLength = 1;
-static const size_t kExtendedHeaderLength = 2;
+constexpr size_t kGenericHeaderLength = 1;
+constexpr size_t kExtendedHeaderLength = 2;
+
+} // namespace
RtpPacketizerGeneric::RtpPacketizerGeneric(
rtc::ArrayView<const uint8_t> payload,
diff --git a/modules/rtp_rtcp/source/rtp_format_video_generic.h b/modules/rtp_rtcp/source/rtp_format_video_generic.h
index fd44bd1..0ebaac8 100644
--- a/modules/rtp_rtcp/source/rtp_format_video_generic.h
+++ b/modules/rtp_rtcp/source/rtp_format_video_generic.h
@@ -23,11 +23,11 @@
struct RTPVideoHeader;
namespace RtpFormatVideoGeneric {
-static const uint8_t kKeyFrameBit = 0x01;
-static const uint8_t kFirstPacketBit = 0x02;
+inline constexpr uint8_t kKeyFrameBit = 0x01;
+inline constexpr uint8_t kFirstPacketBit = 0x02;
// If this bit is set, there will be an extended header contained in this
// packet. This was added later so old clients will not send this.
-static const uint8_t kExtendedHeaderBit = 0x04;
+inline constexpr uint8_t kExtendedHeaderBit = 0x04;
} // namespace RtpFormatVideoGeneric
class RtpPacketizerGeneric : public RtpPacketizer {
diff --git a/modules/rtp_rtcp/source/rtp_generic_frame_descriptor.cc b/modules/rtp_rtcp/source/rtp_generic_frame_descriptor.cc
index 465308e..207b2a9 100644
--- a/modules/rtp_rtcp/source/rtp_generic_frame_descriptor.cc
+++ b/modules/rtp_rtcp/source/rtp_generic_frame_descriptor.cc
@@ -16,10 +16,6 @@
namespace webrtc {
-constexpr int RtpGenericFrameDescriptor::kMaxNumFrameDependencies;
-constexpr int RtpGenericFrameDescriptor::kMaxTemporalLayers;
-constexpr int RtpGenericFrameDescriptor::kMaxSpatialLayers;
-
RtpGenericFrameDescriptor::RtpGenericFrameDescriptor() = default;
RtpGenericFrameDescriptor::RtpGenericFrameDescriptor(
const RtpGenericFrameDescriptor&) = default;
diff --git a/modules/rtp_rtcp/source/rtp_generic_frame_descriptor_extension.cc b/modules/rtp_rtcp/source/rtp_generic_frame_descriptor_extension.cc
index 8a0810f..c4bb492 100644
--- a/modules/rtp_rtcp/source/rtp_generic_frame_descriptor_extension.cc
+++ b/modules/rtp_rtcp/source/rtp_generic_frame_descriptor_extension.cc
@@ -56,7 +56,6 @@
// +---------------+
// | ... |
// +-+-+-+-+-+-+-+-+
-constexpr RTPExtensionType RtpGenericFrameDescriptorExtension00::kId;
bool RtpGenericFrameDescriptorExtension00::Parse(
rtc::ArrayView<const uint8_t> data,
diff --git a/modules/rtp_rtcp/source/rtp_header_extension_map.cc b/modules/rtp_rtcp/source/rtp_header_extension_map.cc
index 6b5ee60..dc9ae41 100644
--- a/modules/rtp_rtcp/source/rtp_header_extension_map.cc
+++ b/modules/rtp_rtcp/source/rtp_header_extension_map.cc
@@ -70,9 +70,6 @@
} // namespace
-constexpr RTPExtensionType RtpHeaderExtensionMap::kInvalidType;
-constexpr int RtpHeaderExtensionMap::kInvalidId;
-
RtpHeaderExtensionMap::RtpHeaderExtensionMap() : RtpHeaderExtensionMap(false) {}
RtpHeaderExtensionMap::RtpHeaderExtensionMap(bool extmap_allow_mixed)
diff --git a/modules/rtp_rtcp/source/rtp_packet_history_unittest.cc b/modules/rtp_rtcp/source/rtp_packet_history_unittest.cc
index 13febf3..8378231 100644
--- a/modules/rtp_rtcp/source/rtp_packet_history_unittest.cc
+++ b/modules/rtp_rtcp/source/rtp_packet_history_unittest.cc
@@ -160,7 +160,7 @@
}
TEST_P(RtpPacketHistoryTest, MinResendTime) {
- static const TimeDelta kMinRetransmitInterval = TimeDelta::Millis(100);
+ static constexpr TimeDelta kMinRetransmitInterval = TimeDelta::Millis(100);
hist_.SetStorePacketsStatus(StorageMode::kStoreAndCull, 10);
hist_.SetRtt(kMinRetransmitInterval);
diff --git a/modules/rtp_rtcp/source/rtp_video_layers_allocation_extension.cc b/modules/rtp_rtcp/source/rtp_video_layers_allocation_extension.cc
index 6b86ee5..c361539 100644
--- a/modules/rtp_rtcp/source/rtp_video_layers_allocation_extension.cc
+++ b/modules/rtp_rtcp/source/rtp_video_layers_allocation_extension.cc
@@ -20,9 +20,6 @@
#include "rtc_base/checks.h"
namespace webrtc {
-
-constexpr RTPExtensionType RtpVideoLayersAllocationExtension::kId;
-
namespace {
constexpr int kMaxNumRtpStreams = 4;