Chromium Code Reviews| Index: media/video/h264_poc_unittest.cc |
| diff --git a/media/video/h264_poc_unittest.cc b/media/video/h264_poc_unittest.cc |
| index 9df67429fd9338213a9c8f084af2393c3a07fd65..1f3001703d40966d587d3dc6b67ebe7c0e4378dd 100644 |
| --- a/media/video/h264_poc_unittest.cc |
| +++ b/media/video/h264_poc_unittest.cc |
| @@ -192,6 +192,35 @@ TEST_F(H264POCTest, PicOrderCntType1_WithMMCO5) { |
| ASSERT_EQ(1, poc_); |
| } |
| +// Despite being invalid, videos with diplicate non-keyframe |frame_num| values |
|
DaleCurtis
2016/06/02 18:53:02
duplicate.
sandersd (OOO until July 31)
2016/06/02 18:58:55
Done.
|
| +// are common. |
|
DaleCurtis
2016/06/02 18:53:02
Add link to bugs?
sandersd (OOO until July 31)
2016/06/02 18:58:55
Done.
|
| +TEST_F(H264POCTest, PicOrderCntType1_DupFrameNum) { |
| + sps_.pic_order_cnt_type = 1; |
| + sps_.log2_max_frame_num_minus4 = 0; // 16 |
| + sps_.num_ref_frames_in_pic_order_cnt_cycle = 2; |
| + sps_.expected_delta_per_pic_order_cnt_cycle = 3; |
| + sps_.offset_for_ref_frame[0] = 1; |
| + sps_.offset_for_ref_frame[1] = 2; |
| + |
| + // Initial IDR with POC 0. |
| + slice_hdr_.idr_pic_flag = true; |
| + slice_hdr_.frame_num = 0; |
| + ASSERT_TRUE(ComputePOC()); |
| + ASSERT_EQ(0, poc_); |
| + |
| + // Ref frame. |
| + slice_hdr_.idr_pic_flag = false; |
| + slice_hdr_.frame_num = 1; |
| + ASSERT_TRUE(ComputePOC()); |
| + ASSERT_EQ(1, poc_); |
| + |
| + // Duplicate |frame_num| frame. |
| + slice_hdr_.frame_num = 1; |
| + slice_hdr_.delta_pic_order_cnt0 = 1; |
| + ASSERT_TRUE(ComputePOC()); |
| + ASSERT_EQ(2, poc_); |
| +} |
| + |
| TEST_F(H264POCTest, PicOrderCntType2) { |
| sps_.pic_order_cnt_type = 2; |