aboutsummaryrefslogtreecommitdiff
path: root/modules/congestion_controller/rtp/transport_feedback_demuxer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'modules/congestion_controller/rtp/transport_feedback_demuxer.cc')
-rw-r--r--modules/congestion_controller/rtp/transport_feedback_demuxer.cc19
1 files changed, 10 insertions, 9 deletions
diff --git a/modules/congestion_controller/rtp/transport_feedback_demuxer.cc b/modules/congestion_controller/rtp/transport_feedback_demuxer.cc
index c958a1c3cb..6ab3ad80fa 100644
--- a/modules/congestion_controller/rtp/transport_feedback_demuxer.cc
+++ b/modules/congestion_controller/rtp/transport_feedback_demuxer.cc
@@ -38,15 +38,16 @@ void TransportFeedbackDemuxer::DeRegisterStreamFeedbackObserver(
void TransportFeedbackDemuxer::AddPacket(const RtpPacketSendInfo& packet_info) {
MutexLock lock(&lock_);
- if (packet_info.ssrc != 0) {
- StreamFeedbackObserver::StreamPacketInfo info;
- info.ssrc = packet_info.ssrc;
- info.rtp_sequence_number = packet_info.rtp_sequence_number;
- info.received = false;
- history_.insert(
- {seq_num_unwrapper_.Unwrap(packet_info.transport_sequence_number),
- info});
- }
+
+ StreamFeedbackObserver::StreamPacketInfo info;
+ info.ssrc = packet_info.media_ssrc;
+ info.rtp_sequence_number = packet_info.rtp_sequence_number;
+ info.received = false;
+ info.is_retransmission =
+ packet_info.packet_type == RtpPacketMediaType::kRetransmission;
+ history_.insert(
+ {seq_num_unwrapper_.Unwrap(packet_info.transport_sequence_number), info});
+
while (history_.size() > kMaxPacketsInHistory) {
history_.erase(history_.begin());
}