зеркало из https://github.com/mozilla/gecko-dev.git
53 строки
2.1 KiB
Diff
53 строки
2.1 KiB
Diff
From: Dan Minor <dminor@mozilla.com>
|
|
Date: Tue, 27 Mar 2018 15:43:00 -0400
|
|
Subject: Bug 1376873 - Disable Mid support in RtpDemuxer; r=mjf
|
|
|
|
The only use of Mid in the current webrtc.org code is in the unit tests.
|
|
RtpStreamReceiverController only allows adding sinks using SSRCs. Because
|
|
of this, we'll end up dropping packets in the RtpDemuxer with the current
|
|
code as none of our Mids will be recognized.
|
|
|
|
Tip of webrtc.org fully supports using Mids, so we'll be able to enable this
|
|
code again after the next update.
|
|
|
|
Differential Revision: https://phabricator.services.mozilla.com/D7442
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/b3ba8452e77105c72f6ddbc49cbe5a53dbea1507
|
|
---
|
|
call/rtp_demuxer.cc | 7 ++++++-
|
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/call/rtp_demuxer.cc b/call/rtp_demuxer.cc
|
|
index 0b74f2ac0a..5c53f48144 100644
|
|
--- a/call/rtp_demuxer.cc
|
|
+++ b/call/rtp_demuxer.cc
|
|
@@ -272,13 +272,17 @@ RtpPacketSinkInterface* RtpDemuxer::ResolveSink(
|
|
// RSID and RRID are routed to the same sinks. If an RSID is specified on a
|
|
// repair packet, it should be ignored and the RRID should be used.
|
|
std::string packet_mid, packet_rsid;
|
|
- bool has_mid = use_mid_ && packet.GetExtension<RtpMid>(&packet_mid);
|
|
+ //bool has_mid = use_mid_ && packet.GetExtension<RtpMid>(&packet_mid);
|
|
bool has_rsid = packet.GetExtension<RepairedRtpStreamId>(&packet_rsid);
|
|
if (!has_rsid) {
|
|
has_rsid = packet.GetExtension<RtpStreamId>(&packet_rsid);
|
|
}
|
|
uint32_t ssrc = packet.Ssrc();
|
|
|
|
+ // Mid support is half-baked in branch 64. RtpStreamReceiverController only
|
|
+ // supports adding sinks by ssrc, so our mids will never show up in
|
|
+ // known_mids_, causing us to drop packets here.
|
|
+#if 0
|
|
// The BUNDLE spec says to drop any packets with unknown MIDs, even if the
|
|
// SSRC is known/latched.
|
|
if (has_mid && known_mids_.find(packet_mid) == known_mids_.end()) {
|
|
@@ -352,6 +356,7 @@ RtpPacketSinkInterface* RtpDemuxer::ResolveSink(
|
|
}
|
|
}
|
|
|
|
+#endif
|
|
// We trust signaled SSRC more than payload type which is likely to conflict
|
|
// between streams.
|
|
const auto ssrc_sink_it = sink_by_ssrc_.find(ssrc);
|
|
--
|
|
2.34.1
|
|
|