[Bug 707156] New: decodebin deadlocks multiqueue

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Fri Aug 30 15:40:29 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=707156
  GStreamer | gstreamer (core) | git

           Summary: decodebin deadlocks multiqueue
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: All
            Status: UNCONFIRMED
          Severity: major
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: matej.knopp at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


Created an attachment (id=253663)
 --> (https://bugzilla.gnome.org/attachment.cgi?id=253663)
Patch

This is hard to reproduce so hopefully the description is clear enough. If I
understand the code correctly, this is what happens:

I have a file that is not muxed very well so the max-size-buffers on single
queues needs to be increased (which happens when the other single queue is
empty).  

However later when decodebin gets overrun signal, it calls
decodebin_set_queue_size, which sets max-size-buffers on mutliqueue, which in
turn sets max-size-buffers on singlequeues to default values, disregarding the
increased size; After this happens the single queue that have previously grown
no longer accepts any buffers and pipeline deadlocks.

Now I'm not deluding myself that attached patch is a proper solution, but it
demonstrates the problem (and fixes it for me)

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list