[Bug 767461] splitmuxsink: Deadlock on serialized queries

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Jun 9 18:23:42 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=767461

--- Comment #4 from Xavier Claessens <xclaesse at gmail.com> ---
Ok, this time the condition works. The condition is a bit tricky in the case
ctx->in_running_time == splitmux->max_out_running_time. That can mean many
things:

1) No buffer ever got received, in that case they are both 0. That's the
principal case where allocation queries could happen. In that case we must PASS
the query.

2) We received only the first buffer and it has a running_time of 0 (that's
valid, AFAIK, right?). In that case we must DROP the query.

3) The last buffer received was a keyframe and it won't be allowed to leave the
queue until we received an 2nd keyframe. In that case we must DROP the query.

In case 2 and 3 ctx->queued_bufs could be empty if previous GOP already had
time to leave the queue and the first buffer of next GOP (a keyframe) already
got popped and it waits in complete_or_wait_on_out().

-- 
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