From 44f749dac63c925f156a718496e7425ce3557e4f Mon Sep 17 00:00:00 2001 From: Danil Chapovalov Date: Wed, 14 Oct 2020 11:11:49 +0200 Subject: [PATCH] Advertise dependency descriptor rtp header extension behind a field trial MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: webrtc:10342 Change-Id: I7020f9a56e09e90e78850935765da5e4dff8ff66 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/188382 Reviewed-by: Erik Språng Commit-Queue: Danil Chapovalov Cr-Commit-Position: refs/heads/master@{#32401} --- media/engine/webrtc_video_engine.cc | 5 +++++ media/engine/webrtc_video_engine_unittest.cc | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/media/engine/webrtc_video_engine.cc b/media/engine/webrtc_video_engine.cc index 8ac97d56bf..ae1317b99a 100644 --- a/media/engine/webrtc_video_engine.cc +++ b/media/engine/webrtc_video_engine.cc @@ -633,6 +633,11 @@ WebRtcVideoEngine::GetRtpHeaderExtensions() const { IsEnabled(trials_, "WebRTC-GenericDescriptorAdvertised") ? webrtc::RtpTransceiverDirection::kSendRecv : webrtc::RtpTransceiverDirection::kStopped); + result.emplace_back( + webrtc::RtpExtension::kDependencyDescriptorUri, id, + IsEnabled(trials_, "WebRTC-DependencyDescriptorAdvertised") + ? webrtc::RtpTransceiverDirection::kSendRecv + : webrtc::RtpTransceiverDirection::kStopped); return result; } diff --git a/media/engine/webrtc_video_engine_unittest.cc b/media/engine/webrtc_video_engine_unittest.cc index ccac755134..9b2b48dd37 100644 --- a/media/engine/webrtc_video_engine_unittest.cc +++ b/media/engine/webrtc_video_engine_unittest.cc @@ -368,6 +368,19 @@ TEST_F(WebRtcVideoEngineTestWithGenericDescriptor, ExpectRtpCapabilitySupport(RtpExtension::kGenericFrameDescriptorUri00, true); } +class WebRtcVideoEngineTestWithDependencyDescriptor + : public WebRtcVideoEngineTest { + public: + WebRtcVideoEngineTestWithDependencyDescriptor() + : WebRtcVideoEngineTest( + "WebRTC-DependencyDescriptorAdvertised/Enabled/") {} +}; + +TEST_F(WebRtcVideoEngineTestWithDependencyDescriptor, + AdvertiseDependencyDescriptor) { + ExpectRtpCapabilitySupport(RtpExtension::kDependencyDescriptorUri, true); +} + TEST_F(WebRtcVideoEngineTest, CVOSetHeaderExtensionBeforeCapturer) { // Allocate the source first to prevent early destruction before channel's // dtor is called.