videoaggregator: Set video-meta option on buffer pool configuration correctly
authorSebastian Dröge <sebastian@centricular.com>
Mon, 7 May 2018 14:53:32 +0000 (17:53 +0300)
committerSebastian Dröge <sebastian@centricular.com>
Mon, 7 May 2018 14:53:32 +0000 (17:53 +0300)
CID 1435451

gst-libs/gst/video/gstvideoaggregator.c

index 240602f..8474f2d 100644 (file)
@@ -2292,6 +2292,10 @@ gst_video_aggregator_decide_allocation (GstAggregator * agg, GstQuery * query)
 
   gst_buffer_pool_config_set_params (config, caps, size, min, max);
   gst_buffer_pool_config_set_allocator (config, allocator, &params);
+  if (gst_query_find_allocation_meta (query, GST_VIDEO_META_API_TYPE, NULL)) {
+    gst_buffer_pool_config_add_option (config,
+        GST_BUFFER_POOL_OPTION_VIDEO_META);
+  }
 
   /* buffer pool may have to do some changes */
   if (!gst_buffer_pool_set_config (pool, config)) {
@@ -2305,17 +2309,17 @@ gst_video_aggregator_decide_allocation (GstAggregator * agg, GstQuery * query)
       pool = gst_video_buffer_pool_new ();
       gst_buffer_pool_config_set_params (config, caps, size, min, max);
       gst_buffer_pool_config_set_allocator (config, allocator, &params);
+
+      if (gst_query_find_allocation_meta (query, GST_VIDEO_META_API_TYPE, NULL)) {
+        gst_buffer_pool_config_add_option (config,
+            GST_BUFFER_POOL_OPTION_VIDEO_META);
+      }
     }
 
     if (!gst_buffer_pool_set_config (pool, config))
       goto config_failed;
   }
 
-  if (gst_query_find_allocation_meta (query, GST_VIDEO_META_API_TYPE, NULL)) {
-    gst_buffer_pool_config_add_option (config,
-        GST_BUFFER_POOL_OPTION_VIDEO_META);
-  }
-
   if (update)
     gst_query_set_nth_allocation_pool (query, 0, pool, size, min, max);
   else