summaryrefslogtreecommitdiff
path: root/ext/vulkan
diff options
context:
space:
mode:
authorMatthew Waters <matthew@centricular.com>2016-04-09 17:52:28 +1000
committerMatthew Waters <matthew@centricular.com>2016-04-11 14:18:47 +1000
commitb76fcfd3f71ca82ce5bc8323b8ca236721675825 (patch)
treed7fbcdbe41ffa40fde6f3276976e8ad8fe48664c /ext/vulkan
parentb73d2586ceeb5b70bb840398f1fb70ccf8a2c386 (diff)
vkupload: copy necessary buffer metadata
timestamps, flags, etc
Diffstat (limited to 'ext/vulkan')
-rw-r--r--ext/vulkan/vkupload.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/vulkan/vkupload.c b/ext/vulkan/vkupload.c
index 95c36cfb2..c0f0a9791 100644
--- a/ext/vulkan/vkupload.c
+++ b/ext/vulkan/vkupload.c
@@ -787,6 +787,7 @@ static GstFlowReturn
gst_vulkan_upload_prepare_output_buffer (GstBaseTransform * bt,
GstBuffer * inbuf, GstBuffer ** outbuf)
{
+ GstBaseTransformClass *bclass = GST_BASE_TRANSFORM_GET_CLASS (bt);
GstVulkanUpload *vk_upload = GST_VULKAN_UPLOAD (bt);
GstFlowReturn ret;
@@ -818,6 +819,12 @@ gst_vulkan_upload_prepare_output_buffer (GstBaseTransform * bt,
}
} while (FALSE);
+ if (ret == GST_FLOW_OK) {
+ /* basetransform doesn't unref if they're the same */
+ if (inbuf != *outbuf)
+ bclass->copy_metadata (bt, inbuf, *outbuf);
+ }
+
return ret;
}