summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Dufresne <nicolas.dufresne@collabora.com>2015-08-24 19:28:10 -0400
committerNicolas Dufresne <nicolas.dufresne@collabora.com>2015-08-25 13:20:52 -0400
commitb06fc679baec687fb8e9923231224b4e339d32d6 (patch)
tree29af4300d77ae7e5d1b3ce1e4503229507a9e736
parent5c106c0c2af22192fdc2ffbf110795f738e5adb6 (diff)
glcolorconvert: Use base transform metadata copy
Use base class default method instead of only copying flags and timestamp. This way, selected meta's like compostion overlay will be passed downstream as expected. https://bugzilla.gnome.org/show_bug.cgi?id=754047
-rw-r--r--ext/gl/gstglcolorconvertelement.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/ext/gl/gstglcolorconvertelement.c b/ext/gl/gstglcolorconvertelement.c
index 09e739d87..e4ff6ca34 100644
--- a/ext/gl/gstglcolorconvertelement.c
+++ b/ext/gl/gstglcolorconvertelement.c
@@ -201,6 +201,9 @@ gst_gl_color_convert_element_prepare_output_buffer (GstBaseTransform * bt,
GstBuffer * inbuf, GstBuffer ** outbuf)
{
GstGLColorConvertElement *convert = GST_GL_COLOR_CONVERT_ELEMENT (bt);
+ GstBaseTransformClass *bclass;
+
+ bclass = GST_BASE_TRANSFORM_GET_CLASS (bt);
if (gst_base_transform_is_passthrough (bt)) {
*outbuf = inbuf;
@@ -220,8 +223,8 @@ gst_gl_color_convert_element_prepare_output_buffer (GstBaseTransform * bt,
/* basetransform doesn't unref if they're the same */
if (inbuf == *outbuf)
gst_buffer_unref (*outbuf);
- gst_buffer_copy_into (*outbuf, inbuf,
- GST_BUFFER_COPY_FLAGS | GST_BUFFER_COPY_TIMESTAMPS, 0, -1);
+ else
+ bclass->copy_metadata (bt, inbuf, *outbuf);
return GST_FLOW_OK;
}