summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2015-07-01 10:50:19 +0200
committerSebastian Dröge <sebastian@centricular.com>2015-07-01 10:50:19 +0200
commit231e77338c0ffaef098d7c008a5cb9beb8f56870 (patch)
tree5b383cf5c3d09c43a2c1a35e65fc534bb86d9564
parentfefd4622a328f3ba5ac0c091e83d8fc6814edbda (diff)
transform: Also copy POOL metas and make sure to copy over metas when creating subbuffers
POOL meta just means that this specific instance of the meta is related to a pool, a copy should be made when reasonable and the flag should just not be set in the copy.
-rw-r--r--libs/gst/base/gstbasetransform.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/libs/gst/base/gstbasetransform.c b/libs/gst/base/gstbasetransform.c
index b2ef0a073..21773440e 100644
--- a/libs/gst/base/gstbasetransform.c
+++ b/libs/gst/base/gstbasetransform.c
@@ -1734,12 +1734,7 @@ foreach_metadata (GstBuffer * inbuf, GstMeta ** meta, gpointer user_data)
klass = GST_BASE_TRANSFORM_GET_CLASS (trans);
- if (GST_META_FLAG_IS_SET (*meta, GST_META_FLAG_POOLED)) {
- /* never call the transform_meta with pool private metadata */
- GST_DEBUG_OBJECT (trans, "not copying pooled metadata %s",
- g_type_name (info->api));
- do_copy = FALSE;
- } else if (gst_meta_api_type_has_tag (info->api, _gst_meta_tag_memory)) {
+ if (gst_meta_api_type_has_tag (info->api, _gst_meta_tag_memory)) {
/* never call the transform_meta with memory specific metadata */
GST_DEBUG_OBJECT (trans, "not copying memory specific metadata %s",
g_type_name (info->api));