summaryrefslogtreecommitdiff
path: root/gst
diff options
context:
space:
mode:
authorLuis de Bethencourt <luis@debethencourt.com>2015-08-15 14:45:34 +0100
committerLuis de Bethencourt <luis@debethencourt.com>2015-08-15 14:45:37 +0100
commit4075b1112cd00d7758b208abeab5afa5ef0bbcbe (patch)
tree3272609061664b0ed85a849ec67e620e0f859709 /gst
parent5b2ddfb90cadf5d634be1c1b4759a703f5f9e6dd (diff)
downloadgstreamer-plugins-bad-4075b1112cd00d7758b208abeab5afa5ef0bbcbe.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
Diffstat (limited to 'gst')
-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 =