summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuis de Bethencourt <luis@debethencourt.com>2015-08-15 14:45:34 +0100
committerTim-Philipp Müller <tim@centricular.com>2016-02-16 00:24:41 +0000
commit1e55d0d725c4f86fddcbbf3663f1edc65b6aae54 (patch)
treec4b661e4c3f7de6059f40dd48cf2c19a06e13849
parent8611645af66a66326fd081adf209d025e1050a6f (diff)
downloadgstreamer-plugins-good-1e55d0d725c4f86fddcbbf3663f1edc65b6aae54.tar.gz
rtph265pay: Copy metadata in the payloader, but only the relevant ones
The payloader didn't copy anything so far, the depayloader copied every possible meta. Let's make it consistent and just copy all metas without tags or with only the video tag. https://bugzilla.gnome.org/show_bug.cgi?id=751774
-rw-r--r--gst/rtp/gstrtph265pay.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/gst/rtp/gstrtph265pay.c b/gst/rtp/gstrtph265pay.c
index 549deb8d9..b17b09161 100644
--- a/gst/rtp/gstrtph265pay.c
+++ b/gst/rtp/gstrtph265pay.c
@@ -27,6 +27,7 @@
#include <gst/rtp/gstrtpbuffer.h>
#include <gst/pbutils/pbutils.h>
+#include <gst/video/video.h>
/* Included to not duplicate gst_rtp_h265_add_vps_sps_pps () */
#include "gstrtph265depay.h"
@@ -1027,6 +1028,8 @@ gst_rtp_h265_pay_payload_nal (GstRTPBasePayload * basepayload,
GST_BUFFER_DTS (outbuf) = dts;
/* insert payload memory block */
+ gst_rtp_copy_meta (GST_ELEMENT_CAST (rtph265pay), outbuf, paybuf,
+ g_quark_from_static_string (GST_META_TAG_VIDEO_STR));
outbuf = gst_buffer_append (outbuf, paybuf);
list = gst_buffer_list_new ();
@@ -1094,14 +1097,13 @@ gst_rtp_h265_pay_payload_nal (GstRTPBasePayload * basepayload,
gst_rtp_buffer_unmap (&rtp);
/* insert payload memory block */
- gst_buffer_append (outbuf,
- gst_buffer_copy_region (paybuf, GST_BUFFER_COPY_MEMORY, pos,
- limitedSize));
-
+ gst_rtp_copy_meta (GST_ELEMENT_CAST (rtph265pay), outbuf, paybuf,
+ g_quark_from_static_string (GST_META_TAG_VIDEO_STR));
+ gst_buffer_copy_into (outbuf, paybuf, GST_BUFFER_COPY_MEMORY, pos,
+ limitedSize);
/* add the buffer to the buffer list */
gst_buffer_list_add (list, outbuf);
-
size -= limitedSize;
pos += limitedSize;
ii++;
@@ -1210,7 +1212,7 @@ gst_rtp_h265_pay_handle_buffer (GstRTPBasePayload * basepayload,
end_of_au = TRUE;
}
- paybuf = gst_buffer_copy_region (buffer, GST_BUFFER_COPY_MEMORY, offset,
+ paybuf = gst_buffer_copy_region (buffer, GST_BUFFER_COPY_ALL, offset,
nal_len);
ret =