Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1819)

Unified Diff: webrtc/modules/rtp_rtcp/source/rtp_format_vp9_unittest.cc

Issue 2871173008: Fix packetization logic to leave space for extensions in the last packet (Closed)
Patch Set: Fix packet buffer allocations bugs and old tests with incorrect assumptions about extensions locati… Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/modules/rtp_rtcp/source/rtp_format_vp9_unittest.cc
diff --git a/webrtc/modules/rtp_rtcp/source/rtp_format_vp9_unittest.cc b/webrtc/modules/rtp_rtcp/source/rtp_format_vp9_unittest.cc
index c53a2ca5a2f112097060eca3b79af1077ecc4ea6..93f9768b91511ef9ab6d17538f7ab171e0bda66e 100644
--- a/webrtc/modules/rtp_rtcp/source/rtp_format_vp9_unittest.cc
+++ b/webrtc/modules/rtp_rtcp/source/rtp_format_vp9_unittest.cc
@@ -144,7 +144,7 @@ class RtpPacketizerVp9Test : public ::testing::Test {
memset(payload_.get(), 7, payload_size);
payload_size_ = payload_size;
payload_pos_ = 0;
- packetizer_.reset(new RtpPacketizerVp9(expected_, packet_size));
+ packetizer_.reset(new RtpPacketizerVp9(expected_, packet_size, 0));
packetizer_->SetPayloadData(payload_.get(), payload_size_, NULL);
}
@@ -162,24 +162,23 @@ class RtpPacketizerVp9Test : public ::testing::Test {
const size_t* expected_sizes,
size_t expected_num_packets) {
ASSERT_TRUE(packetizer_.get() != NULL);
- bool last = false;
if (expected_num_packets == 0) {
- EXPECT_FALSE(packetizer_->NextPacket(&packet_, &last));
+ EXPECT_FALSE(packetizer_->NextPacket(&packet_));
return;
}
+ EXPECT_EQ(expected_num_packets, packetizer_->TotalPackets());
for (size_t i = 0; i < expected_num_packets; ++i) {
- EXPECT_TRUE(packetizer_->NextPacket(&packet_, &last));
+ EXPECT_TRUE(packetizer_->NextPacket(&packet_));
auto rtp_payload = packet_.payload();
EXPECT_EQ(expected_sizes[i], rtp_payload.size());
RTPVideoHeaderVP9 hdr = expected_;
hdr.beginning_of_frame = (i == 0);
- hdr.end_of_frame = last;
+ hdr.end_of_frame = (i + 1) == expected_num_packets;
ParseAndCheckPacket(rtp_payload.data(), hdr, expected_hdr_sizes[i],
rtp_payload.size());
CheckPayload(rtp_payload.data(), expected_hdr_sizes[i],
- rtp_payload.size(), last);
+ rtp_payload.size(), (i + 1) == expected_num_packets);
}
- EXPECT_TRUE(last);
}
};
@@ -444,36 +443,32 @@ TEST_F(RtpPacketizerVp9Test, TestOnlyHighestSpatialLayerSetMarker) {
vp9_header.num_spatial_layers = 3;
RtpPacketToSend packet(kNoExtensions);
- bool last;
vp9_header.spatial_idx = 0;
- RtpPacketizerVp9 packetizer0(vp9_header, kPacketSize);
+ RtpPacketizerVp9 packetizer0(vp9_header, kPacketSize, 0);
packetizer0.SetPayloadData(kFrame, sizeof(kFrame), kNoFragmentation);
- ASSERT_TRUE(packetizer0.NextPacket(&packet, &last));
- EXPECT_FALSE(last);
+ EXPECT_EQ(packetizer0.TotalPackets(), 2u);
+ ASSERT_TRUE(packetizer0.NextPacket(&packet));
EXPECT_FALSE(packet.Marker());
- ASSERT_TRUE(packetizer0.NextPacket(&packet, &last));
- EXPECT_TRUE(last);
+ ASSERT_TRUE(packetizer0.NextPacket(&packet));
EXPECT_FALSE(packet.Marker());
vp9_header.spatial_idx = 1;
- RtpPacketizerVp9 packetizer1(vp9_header, kPacketSize);
+ RtpPacketizerVp9 packetizer1(vp9_header, kPacketSize, 0);
packetizer1.SetPayloadData(kFrame, sizeof(kFrame), kNoFragmentation);
- ASSERT_TRUE(packetizer1.NextPacket(&packet, &last));
- EXPECT_FALSE(last);
+ EXPECT_EQ(packetizer1.TotalPackets(), 2u);
+ ASSERT_TRUE(packetizer1.NextPacket(&packet));
EXPECT_FALSE(packet.Marker());
- ASSERT_TRUE(packetizer1.NextPacket(&packet, &last));
- EXPECT_TRUE(last);
+ ASSERT_TRUE(packetizer1.NextPacket(&packet));
EXPECT_FALSE(packet.Marker());
vp9_header.spatial_idx = 2;
- RtpPacketizerVp9 packetizer2(vp9_header, kPacketSize);
+ RtpPacketizerVp9 packetizer2(vp9_header, kPacketSize, 0);
packetizer2.SetPayloadData(kFrame, sizeof(kFrame), kNoFragmentation);
- ASSERT_TRUE(packetizer2.NextPacket(&packet, &last));
- EXPECT_FALSE(last);
+ EXPECT_EQ(packetizer2.TotalPackets(), 2u);
+ ASSERT_TRUE(packetizer2.NextPacket(&packet));
EXPECT_FALSE(packet.Marker());
- ASSERT_TRUE(packetizer2.NextPacket(&packet, &last));
- EXPECT_TRUE(last);
+ ASSERT_TRUE(packetizer2.NextPacket(&packet));
EXPECT_TRUE(packet.Marker());
}

Powered by Google App Engine
This is Rietveld 408576698