From: Vivia Nikolaidou Date: Thu, 18 Jun 2020 17:41:35 +0000 (+0300) Subject: interlace: Add FIXME comment about false passthrough bug X-Git-Tag: 1.19.3~507^2~1704 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0c63c8d1f543ff6c0801c71c6c11d5f9425560d1;p=platform%2Fupstream%2Fgstreamer.git interlace: Add FIXME comment about false passthrough bug If interlace-mode is missing from upstream caps, we can falsely do passthrough when in fact we'd have to switch fields. Part-of: --- diff --git a/gst/interlace/gstinterlace.c b/gst/interlace/gstinterlace.c index a15de74..31760ac 100644 --- a/gst/interlace/gstinterlace.c +++ b/gst/interlace/gstinterlace.c @@ -453,6 +453,13 @@ gst_interlace_setcaps (GstInterlace * interlace, GstCaps * caps) } if (gst_caps_can_intersect (caps, othercaps)) { + /* FIXME: field-order is optional in the caps. This means that, if we're + * in a non-telecine mode and we have TFF upstream and + * top-field-first=FALSE in interlace (or the other way around), AND + * field-order isn't mentioned in the caps, we will do passthrough here + * and end up outptuting wrong data. Must detect missing field-order info + * and not do passthrough in that case, but instead check the + * GstVideoBufferFlags at the switch_fields check */ interlace->passthrough = TRUE; } else { if (GST_VIDEO_INFO_IS_INTERLACED (&info)) {