rtpjitterbuffer: set correct expected time
authorWim Taymans <wim.taymans@collabora.co.uk>
Fri, 20 Sep 2013 08:42:27 +0000 (10:42 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Mon, 23 Sep 2013 12:45:23 +0000 (14:45 +0200)
When we already have a timer for a packet, skip it but don't forget to adjust
the dts to the expected dts of the next packet.

gst/rtpmanager/gstrtpjitterbuffer.c

index a5d0692..d44ecbc 100644 (file)
@@ -1783,8 +1783,10 @@ calculate_expected (GstRtpJitterBuffer * jitterbuffer, guint32 expected,
   if (priv->do_retransmission) {
     type = TIMER_TYPE_EXPECTED;
     /* if we had a timer for the first missing packet, leave it. */
-    if (find_timer (jitterbuffer, type, expected))
+    if (find_timer (jitterbuffer, type, expected)) {
       expected++;
+      expected_dts += duration;
+    }
   } else {
     type = TIMER_TYPE_LOST;
   }