| Index: webrtc/modules/rtp_rtcp/source/rtp_format_vp8_unittest.cc
|
| diff --git a/webrtc/modules/rtp_rtcp/source/rtp_format_vp8_unittest.cc b/webrtc/modules/rtp_rtcp/source/rtp_format_vp8_unittest.cc
|
| index 0e1a474e35a47b8af7988b77214651b6090546ee..c042016c1a0fd79a3e7ce226f8eaff6dcbbbb98d 100644
|
| --- a/webrtc/modules/rtp_rtcp/source/rtp_format_vp8_unittest.cc
|
| +++ b/webrtc/modules/rtp_rtcp/source/rtp_format_vp8_unittest.cc
|
| @@ -107,19 +107,19 @@ TEST_F(RtpPacketizerVp8Test, TestStrictMode) {
|
|
|
| hdr_info_.pictureId = 200; // > 0x7F should produce 2-byte PictureID.
|
| const size_t kMaxPayloadSize = 13;
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kStrict);
|
| - packetizer.SetPayloadData(helper_->payload_data(),
|
| - helper_->payload_size(),
|
| - helper_->fragmentation());
|
| -
|
| - // The expected sizes are obtained by running a verified good implementation.
|
| - const size_t kExpectedSizes[] = {9, 9, 12, 11, 11, 11, 10};
|
| - const int kExpectedPart[] = {0, 0, 1, 2, 2, 2, 2};
|
| - const bool kExpectedFragStart[] = {true, false, true, true,
|
| - false, false, false};
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kStrict);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
| +
|
| + // The expected sizes are obtained by hand.
|
| + const size_t kExpectedSizes[] = {9, 9, 12, 13, 13, 13};
|
| + const int kExpectedPart[] = {0, 0, 1, 2, 2, 2};
|
| + const bool kExpectedFragStart[] = {true, false, true, true, false, false};
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| kExpectedSizes,
|
| @@ -130,25 +130,26 @@ TEST_F(RtpPacketizerVp8Test, TestStrictMode) {
|
|
|
| // Verify that we get a minimal number of packets if the partition plus header
|
| // size fits exactly in the maximum packet size.
|
| -// Test is disabled: https://code.google.com/p/webrtc/issues/detail?id=4019.
|
| -TEST_F(RtpPacketizerVp8Test, DISABLED_TestStrictEqualTightPartitions) {
|
| +TEST_F(RtpPacketizerVp8Test, TestStrictEqualTightPartitions) {
|
| const size_t kSizeVector[] = {10, 10, 10};
|
| const size_t kNumPartitions = GTEST_ARRAY_SIZE_(kSizeVector);
|
| ASSERT_TRUE(Init(kSizeVector, kNumPartitions));
|
|
|
| hdr_info_.pictureId = 200; // > 0x7F should produce 2-byte PictureID.
|
| const int kMaxPayloadSize = 14;
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kStrict);
|
| - packetizer.SetPayloadData(helper_->payload_data(), helper_->payload_size(),
|
| - helper_->fragmentation());
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kStrict);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
|
|
| - // The expected sizes are obtained by running a verified good implementation.
|
| + // The expected sizes are obtained by hand.
|
| const size_t kExpectedSizes[] = {14, 14, 14};
|
| const int kExpectedPart[] = {0, 1, 2};
|
| const bool kExpectedFragStart[] = {true, true, true};
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->GetAllPacketsAndCheck(&packetizer, kExpectedSizes, kExpectedPart,
|
| kExpectedFragStart, kExpectedNum);
|
| @@ -161,18 +162,19 @@ TEST_F(RtpPacketizerVp8Test, TestAggregateMode) {
|
|
|
| hdr_info_.pictureId = 20; // <= 0x7F should produce 1-byte PictureID.
|
| const size_t kMaxPayloadSize = 25;
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kAggregate);
|
| - packetizer.SetPayloadData(helper_->payload_data(),
|
| - helper_->payload_size(),
|
| - helper_->fragmentation());
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
|
|
| - // The expected sizes are obtained by running a verified good implementation.
|
| + // The expected sizes are obtained by hand.
|
| const size_t kExpectedSizes[] = {23, 23, 23, 23};
|
| const int kExpectedPart[] = {0, 0, 0, 1};
|
| const bool kExpectedFragStart[] = {true, false, false, true};
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| kExpectedSizes,
|
| @@ -181,6 +183,85 @@ TEST_F(RtpPacketizerVp8Test, TestAggregateMode) {
|
| kExpectedNum);
|
| }
|
|
|
| +TEST_F(RtpPacketizerVp8Test, TestAggregateModePacketReductionCauseExtraPacket) {
|
| + const size_t kSizeVector[] = {60, 10, 10};
|
| + const size_t kNumPartitions = GTEST_ARRAY_SIZE_(kSizeVector);
|
| + ASSERT_TRUE(Init(kSizeVector, kNumPartitions));
|
| +
|
| + hdr_info_.pictureId = 20; // <= 0x7F should produce 1-byte PictureID.
|
| + const size_t kMaxPayloadSize = 25;
|
| + const size_t kLastPacketReductionLen = 5;
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize,
|
| + kLastPacketReductionLen, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
| +
|
| + // The expected sizes are obtained by hand.
|
| + const size_t kExpectedSizes[] = {23, 23, 23, 13, 13};
|
| + const int kExpectedPart[] = {0, 0, 0, 1, 2};
|
| + const bool kExpectedFragStart[] = {true, false, false, true, true};
|
| + const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| + CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| + CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
| +
|
| + helper_->GetAllPacketsAndCheck(&packetizer, kExpectedSizes, kExpectedPart,
|
| + kExpectedFragStart, kExpectedNum);
|
| +}
|
| +
|
| +TEST_F(RtpPacketizerVp8Test, TestAggregateModePacketReduction) {
|
| + const size_t kSizeVector[] = {60, 10, 10};
|
| + const size_t kNumPartitions = GTEST_ARRAY_SIZE_(kSizeVector);
|
| + ASSERT_TRUE(Init(kSizeVector, kNumPartitions));
|
| +
|
| + hdr_info_.pictureId = 20; // <= 0x7F should produce 1-byte PictureID.
|
| + const size_t kMaxPayloadSize = 25;
|
| + const size_t kLastPacketReductionLen = 1;
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize,
|
| + kLastPacketReductionLen, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
| +
|
| + // The expected sizes are obtained by hand.
|
| + const size_t kExpectedSizes[] = {23, 23, 23, 23};
|
| + const int kExpectedPart[] = {0, 0, 0, 1};
|
| + const bool kExpectedFragStart[] = {true, false, false, true};
|
| + const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| + CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| + CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
| +
|
| + helper_->GetAllPacketsAndCheck(&packetizer, kExpectedSizes, kExpectedPart,
|
| + kExpectedFragStart, kExpectedNum);
|
| +}
|
| +
|
| +TEST_F(RtpPacketizerVp8Test, TestAggregateModeSmallPartitions) {
|
| + const size_t kSizeVector[] = {3, 4, 2, 5, 2, 4};
|
| + const size_t kNumPartitions = GTEST_ARRAY_SIZE_(kSizeVector);
|
| + ASSERT_TRUE(Init(kSizeVector, kNumPartitions));
|
| +
|
| + hdr_info_.pictureId = 20; // <= 0x7F should produce 1-byte PictureID.
|
| + const size_t kMaxPayloadSize = 13;
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
| +
|
| + // The expected sizes are obtained by hand.
|
| + const size_t kExpectedSizes[] = {10, 10, 9};
|
| + const int kExpectedPart[] = {0, 2, 4};
|
| + const bool kExpectedFragStart[] = {true, true, true};
|
| + const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| + CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| + CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
| +
|
| + helper_->GetAllPacketsAndCheck(&packetizer, kExpectedSizes, kExpectedPart,
|
| + kExpectedFragStart, kExpectedNum);
|
| +}
|
| +
|
| TEST_F(RtpPacketizerVp8Test, TestAggregateModeManyPartitions1) {
|
| const size_t kSizeVector[] = {1600, 200, 200, 200, 200, 200, 200, 200, 200};
|
| const size_t kNumPartitions = GTEST_ARRAY_SIZE_(kSizeVector);
|
| @@ -188,18 +269,19 @@ TEST_F(RtpPacketizerVp8Test, TestAggregateModeManyPartitions1) {
|
|
|
| hdr_info_.pictureId = 20; // <= 0x7F should produce 1-byte PictureID.
|
| const size_t kMaxPayloadSize = 1000;
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kAggregate);
|
| - packetizer.SetPayloadData(helper_->payload_data(),
|
| - helper_->payload_size(),
|
| - helper_->fragmentation());
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
|
|
| - // The expected sizes are obtained by running a verified good implementation.
|
| + // The expected sizes are obtained by hand.
|
| const size_t kExpectedSizes[] = {803, 803, 803, 803};
|
| const int kExpectedPart[] = {0, 0, 1, 5};
|
| const bool kExpectedFragStart[] = {true, false, true, true};
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| kExpectedSizes,
|
| @@ -215,18 +297,19 @@ TEST_F(RtpPacketizerVp8Test, TestAggregateModeManyPartitions2) {
|
|
|
| hdr_info_.pictureId = 20; // <= 0x7F should produce 1-byte PictureID.
|
| const size_t kMaxPayloadSize = 1000;
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kAggregate);
|
| - packetizer.SetPayloadData(helper_->payload_data(),
|
| - helper_->payload_size(),
|
| - helper_->fragmentation());
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
|
|
| - // The expected sizes are obtained by running a verified good implementation.
|
| - const size_t kExpectedSizes[] = {803, 802, 603, 803, 803, 803};
|
| + // The expected sizes are obtained by hand.
|
| + const size_t kExpectedSizes[] = {802, 803, 603, 803, 803, 803};
|
| const int kExpectedPart[] = {0, 0, 1, 4, 4, 5};
|
| const bool kExpectedFragStart[] = {true, false, true, true, false, true};
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| kExpectedSizes,
|
| @@ -242,18 +325,19 @@ TEST_F(RtpPacketizerVp8Test, TestAggregateModeTwoLargePartitions) {
|
|
|
| hdr_info_.pictureId = 20; // <= 0x7F should produce 1-byte PictureID.
|
| const size_t kMaxPayloadSize = 1460;
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kAggregate);
|
| - packetizer.SetPayloadData(helper_->payload_data(),
|
| - helper_->payload_size(),
|
| - helper_->fragmentation());
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
|
|
| - // The expected sizes are obtained by running a verified good implementation.
|
| + // The expected sizes are obtained by hand.
|
| const size_t kExpectedSizes[] = {830, 830, 1137, 1137};
|
| const int kExpectedPart[] = {0, 0, 1, 1};
|
| const bool kExpectedFragStart[] = {true, false, true, false};
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| kExpectedSizes,
|
| @@ -270,18 +354,19 @@ TEST_F(RtpPacketizerVp8Test, TestEqualSizeModeFallback) {
|
|
|
| hdr_info_.pictureId = 200; // > 0x7F should produce 2-byte PictureID
|
| const size_t kMaxPayloadSize = 12; // Small enough to produce 4 packets.
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize);
|
| - packetizer.SetPayloadData(
|
| - helper_->payload_data(), helper_->payload_size(), NULL);
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0);
|
| + size_t num_packets = packetizer.SetPayloadData(
|
| + helper_->payload_data(), helper_->payload_size(), nullptr);
|
|
|
| // Expecting three full packets, and one with the remainder.
|
| - const size_t kExpectedSizes[] = {12, 11, 12, 11};
|
| + const size_t kExpectedSizes[] = {11, 11, 12, 12};
|
| const int kExpectedPart[] = {0, 0, 0, 0}; // Always 0 for equal size mode.
|
| // Frag start only true for first packet in equal size mode.
|
| const bool kExpectedFragStart[] = {true, false, false, false};
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->set_sloppy_partitioning(true);
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| @@ -291,6 +376,37 @@ TEST_F(RtpPacketizerVp8Test, TestEqualSizeModeFallback) {
|
| kExpectedNum);
|
| }
|
|
|
| +TEST_F(RtpPacketizerVp8Test, TestEqualSizeWithLastPacketReduction) {
|
| + const size_t kSizeVector[] = {30, 10, 3};
|
| + const size_t kNumPartitions = GTEST_ARRAY_SIZE_(kSizeVector);
|
| + ASSERT_TRUE(Init(kSizeVector, kNumPartitions));
|
| +
|
| + hdr_info_.pictureId = 200; // > 0x7F should produce 2-byte PictureID
|
| + const size_t kMaxPayloadSize = 15; // Small enough to produce 5 packets.
|
| + const size_t kLastPacketReduction = 5;
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kLastPacketReduction);
|
| + size_t num_packets = packetizer.SetPayloadData(
|
| + helper_->payload_data(), helper_->payload_size(), nullptr);
|
| +
|
| + // Calculated by hand. VP8 payload descriptors are 4 byte each. 5 packets is
|
| + // minimum possible to fit 43 payload bytes into packets with capacity of
|
| + // 15 - 4 = 11 and leave 5 free bytes in the last packet. All packets are
|
| + // almost equal in size, even last packet if counted with free space (which
|
| + // will be filled up the stack by extra long RTP header).
|
| + const size_t kExpectedSizes[] = {13, 13, 14, 14, 9};
|
| + const int kExpectedPart[] = {0, 0, 0, 0, 0}; // Always 0 for equal size mode.
|
| + // Frag start only true for first packet in equal size mode.
|
| + const bool kExpectedFragStart[] = {true, false, false, false, false};
|
| + const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| + CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| + CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
| +
|
| + helper_->set_sloppy_partitioning(true);
|
| + helper_->GetAllPacketsAndCheck(&packetizer, kExpectedSizes, kExpectedPart,
|
| + kExpectedFragStart, kExpectedNum);
|
| +}
|
| +
|
| // Verify that non-reference bit is set. EqualSize mode fallback is expected.
|
| TEST_F(RtpPacketizerVp8Test, TestNonReferenceBit) {
|
| const size_t kSizeVector[] = {10, 10, 10};
|
| @@ -299,9 +415,9 @@ TEST_F(RtpPacketizerVp8Test, TestNonReferenceBit) {
|
|
|
| hdr_info_.nonReference = true;
|
| const size_t kMaxPayloadSize = 25; // Small enough to produce two packets.
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize);
|
| - packetizer.SetPayloadData(
|
| - helper_->payload_data(), helper_->payload_size(), NULL);
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0);
|
| + size_t num_packets = packetizer.SetPayloadData(
|
| + helper_->payload_data(), helper_->payload_size(), nullptr);
|
|
|
| // EqualSize mode => First packet full; other not.
|
| const size_t kExpectedSizes[] = {16, 16};
|
| @@ -311,6 +427,7 @@ TEST_F(RtpPacketizerVp8Test, TestNonReferenceBit) {
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->set_sloppy_partitioning(true);
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| @@ -331,10 +448,10 @@ TEST_F(RtpPacketizerVp8Test, TestTl0PicIdxAndTID) {
|
| hdr_info_.layerSync = true;
|
| // kMaxPayloadSize is only limited by allocated buffer size.
|
| const size_t kMaxPayloadSize = helper_->buffer_size();
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kAggregate);
|
| - packetizer.SetPayloadData(helper_->payload_data(),
|
| - helper_->payload_size(),
|
| - helper_->fragmentation());
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
|
|
| // Expect one single packet of payload_size() + 4 bytes header.
|
| const size_t kExpectedSizes[1] = {helper_->payload_size() + 4};
|
| @@ -343,6 +460,7 @@ TEST_F(RtpPacketizerVp8Test, TestTl0PicIdxAndTID) {
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| kExpectedSizes,
|
| @@ -360,10 +478,10 @@ TEST_F(RtpPacketizerVp8Test, TestKeyIdx) {
|
| hdr_info_.keyIdx = 17;
|
| // kMaxPayloadSize is only limited by allocated buffer size.
|
| const size_t kMaxPayloadSize = helper_->buffer_size();
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kAggregate);
|
| - packetizer.SetPayloadData(helper_->payload_data(),
|
| - helper_->payload_size(),
|
| - helper_->fragmentation());
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
|
|
| // Expect one single packet of payload_size() + 3 bytes header.
|
| const size_t kExpectedSizes[1] = {helper_->payload_size() + 3};
|
| @@ -372,6 +490,7 @@ TEST_F(RtpPacketizerVp8Test, TestKeyIdx) {
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| kExpectedSizes,
|
| @@ -390,10 +509,10 @@ TEST_F(RtpPacketizerVp8Test, TestTIDAndKeyIdx) {
|
| hdr_info_.keyIdx = 5;
|
| // kMaxPayloadSize is only limited by allocated buffer size.
|
| const size_t kMaxPayloadSize = helper_->buffer_size();
|
| - RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, kAggregate);
|
| - packetizer.SetPayloadData(helper_->payload_data(),
|
| - helper_->payload_size(),
|
| - helper_->fragmentation());
|
| + RtpPacketizerVp8 packetizer(hdr_info_, kMaxPayloadSize, 0, kAggregate);
|
| + size_t num_packets = packetizer.SetPayloadData(helper_->payload_data(),
|
| + helper_->payload_size(),
|
| + helper_->fragmentation());
|
|
|
| // Expect one single packet of payload_size() + 3 bytes header.
|
| const size_t kExpectedSizes[1] = {helper_->payload_size() + 3};
|
| @@ -402,6 +521,7 @@ TEST_F(RtpPacketizerVp8Test, TestTIDAndKeyIdx) {
|
| const size_t kExpectedNum = GTEST_ARRAY_SIZE_(kExpectedSizes);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedPart);
|
| CHECK_ARRAY_SIZE(kExpectedNum, kExpectedFragStart);
|
| + ASSERT_EQ(num_packets, kExpectedNum);
|
|
|
| helper_->GetAllPacketsAndCheck(&packetizer,
|
| kExpectedSizes,
|
| @@ -579,11 +699,9 @@ TEST_F(RtpDepacketizerVp8Test, TestWithPacketizer) {
|
| input_header.layerSync = false;
|
| input_header.tl0PicIdx = kNoTl0PicIdx; // Disable.
|
| input_header.keyIdx = 31;
|
| - RtpPacketizerVp8 packetizer(input_header, 20);
|
| - packetizer.SetPayloadData(data, 10, NULL);
|
| - bool last;
|
| - ASSERT_TRUE(packetizer.NextPacket(&packet, &last));
|
| - EXPECT_TRUE(last);
|
| + RtpPacketizerVp8 packetizer(input_header, 20, 0);
|
| + EXPECT_EQ(packetizer.SetPayloadData(data, 10, NULL), 1u);
|
| + ASSERT_TRUE(packetizer.NextPacket(&packet));
|
| EXPECT_TRUE(packet.Marker());
|
|
|
| auto rtp_payload = packet.payload();
|
|
|