From 9b82dced8dd72b1cba12fac396dfdc0dfc5418b6 Mon Sep 17 00:00:00 2001 From: "pbos@webrtc.org" Date: Tue, 16 Jul 2013 13:03:35 +0000 Subject: [PATCH] Make sure first RTP packet counts as in-order. BUG= R=henrika@webrtc.org Review URL: https://webrtc-codereview.appspot.com/1811004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@4350 4adac7df-926f-26a2-2b94-8c16560cd09d --- webrtc/modules/rtp_rtcp/source/rtp_receiver_impl.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/webrtc/modules/rtp_rtcp/source/rtp_receiver_impl.cc b/webrtc/modules/rtp_rtcp/source/rtp_receiver_impl.cc index 1b1d5dbc5..f1d2ccf3d 100644 --- a/webrtc/modules/rtp_rtcp/source/rtp_receiver_impl.cc +++ b/webrtc/modules/rtp_rtcp/source/rtp_receiver_impl.cc @@ -84,7 +84,8 @@ RtpReceiverImpl::RtpReceiverImpl(int32_t id, rtx_(false), ssrc_rtx_(0), payload_type_rtx_(-1) { - assert(incoming_audio_messages_callback && incoming_messages_callback); + assert(incoming_audio_messages_callback); + assert(incoming_messages_callback); memset(current_remote_csrc_, 0, sizeof(current_remote_csrc_)); @@ -368,6 +369,11 @@ bool RtpReceiverImpl::RetransmitOfOldPacket(const RTPHeader& header, bool RtpReceiverImpl::InOrderPacket(const uint16_t sequence_number) const { CriticalSectionScoped cs(critical_section_rtp_receiver_); + + // First packet is always in order. + if (last_receive_time_ == 0) + return true; + if (IsNewerSequenceNumber(sequence_number, last_received_sequence_number_)) { return true; } else {