Add accessors to the types in the RTPVideoTypeHeader in RTPVideoHeader.

This CL is in preparation to change the RTPVideoTypeHeader into an absl::variant.

Bug: none
Change-Id: I1672d866df0395f3417d8e278cc67f017ab0ff98
Reviewed-on: https://webrtc-review.googlesource.com/87261
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23856}
diff --git a/modules/video_coding/jitter_buffer_unittest.cc b/modules/video_coding/jitter_buffer_unittest.cc
index 45b2c2d..db4ede0 100644
--- a/modules/video_coding/jitter_buffer_unittest.cc
+++ b/modules/video_coding/jitter_buffer_unittest.cc
@@ -50,12 +50,12 @@
     packet_.frameType = kVideoFrameKey;
     packet_.codec = kVideoCodecVP9;
     packet_.video_header.codec = kVideoCodecVP9;
-    packet_.video_header.codecHeader.VP9.flexible_mode = false;
-    packet_.video_header.codecHeader.VP9.gof_idx = 0;
-    packet_.video_header.codecHeader.VP9.temporal_idx = kNoTemporalIdx;
-    packet_.video_header.codecHeader.VP9.temporal_up_switch = false;
-    packet_.video_header.codecHeader.VP9.ss_data_available = true;
-    packet_.video_header.codecHeader.VP9.gof.SetGofInfoVP9(
+    packet_.video_header.vp9().flexible_mode = false;
+    packet_.video_header.vp9().gof_idx = 0;
+    packet_.video_header.vp9().temporal_idx = kNoTemporalIdx;
+    packet_.video_header.vp9().temporal_up_switch = false;
+    packet_.video_header.vp9().ss_data_available = true;
+    packet_.video_header.vp9().gof.SetGofInfoVP9(
         kTemporalStructureMode3);  // kTemporalStructureMode3: 0-2-1-2..
   }
 
@@ -69,7 +69,7 @@
 }
 
 TEST_F(Vp9SsMapTest, Insert_NoSsData) {
-  packet_.video_header.codecHeader.VP9.ss_data_available = false;
+  packet_.video_header.vp9().ss_data_available = false;
   EXPECT_FALSE(map_.Insert(packet_));
 }
 
@@ -146,52 +146,52 @@
 }
 
 TEST_F(Vp9SsMapTest, UpdatePacket_NoSsData) {
-  packet_.video_header.codecHeader.VP9.gof_idx = 0;
+  packet_.video_header.vp9().gof_idx = 0;
   EXPECT_FALSE(map_.UpdatePacket(&packet_));
 }
 
 TEST_F(Vp9SsMapTest, UpdatePacket_NoGofIdx) {
   EXPECT_TRUE(map_.Insert(packet_));
-  packet_.video_header.codecHeader.VP9.gof_idx = kNoGofIdx;
+  packet_.video_header.vp9().gof_idx = kNoGofIdx;
   EXPECT_FALSE(map_.UpdatePacket(&packet_));
 }
 
 TEST_F(Vp9SsMapTest, UpdatePacket_InvalidGofIdx) {
   EXPECT_TRUE(map_.Insert(packet_));
-  packet_.video_header.codecHeader.VP9.gof_idx = 4;
+  packet_.video_header.vp9().gof_idx = 4;
   EXPECT_FALSE(map_.UpdatePacket(&packet_));
 }
 
 TEST_F(Vp9SsMapTest, UpdatePacket) {
   EXPECT_TRUE(map_.Insert(packet_));  // kTemporalStructureMode3: 0-2-1-2..
 
-  packet_.video_header.codecHeader.VP9.gof_idx = 0;
+  packet_.video_header.vp9().gof_idx = 0;
   EXPECT_TRUE(map_.UpdatePacket(&packet_));
-  EXPECT_EQ(0, packet_.video_header.codecHeader.VP9.temporal_idx);
-  EXPECT_FALSE(packet_.video_header.codecHeader.VP9.temporal_up_switch);
-  EXPECT_EQ(1U, packet_.video_header.codecHeader.VP9.num_ref_pics);
-  EXPECT_EQ(4, packet_.video_header.codecHeader.VP9.pid_diff[0]);
+  EXPECT_EQ(0, packet_.video_header.vp9().temporal_idx);
+  EXPECT_FALSE(packet_.video_header.vp9().temporal_up_switch);
+  EXPECT_EQ(1U, packet_.video_header.vp9().num_ref_pics);
+  EXPECT_EQ(4, packet_.video_header.vp9().pid_diff[0]);
 
-  packet_.video_header.codecHeader.VP9.gof_idx = 1;
+  packet_.video_header.vp9().gof_idx = 1;
   EXPECT_TRUE(map_.UpdatePacket(&packet_));
-  EXPECT_EQ(2, packet_.video_header.codecHeader.VP9.temporal_idx);
-  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.vp9().temporal_idx);
+  EXPECT_TRUE(packet_.video_header.vp9().temporal_up_switch);
+  EXPECT_EQ(1U, packet_.video_header.vp9().num_ref_pics);
+  EXPECT_EQ(1, packet_.video_header.vp9().pid_diff[0]);
 
