Declare corruption detection URI in RtpExtension
R=sprang@webrtc.org
Bug: webrtc:358039777
Change-Id: I9c66794b8a622bef5505f3a4a7252a0e7a989813
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/360760
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Fanny Linderborg <linderborg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42887}
diff --git a/api/rtp_parameters.cc b/api/rtp_parameters.cc
index 283d238..c919f7c 100644
--- a/api/rtp_parameters.cc
+++ b/api/rtp_parameters.cc
@@ -149,6 +149,7 @@
constexpr char RtpExtension::kRepairedRidUri[];
constexpr char RtpExtension::kVideoFrameTrackingIdUri[];
constexpr char RtpExtension::kCsrcAudioLevelsUri[];
+constexpr char RtpExtension::kCorruptionDetectionUri[];
constexpr int RtpExtension::kMinId;
constexpr int RtpExtension::kMaxId;
@@ -184,7 +185,8 @@
uri == webrtc::RtpExtension::kRidUri ||
uri == webrtc::RtpExtension::kRepairedRidUri ||
uri == webrtc::RtpExtension::kVideoLayersAllocationUri ||
- uri == webrtc::RtpExtension::kVideoFrameTrackingIdUri;
+ uri == webrtc::RtpExtension::kVideoFrameTrackingIdUri ||
+ uri == webrtc::RtpExtension::kCorruptionDetectionUri;
}
bool RtpExtension::IsEncryptionSupported(absl::string_view uri) {
diff --git a/api/rtp_parameters.h b/api/rtp_parameters.h
index 025817c..70d7686 100644
--- a/api/rtp_parameters.h
+++ b/api/rtp_parameters.h
@@ -377,6 +377,10 @@
static constexpr char kCsrcAudioLevelsUri[] =
"urn:ietf:params:rtp-hdrext:csrc-audio-level";
+ // Header extension for automatic corruption detection.
+ static constexpr char kCorruptionDetectionUri[] =
+ "http://www.webrtc.org/experiments/rtp-hdrext/corruption-detection";
+
// Inclusive min and max IDs for two-byte header extensions and one-byte
// header extensions, per RFC8285 Section 4.2-4.3.
static constexpr int kMinId = 1;
diff --git a/modules/rtp_rtcp/source/corruption_detection_extension.h b/modules/rtp_rtcp/source/corruption_detection_extension.h
index 66bde1a..63e770d 100644
--- a/modules/rtp_rtcp/source/corruption_detection_extension.h
+++ b/modules/rtp_rtcp/source/corruption_detection_extension.h
@@ -16,6 +16,7 @@
#include "absl/strings/string_view.h"
#include "api/array_view.h"
+#include "api/rtp_parameters.h"
#include "common_video/corruption_detection_message.h"
#include "modules/rtp_rtcp/include/rtp_rtcp_defines.h"
@@ -33,10 +34,10 @@
static constexpr RTPExtensionType kId = kRtpExtensionCorruptionDetection;
static constexpr uint8_t kMaxValueSizeBytes = 16;
- static constexpr char kCorruptionDetectionUri[] =
- "http://www.webrtc.org/experiments/rtp-hdrext/corruption-detection";
- static constexpr absl::string_view Uri() { return kCorruptionDetectionUri; }
+ static constexpr absl::string_view Uri() {
+ return RtpExtension::kCorruptionDetectionUri;
+ }
static bool Parse(rtc::ArrayView<const uint8_t> data,
CorruptionDetectionMessage* message);
static bool Write(rtc::ArrayView<uint8_t> data,