Ship GenericDescriptor00 by default.
The change ships GenericDescriptor00 and authentication by default,
but doesn't expose it by default, and makes WebRTC respond to
offers carrying it.
The change adds a unit test for the new semantics.
Tests well in munge-sdp. Frame marking replaced by
http://www.webrtc.org/experiments/rtp-hdrext/generic-frame-descriptor-00
in the offer results in an answer containing the
extension as first entry.
Bug: webrtc:11367
Change-Id: I0ef91b7d4096d949c3d547ece7d6c4d39aa241da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168661
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30542}
diff --git a/call/rtp_payload_params_unittest.cc b/call/rtp_payload_params_unittest.cc
index b8fd4a5..54b4025 100644
--- a/call/rtp_payload_params_unittest.cc
+++ b/call/rtp_payload_params_unittest.cc
@@ -160,7 +160,7 @@
h264info->temporal_idx = kNoTemporalIdx;
RTPVideoHeader header =
- params.GetRtpVideoHeader(encoded_image, &codec_info, kDontCare);
+ params.GetRtpVideoHeader(encoded_image, &codec_info, 10);
EXPECT_EQ(0, header.simulcastIdx);
EXPECT_EQ(kVideoCodecH264, header.codec);
@@ -172,7 +172,7 @@
h264info->base_layer_sync = true;
h264info->idr_frame = false;
- header = params.GetRtpVideoHeader(encoded_image, &codec_info, kDontCare);
+ header = params.GetRtpVideoHeader(encoded_image, &codec_info, 20);
EXPECT_EQ(kVideoCodecH264, header.codec);
EXPECT_EQ(header.frame_marking.tl0_pic_idx, kInitialTl0PicIdx1);
@@ -185,7 +185,7 @@
h264info->base_layer_sync = false;
h264info->idr_frame = true;
- header = params.GetRtpVideoHeader(encoded_image, &codec_info, kDontCare);
+ header = params.GetRtpVideoHeader(encoded_image, &codec_info, 30);
EXPECT_EQ(kVideoCodecH264, header.codec);
EXPECT_EQ(header.frame_marking.tl0_pic_idx, kInitialTl0PicIdx1 + 1);
@@ -327,10 +327,11 @@
EncodedImage encoded_image;
CodecSpecificInfo codec_info;
codec_info.codecType = kVideoCodecGeneric;
+ encoded_image._frameType = VideoFrameType::kVideoFrameKey;
RtpPayloadParams params(kSsrc1, &state);
RTPVideoHeader header =
- params.GetRtpVideoHeader(encoded_image, &codec_info, kDontCare);
+ params.GetRtpVideoHeader(encoded_image, &codec_info, 10);
EXPECT_EQ(kVideoCodecGeneric, header.codec);
const auto* generic =
@@ -338,7 +339,8 @@
ASSERT_TRUE(generic);
EXPECT_EQ(0, generic->picture_id);
- header = params.GetRtpVideoHeader(encoded_image, &codec_info, kDontCare);
+ encoded_image._frameType = VideoFrameType::kVideoFrameDelta;
+ header = params.GetRtpVideoHeader(encoded_image, &codec_info, 20);
generic =
absl::get_if<RTPVideoHeaderLegacyGeneric>(&header.video_type_header);
ASSERT_TRUE(generic);