videocrop: Fix icles tests.
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Tue, 17 Aug 2021 14:49:47 +0000 (16:49 +0200)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Tue, 17 Aug 2021 17:19:16 +0000 (17:19 +0000)
Internally videcrop can call gst_video_crop_set_info() with NULL as in
caps. Then critical messages are raised when the in caps are
processed.

To fix this the in caps are checked, and if they are present, its
capsfeature is extracted, otherwise, the previous raw caps detection
remains as before.

Also the videocrop-test removes the format field in the structure
because now its always passed.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1056>

gst/videocrop/gstvideocrop.c
tests/icles/videocrop-test.c

index cc3175f..8d4ba90 100644 (file)
@@ -802,9 +802,11 @@ gst_video_crop_set_info (GstVideoFilter * vfilter, GstCaps * in,
     GST_LOG_OBJECT (crop, "incaps = %" GST_PTR_FORMAT ", outcaps = %"
         GST_PTR_FORMAT, in, out);
 
-  features = gst_caps_get_features (in, 0);
-  crop->raw_caps = gst_caps_features_is_equal (features,
-      GST_CAPS_FEATURES_MEMORY_SYSTEM_MEMORY);
+  if (in) {
+    features = gst_caps_get_features (in, 0);
+    crop->raw_caps = gst_caps_features_is_equal (features,
+        GST_CAPS_FEATURES_MEMORY_SYSTEM_MEMORY);
+  }
 
   if (!crop->raw_caps)
     goto beach;
index 2acfa33..bf5d437 100644 (file)
@@ -156,6 +156,7 @@ video_crop_get_test_caps (GstElement * videocrop)
         FRAMERATE, 1, NULL);
     gst_structure_remove_field (new_structure, "width");
     gst_structure_remove_field (new_structure, "height");
+    gst_structure_remove_field (new_structure, "format");
     gst_caps_append_structure (single_caps, new_structure);
 
     /* should be fixed without width/height */