diff --git a/modules/video_coding/codecs/vp9/include/vp9_globals.h b/modules/video_coding/codecs/vp9/include/vp9_globals.h index 918e4111a9..3ee9952c36 100644 --- a/modules/video_coding/codecs/vp9/include/vp9_globals.h +++ b/modules/video_coding/codecs/vp9/include/vp9_globals.h @@ -79,10 +79,9 @@ struct GofInfoVP9 { pid_diff[2][0] = 2; temporal_idx[3] = 2; - temporal_up_switch[3] = false; - num_ref_pics[3] = 2; + temporal_up_switch[3] = true; + num_ref_pics[3] = 1; pid_diff[3][0] = 1; - pid_diff[3][1] = 2; break; case kTemporalStructureMode4: num_frames_in_gof = 8; diff --git a/modules/video_coding/jitter_buffer_unittest.cc b/modules/video_coding/jitter_buffer_unittest.cc index f9dffc0322..06faf2107b 100644 --- a/modules/video_coding/jitter_buffer_unittest.cc +++ b/modules/video_coding/jitter_buffer_unittest.cc @@ -189,10 +189,9 @@ TEST_F(Vp9SsMapTest, UpdatePacket) { packet_.video_header.codecHeader.VP9.gof_idx = 3; EXPECT_TRUE(map_.UpdatePacket(&packet_)); EXPECT_EQ(2, packet_.video_header.codecHeader.VP9.temporal_idx); - EXPECT_FALSE(packet_.video_header.codecHeader.VP9.temporal_up_switch); - EXPECT_EQ(2U, packet_.video_header.codecHeader.VP9.num_ref_pics); + EXPECT_TRUE(packet_.video_header.codecHeader.VP9.temporal_up_switch); + EXPECT_EQ(1U, packet_.video_header.codecHeader.VP9.num_ref_pics); EXPECT_EQ(1, packet_.video_header.codecHeader.VP9.pid_diff[0]); - EXPECT_EQ(2, packet_.video_header.codecHeader.VP9.pid_diff[1]); } class TestBasicJitterBuffer : public ::testing::TestWithParam, diff --git a/modules/video_coding/rtp_frame_reference_finder_unittest.cc b/modules/video_coding/rtp_frame_reference_finder_unittest.cc index dd9b2de01c..a8f153999d 100644 --- a/modules/video_coding/rtp_frame_reference_finder_unittest.cc +++ b/modules/video_coding/rtp_frame_reference_finder_unittest.cc @@ -880,7 +880,7 @@ TEST_F(TestRtpFrameReferenceFinder, Vp9GofSkipFramesTemporalLayers_0212) { CheckReferencesVp9(0, 0); CheckReferencesVp9(1, 0, 0); CheckReferencesVp9(2, 0, 0); - CheckReferencesVp9(3, 0, 1, 2); + CheckReferencesVp9(3, 0, 2); // Skip frames with tl0 = 1 @@ -893,7 +893,7 @@ TEST_F(TestRtpFrameReferenceFinder, Vp9GofSkipFramesTemporalLayers_0212) { CheckReferencesVp9(8, 0); CheckReferencesVp9(9, 0, 8); CheckReferencesVp9(10, 0, 8); - CheckReferencesVp9(11, 0, 9, 10); + CheckReferencesVp9(11, 0, 10); // Now insert frames with tl0 = 1 InsertVp9Gof(sn + 4, sn + 4, true, pid + 4, 0, 0, 1, false, &ss); @@ -1043,23 +1043,23 @@ TEST_F(TestRtpFrameReferenceFinder, Vp9GofTemporalLayers_0212) { CheckReferencesVp9(0, 0); CheckReferencesVp9(1, 0, 0); CheckReferencesVp9(2, 0, 0); - CheckReferencesVp9(3, 0, 1, 2); + CheckReferencesVp9(3, 0, 2); CheckReferencesVp9(4, 0, 0); CheckReferencesVp9(5, 0, 4); CheckReferencesVp9(6, 0, 4); - CheckReferencesVp9(7, 0, 5, 6); + CheckReferencesVp9(7, 0, 6); CheckReferencesVp9(8, 0, 4); CheckReferencesVp9(9, 0, 8); CheckReferencesVp9(10, 0, 8); - CheckReferencesVp9(11, 0, 9, 10); + CheckReferencesVp9(11, 0, 10); CheckReferencesVp9(12, 0, 8); CheckReferencesVp9(13, 0, 12); CheckReferencesVp9(14, 0, 12); - CheckReferencesVp9(15, 0, 13, 14); + CheckReferencesVp9(15, 0, 14); CheckReferencesVp9(16, 0, 12); CheckReferencesVp9(17, 0, 16); CheckReferencesVp9(18, 0, 16); - CheckReferencesVp9(19, 0, 17, 18); + CheckReferencesVp9(19, 0, 18); } TEST_F(TestRtpFrameReferenceFinder, Vp9GofTemporalLayersReordered_0212) { @@ -1093,23 +1093,23 @@ TEST_F(TestRtpFrameReferenceFinder, Vp9GofTemporalLayersReordered_0212) { CheckReferencesVp9(0, 0); CheckReferencesVp9(1, 0, 0); CheckReferencesVp9(2, 0, 0); - CheckReferencesVp9(3, 0, 1, 2); + CheckReferencesVp9(3, 0, 2); CheckReferencesVp9(4, 0, 0); CheckReferencesVp9(5, 0, 4); CheckReferencesVp9(6, 0, 4); - CheckReferencesVp9(7, 0, 5, 6); + CheckReferencesVp9(7, 0, 6); CheckReferencesVp9(8, 0, 4); CheckReferencesVp9(9, 0, 8); CheckReferencesVp9(10, 0, 8); - CheckReferencesVp9(11, 0, 9, 10); + CheckReferencesVp9(11, 0, 10); CheckReferencesVp9(12, 0, 8); CheckReferencesVp9(13, 0, 12); CheckReferencesVp9(14, 0, 12); - CheckReferencesVp9(15, 0, 13, 14); + CheckReferencesVp9(15, 0, 14); CheckReferencesVp9(16, 0, 12); CheckReferencesVp9(17, 0, 16); CheckReferencesVp9(18, 0, 16); - CheckReferencesVp9(19, 0, 17, 18); + CheckReferencesVp9(19, 0, 18); } TEST_F(TestRtpFrameReferenceFinder, Vp9GofTemporalLayersUpSwitch_02120212) { @@ -1225,11 +1225,11 @@ TEST_F(TestRtpFrameReferenceFinder, Vp9GofTemporalLayersReordered_01_0212) { CheckReferencesVp9(4, 0, 0); CheckReferencesVp9(5, 0, 4); CheckReferencesVp9(6, 0, 4); - CheckReferencesVp9(7, 0, 5, 6); + CheckReferencesVp9(7, 0, 6); CheckReferencesVp9(8, 0, 4); CheckReferencesVp9(9, 0, 8); CheckReferencesVp9(10, 0, 8); - CheckReferencesVp9(11, 0, 9, 10); + CheckReferencesVp9(11, 0, 10); } TEST_F(TestRtpFrameReferenceFinder, Vp9FlexibleModeOneFrame) { diff --git a/video/video_send_stream_tests.cc b/video/video_send_stream_tests.cc index 1b25108d50..bee80ac0f5 100644 --- a/video/video_send_stream_tests.cc +++ b/video/video_send_stream_tests.cc @@ -3276,7 +3276,8 @@ class Vp9HeaderObserver : public test::SendTest { EXPECT_TRUE(vp9.temporal_up_switch); break; case 2: - EXPECT_EQ(last_vp9_.temporal_idx == 0, vp9.temporal_up_switch); + EXPECT_LT(last_vp9_.temporal_idx, 2); + EXPECT_TRUE(vp9.temporal_up_switch); break; } }