-  packet_.video_header.codecHeader.VP9.gof_idx = 2;
+  packet_.video_header.vp9().gof_idx = 2;
   EXPECT_TRUE(map_.UpdatePacket(&packet_));
-  EXPECT_EQ(1, packet_.video_header.codecHeader.VP9.temporal_idx);
-  EXPECT_TRUE(packet_.video_header.codecHeader.VP9.temporal_up_switch);
-  EXPECT_EQ(1U, packet_.video_header.codecHeader.VP9.num_ref_pics);
-  EXPECT_EQ(2, packet_.video_header.codecHeader.VP9.pid_diff[0]);
+  EXPECT_EQ(1, packet_.video_header.vp9().temporal_idx);
+  EXPECT_TRUE(packet_.video_header.vp9().temporal_up_switch);
+  EXPECT_EQ(1U, packet_.video_header.vp9().num_ref_pics);
+  EXPECT_EQ(2, packet_.video_header.vp9().pid_diff[0]);
 
-  packet_.video_header.codecHeader.VP9.gof_idx = 3;
+  packet_.video_header.vp9().gof_idx = 3;
   EXPECT_TRUE(map_.UpdatePacket(&packet_));
-  EXPECT_EQ(2, packet_.video_header.codecHeader.VP9.temporal_idx);
-  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.vp9().temporal_idx);
+  EXPECT_TRUE(packet_.video_header.vp9().temporal_up_switch);
+  EXPECT_EQ(1U, packet_.video_header.vp9().num_ref_pics);
+  EXPECT_EQ(1, packet_.video_header.vp9().pid_diff[0]);
 }
 
 class TestBasicJitterBuffer : public ::testing::TestWithParam<std::string>,
@@ -924,20 +924,20 @@
   packet_->video_header.codec = kVideoCodecVP9;
   packet_->is_first_packet_in_frame = true;
   packet_->markerBit = true;
-  packet_->video_header.codecHeader.VP9.flexible_mode = false;
-  packet_->video_header.codecHeader.VP9.spatial_idx = 0;
-  packet_->video_header.codecHeader.VP9.beginning_of_frame = true;
-  packet_->video_header.codecHeader.VP9.end_of_frame = true;
-  packet_->video_header.codecHeader.VP9.temporal_up_switch = false;
+  packet_->video_header.vp9().flexible_mode = false;
+  packet_->video_header.vp9().spatial_idx = 0;
+  packet_->video_header.vp9().beginning_of_frame = true;
+  packet_->video_header.vp9().end_of_frame = true;
+  packet_->video_header.vp9().temporal_up_switch = false;
 
   packet_->seqNum = 65485;
   packet_->timestamp = 1000;
   packet_->frameType = kVideoFrameKey;
