From bf89c80d74f424e54a401243513781c73d0a6e6d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20Dr=C3=B6ge?= Date: Fri, 29 Apr 2022 19:08:46 +0300 Subject: [PATCH] interlace: Also handle a missing "interlace-mode" field as progressive Otherwise caps negotiation will fail in situations that are supposed to work, like: "video/x-raw,framerate=(fraction)60/1" ! interlace field-pattern=0 ! "video/x-raw,framerate=(fraction)30/1" Part-of: --- subprojects/gst-plugins-bad/gst/interlace/gstinterlace.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/subprojects/gst-plugins-bad/gst/interlace/gstinterlace.c b/subprojects/gst-plugins-bad/gst/interlace/gstinterlace.c index bf7cbfe..ca22e74 100644 --- a/subprojects/gst-plugins-bad/gst/interlace/gstinterlace.c +++ b/subprojects/gst-plugins-bad/gst/interlace/gstinterlace.c @@ -775,7 +775,8 @@ gst_interlace_caps_double_framerate (GstCaps * caps, gboolean half, interlace_mode = gst_structure_get_string (s, "interlace-mode"); /* Do not double the framerate for interlaced - we will either passthrough * or fail to negotiate */ - if (skip_progressive && (g_strcmp0 (interlace_mode, "progressive") != 0)) + if (skip_progressive && (interlace_mode + && g_strcmp0 (interlace_mode, "progressive") != 0)) continue; if (G_VALUE_TYPE (val) == GST_TYPE_FRACTION) { -- 2.7.4