Simulcast work to enable RID mux.
Rids can now be sent using rtp_sender.
Hooking up the rid values in the voice and video engine is still WIP.
Bug: webrtc:10074
Change-Id: I245c7ecb23b67fc0ba65caaa5dbb4fcfd60c81bb
Reviewed-on: https://webrtc-review.googlesource.com/c/114505
Commit-Queue: Amit Hilbuch <amithi@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26092}
diff --git a/api/rtpparameters.cc b/api/rtpparameters.cc
index 2b20c56..6b253dc 100644
--- a/api/rtpparameters.cc
+++ b/api/rtpparameters.cc
@@ -137,12 +137,20 @@
"http://www.webrtc.org/experiments/rtp-hdrext/generic-frame-descriptor-00";
const int RtpExtension::kGenericFrameDescriptorDefaultId = 11;
+const char RtpExtension::kEncryptHeaderExtensionsUri[] =
+ "urn:ietf:params:rtp-hdrext:encrypt";
+
const char RtpExtension::kColorSpaceUri[] =
"http://www.webrtc.org/experiments/rtp-hdrext/color-space";
const int RtpExtension::kColorSpaceDefaultId = 12;
-const char RtpExtension::kEncryptHeaderExtensionsUri[] =
- "urn:ietf:params:rtp-hdrext:encrypt";
+const char RtpExtension::kRidUri[] =
+ "urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id";
+const int RtpExtension::kRidDefaultId = 13;
+
+const char RtpExtension::kRepairedRidUri[] =
+ "urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id";
+const int RtpExtension::kRepairedRidDefaultId = 14;
constexpr int RtpExtension::kMinId;
constexpr int RtpExtension::kMaxId;
@@ -153,7 +161,9 @@
bool RtpExtension::IsSupportedForAudio(const std::string& uri) {
return uri == webrtc::RtpExtension::kAudioLevelUri ||
uri == webrtc::RtpExtension::kTransportSequenceNumberUri ||
- uri == webrtc::RtpExtension::kMidUri;
+ uri == webrtc::RtpExtension::kMidUri ||
+ uri == webrtc::RtpExtension::kRidUri ||
+ uri == webrtc::RtpExtension::kRepairedRidUri;
}
bool RtpExtension::IsSupportedForVideo(const std::string& uri) {
@@ -167,7 +177,9 @@
uri == webrtc::RtpExtension::kMidUri ||
uri == webrtc::RtpExtension::kFrameMarkingUri ||
uri == webrtc::RtpExtension::kGenericFrameDescriptorUri ||
- uri == webrtc::RtpExtension::kColorSpaceUri;
+ uri == webrtc::RtpExtension::kColorSpaceUri ||
+ uri == webrtc::RtpExtension::kRidUri ||
+ uri == webrtc::RtpExtension::kRepairedRidUri;
}
bool RtpExtension::IsEncryptionSupported(const std::string& uri) {
@@ -185,7 +197,9 @@
uri == webrtc::RtpExtension::kTransportSequenceNumberUri ||
uri == webrtc::RtpExtension::kPlayoutDelayUri ||
uri == webrtc::RtpExtension::kVideoContentTypeUri ||
- uri == webrtc::RtpExtension::kMidUri;
+ uri == webrtc::RtpExtension::kMidUri ||
+ uri == webrtc::RtpExtension::kRidUri ||
+ uri == webrtc::RtpExtension::kRepairedRidUri;
}
const RtpExtension* RtpExtension::FindHeaderExtensionByUri(