gst_video_convert_filter_meta (GstBaseTransform * trans, GstQuery * query,
GType api, const GstStructure * params)
{
- /* propose all metadata upstream */
+ /* This element cannot passthrough the crop meta, because it would convert the
+ * wrong sub-region of the image, and worst, our output image may not be large
+ * enough for the crop to be applied later */
+ if (api == GST_VIDEO_CROP_META_API_TYPE)
+ return FALSE;
+
+ /* propose all other metadata upstream */
return TRUE;
}
if (space->convert) {
gst_video_converter_free (space->convert);
}
+
G_OBJECT_CLASS (parent_class)->finalize (obj);
}
"doing colorspace conversion from %s -> to %s",
GST_VIDEO_INFO_NAME (&filter->in_info),
GST_VIDEO_INFO_NAME (&filter->out_info));
+
gst_video_converter_frame (space->convert, in_frame, out_frame);
return GST_FLOW_OK;