rtpbasepayload: Update current seqnum for buffer lists
authorLinus Svensson <linussn@axis.com>
Tue, 16 Oct 2018 10:31:57 +0000 (12:31 +0200)
committerSebastian Dröge <slomo@coaxion.net>
Wed, 14 Nov 2018 12:30:06 +0000 (12:30 +0000)
The current sequence number will be the one from the first RTP buffer
when a buffer list is pushed, but should be the last one.

Fixes #495

gst-libs/gst/rtp/gstrtpbasepayload.c

index 23129d9ea87f0de388951e06f4b58f4f99dc29f6..352e8621dbe0088422cabb092e317749a8ae633e 100644 (file)
@@ -1306,6 +1306,8 @@ gst_rtp_base_payload_prepare_push (GstRTPBasePayload * payload,
   if (is_list) {
     gst_buffer_list_foreach (GST_BUFFER_LIST_CAST (obj), set_headers, &data);
     gst_buffer_list_foreach (GST_BUFFER_LIST_CAST (obj), filter_meta, NULL);
+    /* sequence number has increased more if this was a buffer list */
+    payload->seqnum = data.seqnum - 1;
   } else {
     GstBuffer *buf = GST_BUFFER_CAST (obj);
     set_headers (&buf, 0, &data);