imagefreeze: Set undefined framerate in sink getcaps function
authorSebastian Dröge <sebastian.droege@collabora.co.uk>
Sun, 28 Feb 2010 15:04:31 +0000 (16:04 +0100)
committerTim-Philipp Müller <tim.muller@collabora.co.uk>
Tue, 11 May 2010 13:31:43 +0000 (14:31 +0100)
gst/imagefreeze/gstimagefreeze.c

index ae43ac4..633ce9b 100644 (file)
@@ -251,6 +251,7 @@ gst_image_freeze_sink_getcaps (GstPad * pad)
 {
   GstImageFreeze *self = GST_IMAGE_FREEZE (gst_pad_get_parent (pad));
   GstCaps *ret, *tmp;
+  guint i, n;
 
   if (GST_PAD_CAPS (pad)) {
     ret = gst_caps_copy (GST_PAD_CAPS (pad));
@@ -265,6 +266,15 @@ gst_image_freeze_sink_getcaps (GstPad * pad)
     ret = gst_caps_copy (gst_pad_get_pad_template_caps (pad));
   }
 
+  n = gst_caps_get_size (ret);
+  for (i = 0; i < n; i++) {
+    GstStructure *s = gst_caps_get_structure (ret, i);
+
+    gst_structure_remove_field (s, "framerate");
+    gst_structure_set (s, "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, G_MAXINT,
+        1, NULL);
+  }
+
 done:
   gst_object_unref (self);