Merge RtpPacket HasExtension and IsExtensionReserved functions
RtpPacket doesn't keep difference between reserved and set extension.
Bug: None
Change-Id: I1c79f4ebd7ba20ae5da0194c3faa418050db7d8e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/166340
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30316}
diff --git a/modules/pacing/packet_router.cc b/modules/pacing/packet_router.cc
index 32df525..fa64331 100644
--- a/modules/pacing/packet_router.cc
+++ b/modules/pacing/packet_router.cc
@@ -139,7 +139,7 @@
rtc::CritScope cs(&modules_crit_);
// With the new pacer code path, transport sequence numbers are only set here,
// on the pacer thread. Therefore we don't need atomics/synchronization.
- if (packet->IsExtensionReserved<TransportSequenceNumber>()) {
+ if (packet->HasExtension<TransportSequenceNumber>()) {
packet->SetExtension<TransportSequenceNumber>((++transport_seq_) & 0xFFFF);
}
diff --git a/modules/rtp_rtcp/source/rtp_packet.cc b/modules/rtp_rtcp/source/rtp_packet.cc
index 8ca232b..5643828 100644
--- a/modules/rtp_rtcp/source/rtp_packet.cc
+++ b/modules/rtp_rtcp/source/rtp_packet.cc
@@ -618,11 +618,6 @@
}
bool RtpPacket::HasExtension(ExtensionType type) const {
- // TODO(webrtc:7990): Add support for empty extensions (length==0).
- return !FindExtension(type).empty();
-}
-
-bool RtpPacket::IsExtensionReserved(ExtensionType type) const {
uint8_t id = extensions_.GetId(type);
if (id == ExtensionManager::kInvalidId) {
// Extension not registered.
diff --git a/modules/rtp_rtcp/source/rtp_packet.h b/modules/rtp_rtcp/source/rtp_packet.h
index 862399f..809af0c 100644
--- a/modules/rtp_rtcp/source/rtp_packet.h
+++ b/modules/rtp_rtcp/source/rtp_packet.h
@@ -112,10 +112,6 @@
bool HasExtension() const;
bool HasExtension(ExtensionType type) const;
- template <typename Extension>
- bool IsExtensionReserved() const;
- bool IsExtensionReserved(ExtensionType type) const;
-
template <typename Extension, typename FirstValue, typename... Values>
bool GetExtension(FirstValue, Values...) const;
@@ -207,11 +203,6 @@
return HasExtension(Extension::kId);
}
-template <typename Extension>
-bool RtpPacket::IsExtensionReserved() const {
- return IsExtensionReserved(Extension::kId);
-}
-
template <typename Extension, typename FirstValue, typename... Values>
bool RtpPacket::GetExtension(FirstValue first, Values... values) const {
auto raw = FindExtension(Extension::kId);
diff --git a/modules/rtp_rtcp/source/rtp_packet_unittest.cc b/modules/rtp_rtcp/source/rtp_packet_unittest.cc
index 3f9fcd1..1bb4358 100644
--- a/modules/rtp_rtcp/source/rtp_packet_unittest.cc
+++ b/modules/rtp_rtcp/source/rtp_packet_unittest.cc
@@ -996,7 +996,7 @@
kFeedbackRequest->sequence_count);
}
-TEST(RtpPacketTest, IsExtensionReserved) {
+TEST(RtpPacketTest, ReservedExtensionsCountedAsSetExtension) {
// Register two extensions.
RtpPacketToSend::ExtensionManager extensions;
extensions.Register<TransmissionOffset>(kTransmissionOffsetExtensionId);
@@ -1011,9 +1011,9 @@
// Only the extension that is both registered and reserved matches
// IsExtensionReserved().
- EXPECT_FALSE(packet.IsExtensionReserved<VideoContentTypeExtension>());
- EXPECT_FALSE(packet.IsExtensionReserved<AudioLevel>());
- EXPECT_TRUE(packet.IsExtensionReserved<TransmissionOffset>());
+ EXPECT_FALSE(packet.HasExtension<VideoContentTypeExtension>());
+ EXPECT_FALSE(packet.HasExtension<AudioLevel>());
+ EXPECT_TRUE(packet.HasExtension<TransmissionOffset>());
}
// Tests that RtpPacket::RemoveExtension can successfully remove extensions.
diff --git a/modules/rtp_rtcp/source/rtp_sender_egress.cc b/modules/rtp_rtcp/source/rtp_sender_egress.cc
index b602eb6..2244927 100644
--- a/modules/rtp_rtcp/source/rtp_sender_egress.cc
+++ b/modules/rtp_rtcp/source/rtp_sender_egress.cc
@@ -124,10 +124,10 @@
// data after rtp header may be corrupted if these packets are protected by
// the FEC.
int64_t diff_ms = now_ms - packet->capture_time_ms();
- if (packet->IsExtensionReserved<TransmissionOffset>()) {
+ if (packet->HasExtension<TransmissionOffset>()) {
packet->SetExtension<TransmissionOffset>(kTimestampTicksPerMs * diff_ms);
}
- if (packet->IsExtensionReserved<AbsoluteSendTime>()) {
+ if (packet->HasExtension<AbsoluteSendTime>()) {
packet->SetExtension<AbsoluteSendTime>(
AbsoluteSendTime::MsTo24Bits(now_ms));
}
diff --git a/modules/rtp_rtcp/source/rtp_sender_unittest.cc b/modules/rtp_rtcp/source/rtp_sender_unittest.cc
index 25b7c56..5ca4e70 100644
--- a/modules/rtp_rtcp/source/rtp_sender_unittest.cc
+++ b/modules/rtp_rtcp/source/rtp_sender_unittest.cc
@@ -2239,9 +2239,9 @@
EXPECT_EQ(padding_packet->Ssrc(), kRtxSsrc);
EXPECT_EQ(padding_packet->payload_size(),
kPayloadPacketSize + kRtxHeaderSize);
- EXPECT_TRUE(padding_packet->IsExtensionReserved<TransportSequenceNumber>());
- EXPECT_TRUE(padding_packet->IsExtensionReserved<AbsoluteSendTime>());
- EXPECT_TRUE(padding_packet->IsExtensionReserved<TransmissionOffset>());
+ EXPECT_TRUE(padding_packet->HasExtension<TransportSequenceNumber>());
+ EXPECT_TRUE(padding_packet->HasExtension<AbsoluteSendTime>());
+ EXPECT_TRUE(padding_packet->HasExtension<TransmissionOffset>());
// Verify all header extensions are received.
rtp_egress()->SendPacket(padding_packet.get(), PacedPacketInfo());
@@ -2265,9 +2265,9 @@
EXPECT_GT(packet->padding_size(), 0u);
padding_bytes_generated += packet->padding_size();
- EXPECT_TRUE(packet->IsExtensionReserved<TransportSequenceNumber>());
- EXPECT_TRUE(packet->IsExtensionReserved<AbsoluteSendTime>());
- EXPECT_TRUE(packet->IsExtensionReserved<TransmissionOffset>());
+ EXPECT_TRUE(packet->HasExtension<TransportSequenceNumber>());
+ EXPECT_TRUE(packet->HasExtension<AbsoluteSendTime>());
+ EXPECT_TRUE(packet->HasExtension<TransmissionOffset>());
// Verify all header extensions are received.
rtp_egress()->SendPacket(packet.get(), PacedPacketInfo());
@@ -2323,9 +2323,9 @@
EXPECT_EQ(packet->payload_size(), 0u);
EXPECT_GT(packet->padding_size(), 0u);
padding_bytes_generated += packet->padding_size();
- EXPECT_TRUE(packet->IsExtensionReserved<TransportSequenceNumber>());
- EXPECT_TRUE(packet->IsExtensionReserved<AbsoluteSendTime>());
- EXPECT_TRUE(packet->IsExtensionReserved<TransmissionOffset>());
+ EXPECT_TRUE(packet->HasExtension<TransportSequenceNumber>());
+ EXPECT_TRUE(packet->HasExtension<AbsoluteSendTime>());
+ EXPECT_TRUE(packet->HasExtension<TransmissionOffset>());
// Verify all header extensions are received.
rtp_egress()->SendPacket(packet.get(), PacedPacketInfo());