[Bug 765736] New: multiqueue: playback with sparse stream deadlocks
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Thu Apr 28 17:14:10 UTC 2016
https://bugzilla.gnome.org/show_bug.cgi?id=765736
Bug ID: 765736
Summary: multiqueue: playback with sparse stream deadlocks
Classification: Platform
Product: GStreamer
Version: git master
OS: All
Status: NEW
Severity: major
Priority: Normal
Component: gstreamer (core)
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: matej.knopp at gmail.com
QA Contact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Created attachment 326958
--> https://bugzilla.gnome.org/attachment.cgi?id=326958&action=edit
Patch
Basically, sq->max_size.visible is never increased for sparse streams in
overruncb when empty queue has been found;
This code inside single_queue_overrun_cb doesn't seem right
/* check if we reached the hard time/bytes limits */
if (sq->is_eos || sq->is_sparse || IS_FILLED (sq, bytes, size.bytes) ||
IS_FILLED (sq, time, sq->cur_time)) {
goto done;
}
If the queue is sparse it just skip the entire logic determining whether
max_size.visible should be increased, deadlocking the demuxer.
I think what should be done instead is that when determining if limits have
bean reached, to ignore time for sparse streams, as the buffer may be far in
the future.
--
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