-  packet_->video_header.codecHeader.VP9.picture_id = 5;
-  packet_->video_header.codecHeader.VP9.tl0_pic_idx = 200;
-  packet_->video_header.codecHeader.VP9.temporal_idx = 0;
-  packet_->video_header.codecHeader.VP9.ss_data_available = true;
-  packet_->video_header.codecHeader.VP9.gof.SetGofInfoVP9(
+  packet_->video_header.vp9().picture_id = 5;
+  packet_->video_header.vp9().tl0_pic_idx = 200;
+  packet_->video_header.vp9().temporal_idx = 0;
+  packet_->video_header.vp9().ss_data_available = true;
+  packet_->video_header.vp9().gof.SetGofInfoVP9(
       kTemporalStructureMode3);  // kTemporalStructureMode3: 0-2-1-2..
   EXPECT_EQ(kCompleteSession, jitter_buffer_->InsertPacket(*packet_, &re));
 
@@ -945,10 +945,10 @@
   packet_->seqNum = 65489;
   packet_->timestamp = 13000;
   packet_->frameType = kVideoFrameDelta;
-  packet_->video_header.codecHeader.VP9.picture_id = 9;
-  packet_->video_header.codecHeader.VP9.tl0_pic_idx = 201;
-  packet_->video_header.codecHeader.VP9.temporal_idx = 0;
-  packet_->video_header.codecHeader.VP9.ss_data_available = false;
+  packet_->video_header.vp9().picture_id = 9;
+  packet_->video_header.vp9().tl0_pic_idx = 201;
+  packet_->video_header.vp9().temporal_idx = 0;
+  packet_->video_header.vp9().ss_data_available = false;
   EXPECT_EQ(kCompleteSession, jitter_buffer_->InsertPacket(*packet_, &re));
 
   VCMEncodedFrame* frame_out = DecodeCompleteFrame();
@@ -977,26 +977,26 @@
   packet_->video_header.codec = kVideoCodecVP9;
   packet_->is_first_packet_in_frame = true;
   packet_->markerBit = true;
-  packet_->video_header.codecHeader.VP9.flexible_mode = false;
-  packet_->video_header.codecHeader.VP9.spatial_idx = 0;
-  packet_->video_header.codecHeader.VP9.beginning_of_frame = true;
-  packet_->video_header.codecHeader.VP9.end_of_frame = true;
-  packet_->video_header.codecHeader.VP9.tl0_pic_idx = 200;
+  packet_->video_header.vp9().flexible_mode = false;
+  packet_->video_header.vp9().spatial_idx = 0;
+  packet_->video_header.vp9().beginning_of_frame = true;
+  packet_->video_header.vp9().end_of_frame = true;
+  packet_->video_header.vp9().tl0_pic_idx = 200;
 
   packet_->seqNum = 65486;
   packet_->timestamp = 6000;
   packet_->frameType = kVideoFrameDelta;
-  packet_->video_header.codecHeader.VP9.picture_id = 6;
-  packet_->video_header.codecHeader.VP9.temporal_idx = 2;
-  packet_->video_header.codecHeader.VP9.temporal_up_switch = true;
+  packet_->video_header.vp9().picture_id = 6;
+  packet_->video_header.vp9().temporal_idx = 2;
+  packet_->video_header.vp9().temporal_up_switch = true;
   EXPECT_EQ(kCompleteSession, jitter_buffer_->InsertPacket(*packet_, &re));
 
   packet_->seqNum = 65487;
   packet_->timestamp = 9000;
   packet_->frameType = kVideoFrameDelta;
-  packet_->video_header.codecHeader.VP9.picture_id = 7;
-  packet_->video_header.codecHeader.VP9.temporal_idx = 1;
-  packet_->video_header.codecHeader.VP9.temporal_up_switch = true;
+  packet_->video_header.vp9().picture_id = 7;
+  packet_->video_header.vp9().temporal_idx = 1;
+  packet_->video_header.vp9().temporal_up_switch = true;
   EXPECT_EQ(kCompleteSession, jitter_buffer_->InsertPacket(*packet_, &re));
 
   // Insert first frame with SS data.
@@ -1005,11 +1005,11 @@
   packet_->frameType = kVideoFrameKey;
   packet_->width = 352;
   packet_->height = 288;
-  packet_->video_header.codecHeader.VP9.picture_id = 5;
-  packet_->video_header.codecHeader.VP9.temporal_idx = 0;
-  packet_->video_header.codecHeader.VP9.temporal_up_switch = false;
-  packet_->video_header.codecHeader.VP9.ss_data_available = true;
-  packet_->video_header.codecHeader.VP9.gof.SetGofInfoVP9(
+  packet_->video_header.vp9().picture_id = 5;
+  packet_->video_header.vp9().temporal_idx = 0;
+  packet_->video_header.vp9().temporal_up_switch = false;
+  packet_->video_header.vp9().ss_data_available = true;
+  packet_->video_header.vp9().gof.SetGofInfoVP9(
       kTemporalStructureMode3);  // kTemporalStructureMode3: 0-2-1-2..
   EXPECT_EQ(kCompleteSession, jitter_buffer_->InsertPacket(*packet_, &re));
 
@@ -1051,30 +1051,30 @@
   bool re = false;
   packet_->codec = kVideoCodecVP9;
   packet_->video_header.codec = kVideoCodecVP9;
-  packet_->video_header.codecHeader.VP9.flexible_mode = false;
-  packet_->video_header.codecHeader.VP9.beginning_of_frame = true;
-  packet_->video_header.codecHeader.VP9.end_of_frame = true;
-  packet_->video_header.codecHeader.VP9.tl0_pic_idx = 200;
+  packet_->video_header.vp9().flexible_mode = false;
+  packet_->video_header.vp9().beginning_of_frame = true;
+  packet_->video_header.vp9().end_of_frame = true;
+  packet_->video_header.vp9().tl0_pic_idx = 200;
 
   packet_->is_first_packet_in_frame = true;
   packet_->markerBit = false;
   packet_->seqNum = 65486;
   packet_->timestamp = 6000;
   packet_->frameType = kVideoFrameDelta;
-  packet_->video_header.codecHeader.VP9.spatial_idx = 0;
-  packet_->video_header.codecHeader.VP9.picture_id = 6;
-  packet_->video_header.codecHeader.VP9.temporal_idx = 1;
-  packet_->video_header.codecHeader.VP9.temporal_up_switch = true;
+  packet_->video_header.vp9().spatial_idx = 0;
+  packet_->video_header.vp9().picture_id = 6;
+  packet_->video_header.vp9().temporal_idx = 1;
+  packet_->video_header.vp9().temporal_up_switch = true;
   EXPECT_EQ(kIncomplete, jitter_buffer_->InsertPacket(*packet_, &re));
 
   packet_->is_first_packet_in_frame = false;
   packet_->markerBit = true;
   packet_->seqNum = 65487;
   packet_->frameType = kVideoFrameDelta;
-  packet_->video_header.codecHeader.VP9.spatial_idx = 1;
-  packet_->video_header.codecHeader.VP9.picture_id = 6;
-  packet_->video_header.codecHeader.VP9.temporal_idx = 1;
-  packet_->video_header.codecHeader.VP9.temporal_up_switch = true;
+  packet_->video_header.vp9().spatial_idx = 1;
+  packet_->video_header.vp9().picture_id = 6;
+  packet_->video_header.vp9().temporal_idx = 1;
+  packet_->video_header.vp9().temporal_up_switch = true;
   EXPECT_EQ(kCompleteSession, jitter_buffer_->InsertPacket(*packet_, &re));
 
   packet_->is_first_packet_in_frame = false;
@@ -1082,10 +1082,10 @@
   packet_->seqNum = 65485;
   packet_->timestamp = 3000;
   packet_->frameType = kVideoFrameKey;
-  packet_->video_header.codecHeader.VP9.spatial_idx = 1;
-  packet_->video_header.codecHeader.VP9.picture_id = 5;
-  packet_->video_header.codecHeader.VP9.temporal_idx = 0;
-  packet_->video_header.codecHeader.VP9.temporal_up_switch = false;
+  packet_->video_header.vp9().spatial_idx = 1;
+  packet_->video_header.vp9().picture_id = 5;
+  packet_->video_header.vp9().temporal_idx = 0;
+  packet_->video_header.vp9().temporal_up_switch = false;
   EXPECT_EQ(kIncomplete, jitter_buffer_->InsertPacket(*packet_, &re));
 
   // Insert first frame with SS data.
@@ -1095,12 +1095,12 @@
   packet_->frameType = kVideoFrameKey;
   packet_->width = 352;
   packet_->height = 288;
-  packet_->video_header.codecHeader.VP9.spatial_idx = 0;
-  packet_->video_header.codecHeader.VP9.picture_id = 5;
-  packet_->video_header.codecHeader.VP9.temporal_idx = 0;
-  packet_->video_header.codecHeader.VP9.temporal_up_switch = false;
-  packet_->video_header.codecHeader.VP9.ss_data_available = true;
-  packet_->video_header.codecHeader.VP9.gof.SetGofInfoVP9(
+  packet_->video_header.vp9().spatial_idx = 0;
+  packet_->video_header.vp9().picture_id = 5;
+  packet_->video_header.vp9().temporal_idx = 0;
+  packet_->video_header.vp9().temporal_up_switch = false;
+  packet_->video_header.vp9().ss_data_available = true;
+  packet_->video_header.vp9().gof.SetGofInfoVP9(
       kTemporalStructureMode2);  // kTemporalStructureMode3: 0-1-0-1..
   EXPECT_EQ(kCompleteSession, jitter_buffer_->InsertPacket(*packet_, &re));
 
@@ -1160,11 +1160,11 @@
   packet_->markerBit = true;
   packet_->codec = kVideoCodecH264;
   packet_->video_header.codec = kVideoCodecH264;
-  packet_->video_header.codecHeader.H264.nalu_type = H264::NaluType::kIdr;
-  packet_->video_header.codecHeader.H264.nalus[0].type = H264::NaluType::kIdr;
-  packet_->video_header.codecHeader.H264.nalus[0].sps_id = -1;
-  packet_->video_header.codecHeader.H264.nalus[0].pps_id = 0;
-  packet_->video_header.codecHeader.H264.nalus_length = 1;
+  packet_->video_header.h264().nalu_type = H264::NaluType::kIdr;
+  packet_->video_header.h264().nalus[0].type = H264::NaluType::kIdr;
+  packet_->video_header.h264().nalus[0].sps_id = -1;
+  packet_->video_header.h264().nalus[0].pps_id = 0;
+  packet_->video_header.h264().nalus_length = 1;
   bool retransmitted = false;
   EXPECT_EQ(kCompleteSession,
             jitter_buffer_->InsertPacket(*packet_, &retransmitted));
@@ -1180,14 +1180,14 @@
   packet_->markerBit = false;
   packet_->codec = kVideoCodecH264;
   packet_->video_header.codec = kVideoCodecH264;
-  packet_->video_header.codecHeader.H264.nalu_type = H264::NaluType::kStapA;
-  packet_->video_header.codecHeader.H264.nalus[0].type = H264::NaluType::kSps;
-  packet_->video_header.codecHeader.H264.nalus[0].sps_id = 0;
-  packet_->video_header.codecHeader.H264.nalus[0].pps_id = -1;
-  packet_->video_header.codecHeader.H264.nalus[1].type = H264::NaluType::kPps;
-  packet_->video_header.codecHeader.H264.nalus[1].sps_id = 0;
-  packet_->video_header.codecHeader.H264.nalus[1].pps_id = 0;
-  packet_->video_header.codecHeader.H264.nalus_length = 2;
+  packet_->video_header.h264().nalu_type = H264::NaluType::kStapA;
+  packet_->video_header.h264().nalus[0].type = H264::NaluType::kSps;
+  packet_->video_header.h264().nalus[0].sps_id = 0;
+  packet_->video_header.h264().nalus[0].pps_id = -1;
+  packet_->video_header.h264().nalus[1].type = H264::NaluType::kPps;
+  packet_->video_header.h264().nalus[1].sps_id = 0;
+  packet_->video_header.h264().nalus[1].pps_id = 0;
+  packet_->video_header.h264().nalus_length = 2;
   // Not complete since the marker bit hasn't been received.
   EXPECT_EQ(kIncomplete,
             jitter_buffer_->InsertPacket(*packet_, &retransmitted));
@@ -1199,11 +1199,11 @@
   packet_->markerBit = true;
   packet_->codec = kVideoCodecH264;
   packet_->video_header.codec = kVideoCodecH264;
-  packet_->video_header.codecHeader.H264.nalu_type = H264::NaluType::kIdr;
-  packet_->video_header.codecHeader.H264.nalus[0].type = H264::NaluType::kIdr;
-  packet_->video_header.codecHeader.H264.nalus[0].sps_id = -1;
-  packet_->video_header.codecHeader.H264.nalus[0].pps_id = 0;
-  packet_->video_header.codecHeader.H264.nalus_length = 1;
+  packet_->video_header.h264().nalu_type = H264::NaluType::kIdr;
+  packet_->video_header.h264().nalus[0].type = H264::NaluType::kIdr;
+  packet_->video_header.h264().nalus[0].sps_id = -1;
+  packet_->video_header.h264().nalus[0].pps_id = 0;
+  packet_->video_header.h264().nalus_length = 1;
   // Complete and decodable since the pps and sps are received in the first
   // packet of this frame.
   EXPECT_EQ(kCompleteSession,
@@ -1221,11 +1221,11 @@
   packet_->markerBit = true;
   packet_->codec = kVideoCodecH264;
   packet_->video_header.codec = kVideoCodecH264;
-  packet_->video_header.codecHeader.H264.nalu_type = H264::NaluType::kSlice;
-  packet_->video_header.codecHeader.H264.nalus[0].type = H264::NaluType::kSlice;
-  packet_->video_header.codecHeader.H264.nalus[0].sps_id = -1;
-  packet_->video_header.codecHeader.H264.nalus[0].pps_id = 0;
-  packet_->video_header.codecHeader.H264.nalus_length = 1;
+  packet_->video_header.h264().nalu_type = H264::NaluType::kSlice;
+  packet_->video_header.h264().nalus[0].type = H264::NaluType::kSlice;
+  packet_->video_header.h264().nalus[0].sps_id = -1;
+  packet_->video_header.h264().nalus[0].pps_id = 0;
+  packet_->video_header.h264().nalus_length = 1;
   // Complete and decodable since sps, pps and key frame has been received.
   EXPECT_EQ(kCompleteSession,
             jitter_buffer_->InsertPacket(*packet_, &retransmitted));