jitterbuffer: only timeout EXPECTED timers on gap
authorWim Taymans <wim.taymans@collabora.co.uk>
Tue, 27 Aug 2013 07:33:03 +0000 (09:33 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Tue, 27 Aug 2013 07:44:18 +0000 (09:44 +0200)
Only timeout the EXPECTED timers when we detect a large seqnum gap.

gst/rtpmanager/gstrtpjitterbuffer.c

index 9d2645e1ff004b61d5d40c8690967f60143be954..d56d6af6ffe7699a40f7292842c8af86f5de7278 100644 (file)
@@ -1604,7 +1604,7 @@ update_timers (GstRtpJitterBuffer * jitterbuffer, guint16 seqnum,
     } else if (gap > priv->rtx_delay_reorder) {
       /* max gap, we exceeded the max reorder distance and we don't expect the
        * missing packet to be this reordered */
-      if (test->rtx_retry == 0)
+      if (test->rtx_retry == 0 && test->type == TIMER_TYPE_EXPECTED)
         reschedule_timer (jitterbuffer, test, test->seqnum, -1);
     }
   }