After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 695644 - deinterlace: going to infinite loop on EOS with method=scalerbob fields=bff
deinterlace: going to infinite loop on EOS with method=scalerbob fields=bff
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
1.0.5
Other All
: Normal major
: 1.0.6
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-03-11 17:53 UTC by Kishore Arepalli
Modified: 2013-03-17 18:16 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
deinterlace log (58.76 KB, text/plain)
2013-03-11 17:54 UTC, Kishore Arepalli
  Details
fix for infinite loop (578 bytes, patch)
2013-03-14 11:59 UTC, Kishore Arepalli
none Details | Review
fix for infinite loop (969 bytes, patch)
2013-03-14 13:22 UTC, Kishore Arepalli
committed Details | Review

Description Kishore Arepalli 2013-03-11 17:53:14 UTC
In the following pipeline, deinterlace element is going to infinite loop on EOS:

gst-launch-1.0 filesrc location=dv1.avi ! avidemux ! dvdemux ! dvdec ! deinterlace method=scalerbob fields=bff ! autovideosink

It happens only when method and fields properties are set on deinterlace element.
Comment 1 Kishore Arepalli 2013-03-11 17:54:16 UTC
Created attachment 238606 [details]
deinterlace log
Comment 2 Kishore Arepalli 2013-03-14 11:59:24 UTC
Created attachment 238865 [details] [review]
fix for infinite loop
Comment 3 Tim-Philipp Müller 2013-03-14 12:13:00 UTC
Thanks! Is there any chance you could create a patch in git format-patch format?

Commit it locally first (make sure your name/e-mail are set up properly), then use

  git format-patch -1

to create a patch from the last commit.

It would also be great if you could explain the bug/patch a bit in the commit message, that will make it easier to review.
Comment 4 Kishore Arepalli 2013-03-14 13:22:23 UTC
Created attachment 238870 [details] [review]
fix for infinite loop

Fixes problem of infinite loop in gst_deinterlace_reset_history.
Last field in the history was never deinterlaced because idx becomes negative.
Comment 5 Tim-Philipp Müller 2013-03-17 14:49:03 UTC
Great, thanks!

 commit 288e05c99dc5ba6ca04343429e3cc7b1162f3e83
 Author: Kishore Arepalli <kishore.arepalli@gmail.com>
 Date:   Thu Mar 14 14:12:05 2013 +0100

    deinterlace: fix infinite loop on EOS with non-default methods or fields
    
    Fixes problem of infinite loop in gst_deinterlace_reset_history.
    Last field in the history was never deinterlaced because idx becomes negative.
    
    Happens e.g. with method=scalerbob fields=bottom or
    method=greedyl fields=top
    
    https://bugzilla.gnome.org/show_bug.cgi?id=695644
    https://bugzilla.gnome.org/show_bug.cgi?id=693173
Comment 6 David Schleef 2013-03-17 18:16:57 UTC
Would this affect https://bugzilla.gnome.org/show_bug.cgi?id=617778 at all?