Index: webrtc/modules/rtp_rtcp/source/rtp_sender.cc |
diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc |
index 36915c53afeb7fdf9c3a18bf7de53ce4d7f67f84..2bff097d63a6a974cc3054984cd7624007586fbe 100644 |
--- a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc |
+++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc |
@@ -787,14 +787,18 @@ void RTPSender::UpdateRtpStats(const RtpPacketToSend& packet, |
} |
bool RTPSender::IsFecPacket(const RtpPacketToSend& packet) const { |
- if (!video_) { |
+ if (!video_) |
return false; |
- } |
+ |
+ // FlexFEC. |
+ if (packet.Ssrc() == FlexfecSsrc()) |
+ return true; |
+ |
+ // RED+ULPFEC. |
int pt_red; |
int pt_fec; |
video_->GetUlpfecConfig(&pt_red, &pt_fec); |
- const bool fec_enabled = (pt_fec != -1); |
- return fec_enabled && static_cast<int>(packet.PayloadType()) == pt_red && |
+ return static_cast<int>(packet.PayloadType()) == pt_red && |
static_cast<int>(packet.payload()[0]) == pt_fec; |
} |