mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-13 05:40:42 +01:00
Changed sps parser and sps parser unit test case for h264, and it is working
Bug: webrtc:14967 Change-Id: I62e76f5951894883f8329cb566292fcf239da9f1 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296240 Commit-Queue: Erik Språng <sprang@webrtc.org> Reviewed-by: Erik Språng <sprang@webrtc.org> Cr-Commit-Position: refs/heads/main@{#39554}
This commit is contained in:
parent
1e6d77c29a
commit
603efe007d
2 changed files with 7 additions and 7 deletions
|
@ -117,7 +117,7 @@ absl::optional<SpsParser::SpsState> SpsParser::ParseSpsUpToVui(
|
|||
// BitstreamReader::ReadBits, which can read at most 64 bits at a time. We
|
||||
// also have to avoid overflow when adding 4 to the on-wire golomb value,
|
||||
// e.g., for evil input data, ReadExponentialGolomb might return 0xfffc.
|
||||
const uint32_t kMaxLog2Minus4 = 32 - 4;
|
||||
const uint32_t kMaxLog2Minus4 = 12;
|
||||
|
||||
// log2_max_frame_num_minus4: ue(v)
|
||||
uint32_t log2_max_frame_num_minus4 = reader.ReadExponentialGolomb();
|
||||
|
|
|
@ -196,15 +196,15 @@ TEST(H264SpsParserTest, TestLog2MaxFrameNumMinus4) {
|
|||
EXPECT_EQ(1u, sps->id);
|
||||
EXPECT_EQ(4u, sps->log2_max_frame_num);
|
||||
|
||||
GenerateFakeSps(320u, 180u, 1, 28, 0, &buffer);
|
||||
GenerateFakeSps(320u, 180u, 1, 12, 0, &buffer);
|
||||
sps = SpsParser::ParseSps(buffer.data(), buffer.size());
|
||||
ASSERT_TRUE(sps.has_value());
|
||||
EXPECT_EQ(320u, sps->width);
|
||||
EXPECT_EQ(180u, sps->height);
|
||||
EXPECT_EQ(1u, sps->id);
|
||||
EXPECT_EQ(32u, sps->log2_max_frame_num);
|
||||
EXPECT_EQ(16u, sps->log2_max_frame_num);
|
||||
|
||||
GenerateFakeSps(320u, 180u, 1, 29, 0, &buffer);
|
||||
GenerateFakeSps(320u, 180u, 1, 13, 0, &buffer);
|
||||
EXPECT_FALSE(SpsParser::ParseSps(buffer.data(), buffer.size()));
|
||||
}
|
||||
|
||||
|
@ -219,15 +219,15 @@ TEST(H264SpsParserTest, TestLog2MaxPicOrderCntMinus4) {
|
|||
EXPECT_EQ(1u, sps->id);
|
||||
EXPECT_EQ(4u, sps->log2_max_pic_order_cnt_lsb);
|
||||
|
||||
GenerateFakeSps(320u, 180u, 1, 0, 28, &buffer);
|
||||
GenerateFakeSps(320u, 180u, 1, 0, 12, &buffer);
|
||||
EXPECT_TRUE(static_cast<bool>(
|
||||
sps = SpsParser::ParseSps(buffer.data(), buffer.size())));
|
||||
EXPECT_EQ(320u, sps->width);
|
||||
EXPECT_EQ(180u, sps->height);
|
||||
EXPECT_EQ(1u, sps->id);
|
||||
EXPECT_EQ(32u, sps->log2_max_pic_order_cnt_lsb);
|
||||
EXPECT_EQ(16u, sps->log2_max_pic_order_cnt_lsb);
|
||||
|
||||
GenerateFakeSps(320u, 180u, 1, 0, 29, &buffer);
|
||||
GenerateFakeSps(320u, 180u, 1, 0, 13, &buffer);
|
||||
EXPECT_FALSE(SpsParser::ParseSps(buffer.data(), buffer.size()));
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue