From 6a6f90e745b2d3e629bafa7b5d255e5d006e7ff3 Mon Sep 17 00:00:00 2001 From: Robert Swain Date: Wed, 6 Oct 2010 11:29:55 +0200 Subject: [PATCH] deinterlace: Fix required fields logic Both history_count and fields_required count from 1. As per the while loop condition that follows this code, to perform the deinterlacing method, we need history_count >= fields_required fields in the history. Therefore if we have history_count < fields_required (not fields_required + 1), we need more fields. --- gst/deinterlace/gstdeinterlace.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gst/deinterlace/gstdeinterlace.c b/gst/deinterlace/gstdeinterlace.c index a305b74f18..3c54e241f5 100644 --- a/gst/deinterlace/gstdeinterlace.c +++ b/gst/deinterlace/gstdeinterlace.c @@ -980,9 +980,9 @@ gst_deinterlace_chain (GstPad * pad, GstBuffer * buf) fields_required = gst_deinterlace_method_get_fields_required (self->method); /* Not enough fields in the history */ - if (self->history_count < fields_required + 1) { + if (self->history_count < fields_required) { GST_DEBUG_OBJECT (self, "Need more fields (have %d, need %d)", - self->history_count, fields_required + 1); + self->history_count, fields_required); return GST_FLOW_OK; }