summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chromium/third_party/webrtc/pc/webrtc_sdp.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/chromium/third_party/webrtc/pc/webrtc_sdp.cc b/chromium/third_party/webrtc/pc/webrtc_sdp.cc
index 3a1b6a12bb0..4295f4e9ad2 100644
--- a/chromium/third_party/webrtc/pc/webrtc_sdp.cc
+++ b/chromium/third_party/webrtc/pc/webrtc_sdp.cc
@@ -3293,7 +3293,6 @@ bool ParseContent(const std::string& message,
// If simulcast is specifed, split the rids into send and receive.
// Rids that do not appear in simulcast attribute will be removed.
- // If it is not specified, we assume that all rids are for send layers.
std::vector<RidDescription> send_rids;
std::vector<RidDescription> receive_rids;
if (!simulcast.empty()) {
@@ -3320,7 +3319,11 @@ bool ParseContent(const std::string& message,
media_desc->set_simulcast_description(simulcast);
} else {
- send_rids = rids;
+ // RID is specified in RFC 8851, which identifies a lot of usages.
+ // We only support RFC 8853 usage of RID, not anything else.
+ // Ignore all RID parameters when a=simulcast is missing.
+ // In particular do NOT do send_rids = rids;
+ RTC_LOG(LS_VERBOSE) << "Ignoring send_rids without simulcast";
}
media_desc->set_receive_rids(receive_rids);