diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc index 28c6867a34..9c0d66d1af 100644 --- a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc +++ b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc @@ -1263,7 +1263,7 @@ void RTCPReceiver::TriggerCallbacksFromRTCPPacket( if (rtcpPacketInformation.nackSequenceNumbers.size() > 0) { LOG(LS_VERBOSE) << "Incoming NACK length: " << rtcpPacketInformation.nackSequenceNumbers.size(); - _rtpRtcp.OnReceivedNACK(rtcpPacketInformation.nackSequenceNumbers); + _rtpRtcp.OnReceivedNack(rtcpPacketInformation.nackSequenceNumbers); } } { diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_receiver_help.h b/webrtc/modules/rtp_rtcp/source/rtcp_receiver_help.h index 5b2eb6647e..35db67c104 100644 --- a/webrtc/modules/rtp_rtcp/source/rtcp_receiver_help.h +++ b/webrtc/modules/rtp_rtcp/source/rtcp_receiver_help.h @@ -11,7 +11,6 @@ #ifndef WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_RECEIVER_HELP_H_ #define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_RECEIVER_HELP_H_ -#include #include #include #include @@ -61,7 +60,7 @@ class RTCPPacketInformation { uint32_t rtcpPacketTypeFlags; // RTCPPacketTypeFlags bit field uint32_t remoteSSRC; - std::list nackSequenceNumbers; + std::vector nackSequenceNumbers; uint8_t applicationSubType; uint32_t applicationName; diff --git a/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.cc b/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.cc index bf151d27ab..ba7ca7e621 100644 --- a/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.cc +++ b/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.cc @@ -870,8 +870,8 @@ int32_t ModuleRtpRtcpImpl::SendRTCPReferencePictureSelection( GetFeedbackState(), kRtcpRpsi, 0, 0, false, picture_id); } -void ModuleRtpRtcpImpl::OnReceivedNACK( - const std::list& nack_sequence_numbers) { +void ModuleRtpRtcpImpl::OnReceivedNack( + const std::vector& nack_sequence_numbers) { for (uint16_t nack_sequence_number : nack_sequence_numbers) { send_loss_stats_.AddLostPacket(nack_sequence_number); } @@ -884,7 +884,7 @@ void ModuleRtpRtcpImpl::OnReceivedNACK( if (rtt == 0) { rtcp_receiver_.RTT(rtcp_receiver_.RemoteSSRC(), NULL, &rtt, NULL, NULL); } - rtp_sender_.OnReceivedNACK(nack_sequence_numbers, rtt); + rtp_sender_.OnReceivedNack(nack_sequence_numbers, rtt); } void ModuleRtpRtcpImpl::OnReceivedRtcpReportBlocks( diff --git a/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.h b/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.h index f8fb21130c..80e76e36bf 100644 --- a/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.h +++ b/webrtc/modules/rtp_rtcp/source/rtp_rtcp_impl.h @@ -11,7 +11,6 @@ #ifndef WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RTCP_IMPL_H_ #define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_RTCP_IMPL_H_ -#include #include #include #include @@ -312,7 +311,7 @@ class ModuleRtpRtcpImpl : public RtpRtcp { StreamDataCountersCallback* GetSendChannelRtpStatisticsCallback() const override; - void OnReceivedNACK(const std::list& nack_sequence_numbers); + void OnReceivedNack(const std::vector& nack_sequence_numbers); void OnReceivedRtcpReportBlocks(const ReportBlockList& report_blocks); void OnRequestSendReport(); diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc index 1f685428ef..5a0dc13a6d 100644 --- a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc +++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc @@ -721,8 +721,9 @@ int RTPSender::SetSelectiveRetransmissions(uint8_t settings) { return 0; } -void RTPSender::OnReceivedNACK(const std::list& nack_sequence_numbers, - int64_t avg_rtt) { +void RTPSender::OnReceivedNack( + const std::vector& nack_sequence_numbers, + int64_t avg_rtt) { TRACE_EVENT2(TRACE_DISABLED_BY_DEFAULT("webrtc_rtp"), "RTPSender::OnReceivedNACK", "num_seqnum", nack_sequence_numbers.size(), "avg_rtt", avg_rtt); diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender.h b/webrtc/modules/rtp_rtcp/source/rtp_sender.h index e1dfa9bb32..7a6677b408 100644 --- a/webrtc/modules/rtp_rtcp/source/rtp_sender.h +++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.h @@ -11,7 +11,6 @@ #ifndef WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_SENDER_H_ #define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTP_SENDER_H_ -#include #include #include #include @@ -183,7 +182,7 @@ class RTPSender { // NACK. int SelectiveRetransmissions() const; int SetSelectiveRetransmissions(uint8_t settings); - void OnReceivedNACK(const std::list& nack_sequence_numbers, + void OnReceivedNack(const std::vector& nack_sequence_numbers, int64_t avg_rtt); void SetStorePacketsStatus(bool enable, uint16_t number_to_store); diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender_unittest.cc b/webrtc/modules/rtp_rtcp/source/rtp_sender_unittest.cc index 41b52a200c..e11bf1ee5a 100644 --- a/webrtc/modules/rtp_rtcp/source/rtp_sender_unittest.cc +++ b/webrtc/modules/rtp_rtcp/source/rtp_sender_unittest.cc @@ -8,7 +8,6 @@ * be found in the AUTHORS file in the root of the source tree. */ -#include #include #include @@ -1637,7 +1636,7 @@ TEST_F(RtpSenderTestWithoutPacer, RespectsNackBitrateLimit) { rtp_sender_->SetStorePacketsStatus(true, kNumPackets); const uint16_t kStartSequenceNumber = rtp_sender_->SequenceNumber(); - std::list sequence_numbers; + std::vector sequence_numbers; for (int32_t i = 0; i < kNumPackets; ++i) { sequence_numbers.push_back(kStartSequenceNumber + i); fake_clock_.AdvanceTimeMilliseconds(1); @@ -1650,14 +1649,14 @@ TEST_F(RtpSenderTestWithoutPacer, RespectsNackBitrateLimit) { // Resending should work - brings the bandwidth up to the limit. // NACK bitrate is capped to the same bitrate as the encoder, since the max // protection overhead is 50% (see MediaOptimization::SetTargetRates). - rtp_sender_->OnReceivedNACK(sequence_numbers, 0); + rtp_sender_->OnReceivedNack(sequence_numbers, 0); EXPECT_EQ(kNumPackets * 2, transport_.packets_sent_); // Must be at least 5ms in between retransmission attempts. fake_clock_.AdvanceTimeMilliseconds(5); // Resending should not work, bandwidth exceeded. - rtp_sender_->OnReceivedNACK(sequence_numbers, 0); + rtp_sender_->OnReceivedNack(sequence_numbers, 0); EXPECT_EQ(kNumPackets * 2, transport_.packets_sent_); }