deinterlace: proxy allocation query in passthrough
authorWim Taymans <wim.taymans@collabora.co.uk>
Thu, 6 Sep 2012 11:38:52 +0000 (13:38 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Thu, 6 Sep 2012 11:38:52 +0000 (13:38 +0200)
We can let the allocation query pass when we are operating in passthrough mode.

gst/deinterlace/gstdeinterlace.c

index a3bf2a6..1d1da47 100644 (file)
@@ -2494,7 +2494,8 @@ gst_deinterlace_sink_query (GstPad * pad, GstObject * parent, GstQuery * query)
   GST_LOG_OBJECT (pad, "%s query", GST_QUERY_TYPE_NAME (query));
 
   switch (GST_QUERY_TYPE (query)) {
-    case GST_QUERY_CAPS:{
+    case GST_QUERY_CAPS:
+    {
       GstCaps *filter, *caps;
 
       gst_query_parse_caps (query, &filter);
@@ -2503,6 +2504,12 @@ gst_deinterlace_sink_query (GstPad * pad, GstObject * parent, GstQuery * query)
       res = TRUE;
       break;
     }
+    case GST_QUERY_ALLOCATION:
+      if (self->passthrough)
+        res = gst_pad_peer_query (self->srcpad, query);
+      else
+        res = gst_pad_query_default (pad, parent, query);
+      break;
     default:
       res = gst_pad_query_default (pad, parent, query);
       break;