deinterlace: Fix telecine/onefield mixup
authorVivia Nikolaidou <vivia@ahiru.eu>
Sat, 30 Jan 2021 14:16:13 +0000 (16:16 +0200)
committerVivia Nikolaidou <vivia@ahiru.eu>
Wed, 3 Feb 2021 14:30:15 +0000 (16:30 +0200)
https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/838

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

gst/deinterlace/gstdeinterlacemethod.c

index 105a73f..24893f8 100644 (file)
@@ -335,8 +335,8 @@ get_line (LinesGetter * lg, gint field_offset, guint plane, gint line,
 
   /* Now frame already refers to the field we want, the correct one is taken
    * from the history */
-  if (GST_VIDEO_FRAME_FLAG_IS_SET (frame, GST_VIDEO_FRAME_FLAG_TOP_FIELD) ||
-      GST_VIDEO_FRAME_FLAG_IS_SET (frame, GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD)) {
+  if (GST_VIDEO_INFO_INTERLACE_MODE (&frame->info) ==
+      GST_VIDEO_INTERLACE_MODE_ALTERNATE) {
     /* Alternate frame containing a single field, adjust the line index */
     line /= 2;
     switch (line_offset) {