Delete unused class Vp9SsMap
Appears unused since https://codereview.webrtc.org/1426813002 Bug: webrtc:7408 Change-Id: I13b8c35548314705eaf31ff2366636f358fef718 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/133203 Reviewed-by: Åsa Persson <asapersson@webrtc.org> Commit-Queue: Niels Moller <nisse@webrtc.org> Cr-Commit-Position: refs/heads/master@{#27645}
This commit is contained in:
@ -31,176 +31,6 @@
|
||||
|
||||
namespace webrtc {
|
||||
|
||||
namespace {
|
||||
const uint32_t kProcessIntervalSec = 60;
|
||||
} // namespace
|
||||
|
||||
class Vp9SsMapTest : public ::testing::Test {
|
||||
protected:
|
||||
Vp9SsMapTest() : packet_() {}
|
||||
|
||||
virtual void SetUp() {
|
||||
auto& vp9_header =
|
||||
packet_.video_header.video_type_header.emplace<RTPVideoHeaderVP9>();
|
||||
packet_.video_header.is_first_packet_in_frame = true;
|
||||
packet_.dataPtr = data_;
|
||||
packet_.sizeBytes = 1400;
|
||||
packet_.seqNum = 1234;
|
||||
packet_.timestamp = 1;
|
||||
packet_.markerBit = true;
|
||||
packet_.frameType = VideoFrameType::kVideoFrameKey;
|
||||
packet_.video_header.codec = kVideoCodecVP9;
|
||||
packet_.video_header.codec = kVideoCodecVP9;
|
||||
vp9_header.flexible_mode = false;
|
||||
vp9_header.gof_idx = 0;
|
||||
vp9_header.temporal_idx = kNoTemporalIdx;
|
||||
vp9_header.temporal_up_switch = false;
|
||||
vp9_header.ss_data_available = true;
|
||||
vp9_header.gof.SetGofInfoVP9(
|
||||
kTemporalStructureMode3); // kTemporalStructureMode3: 0-2-1-2..
|
||||
}
|
||||
|
||||
Vp9SsMap map_;
|
||||
uint8_t data_[1500];
|
||||
VCMPacket packet_;
|
||||
};
|
||||
|
||||
TEST_F(Vp9SsMapTest, Insert) {
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, Insert_NoSsData) {
|
||||
absl::get<RTPVideoHeaderVP9>(packet_.video_header.video_type_header)
|
||||
.ss_data_available = false;
|
||||
EXPECT_FALSE(map_.Insert(packet_));
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, Find) {
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
Vp9SsMap::SsMap::iterator it;
|
||||
EXPECT_TRUE(map_.Find(packet_.timestamp, &it));
|
||||
EXPECT_EQ(packet_.timestamp, it->first);
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, Find_WithWrap) {
|
||||
const uint32_t kSsTimestamp1 = 0xFFFFFFFF;
|
||||
const uint32_t kSsTimestamp2 = 100;
|
||||
packet_.timestamp = kSsTimestamp1;
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
packet_.timestamp = kSsTimestamp2;
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
Vp9SsMap::SsMap::iterator it;
|
||||
EXPECT_FALSE(map_.Find(kSsTimestamp1 - 1, &it));
|
||||
EXPECT_TRUE(map_.Find(kSsTimestamp1, &it));
|
||||
EXPECT_EQ(kSsTimestamp1, it->first);
|
||||
EXPECT_TRUE(map_.Find(0, &it));
|
||||
EXPECT_EQ(kSsTimestamp1, it->first);
|
||||
EXPECT_TRUE(map_.Find(kSsTimestamp2 - 1, &it));
|
||||
EXPECT_EQ(kSsTimestamp1, it->first);
|
||||
EXPECT_TRUE(map_.Find(kSsTimestamp2, &it));
|
||||
EXPECT_EQ(kSsTimestamp2, it->first);
|
||||
EXPECT_TRUE(map_.Find(kSsTimestamp2 + 1, &it));
|
||||
EXPECT_EQ(kSsTimestamp2, it->first);
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, Reset) {
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
Vp9SsMap::SsMap::iterator it;
|
||||
EXPECT_TRUE(map_.Find(packet_.timestamp, &it));
|
||||
EXPECT_EQ(packet_.timestamp, it->first);
|
||||
|
||||
map_.Reset();
|
||||
EXPECT_FALSE(map_.Find(packet_.timestamp, &it));
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, RemoveOld) {
|
||||
Vp9SsMap::SsMap::iterator it;
|
||||
const uint32_t kSsTimestamp1 = 10000;
|
||||
packet_.timestamp = kSsTimestamp1;
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
|
||||
const uint32_t kTimestamp = kSsTimestamp1 + kProcessIntervalSec * 90000;
|
||||
map_.RemoveOld(kTimestamp - 1); // Interval not passed.
|
||||
EXPECT_TRUE(map_.Find(kSsTimestamp1, &it)); // Should not been removed.
|
||||
|
||||
map_.RemoveOld(kTimestamp);
|
||||
EXPECT_FALSE(map_.Find(kSsTimestamp1, &it));
|
||||
EXPECT_TRUE(map_.Find(kTimestamp, &it));
|
||||
EXPECT_EQ(kTimestamp, it->first);
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, RemoveOld_WithWrap) {
|
||||
Vp9SsMap::SsMap::iterator it;
|
||||
const uint32_t kSsTimestamp1 = 0xFFFFFFFF - kProcessIntervalSec * 90000;
|
||||
const uint32_t kSsTimestamp2 = 10;
|
||||
const uint32_t kSsTimestamp3 = 1000;
|
||||
packet_.timestamp = kSsTimestamp1;
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
packet_.timestamp = kSsTimestamp2;
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
packet_.timestamp = kSsTimestamp3;
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
|
||||
map_.RemoveOld(kSsTimestamp3);
|
||||
EXPECT_FALSE(map_.Find(kSsTimestamp1, &it));
|
||||
EXPECT_FALSE(map_.Find(kSsTimestamp2, &it));
|
||||
EXPECT_TRUE(map_.Find(kSsTimestamp3, &it));
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, UpdatePacket_NoSsData) {
|
||||
absl::get<RTPVideoHeaderVP9>(packet_.video_header.video_type_header).gof_idx =
|
||||
0;
|
||||
EXPECT_FALSE(map_.UpdatePacket(&packet_));
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, UpdatePacket_NoGofIdx) {
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
absl::get<RTPVideoHeaderVP9>(packet_.video_header.video_type_header).gof_idx =
|
||||
kNoGofIdx;
|
||||
EXPECT_FALSE(map_.UpdatePacket(&packet_));
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, UpdatePacket_InvalidGofIdx) {
|
||||
EXPECT_TRUE(map_.Insert(packet_));
|
||||
absl::get<RTPVideoHeaderVP9>(packet_.video_header.video_type_header).gof_idx =
|
||||
4;
|
||||
EXPECT_FALSE(map_.UpdatePacket(&packet_));
|
||||
}
|
||||
|
||||
TEST_F(Vp9SsMapTest, UpdatePacket) {
|
||||
auto& vp9_header =
|
||||
absl::get<RTPVideoHeaderVP9>(packet_.video_header.video_type_header);
|
||||
EXPECT_TRUE(map_.Insert(packet_)); // kTemporalStructureMode3: 0-2-1-2..
|
||||
|
||||
vp9_header.gof_idx = 0;
|
||||
EXPECT_TRUE(map_.UpdatePacket(&packet_));
|
||||
EXPECT_EQ(0, vp9_header.temporal_idx);
|
||||
EXPECT_FALSE(vp9_header.temporal_up_switch);
|
||||
EXPECT_EQ(1U, vp9_header.num_ref_pics);
|
||||
EXPECT_EQ(4, vp9_header.pid_diff[0]);
|
||||
|
||||
vp9_header.gof_idx = 1;
|
||||
EXPECT_TRUE(map_.UpdatePacket(&packet_));
|
||||
EXPECT_EQ(2, vp9_header.temporal_idx);
|
||||
EXPECT_TRUE(vp9_header.temporal_up_switch);
|
||||
EXPECT_EQ(1U, vp9_header.num_ref_pics);
|
||||
EXPECT_EQ(1, vp9_header.pid_diff[0]);
|
||||
|
||||
vp9_header.gof_idx = 2;
|
||||
EXPECT_TRUE(map_.UpdatePacket(&packet_));
|
||||
EXPECT_EQ(1, vp9_header.temporal_idx);
|
||||
EXPECT_TRUE(vp9_header.temporal_up_switch);
|
||||
EXPECT_EQ(1U, vp9_header.num_ref_pics);
|
||||
EXPECT_EQ(2, vp9_header.pid_diff[0]);
|
||||
|
||||
vp9_header.gof_idx = 3;
|
||||
EXPECT_TRUE(map_.UpdatePacket(&packet_));
|
||||
EXPECT_EQ(2, vp9_header.temporal_idx);
|
||||
EXPECT_TRUE(vp9_header.temporal_up_switch);
|
||||
EXPECT_EQ(1U, vp9_header.num_ref_pics);
|
||||
EXPECT_EQ(1, vp9_header.pid_diff[0]);
|
||||
}
|
||||
|
||||
class TestBasicJitterBuffer : public ::testing::Test {
|
||||
protected:
|
||||
TestBasicJitterBuffer() {}
|
||||
|
Reference in New Issue
Block a user