[Bug 774254] vaapi: deadlock during seek of certain media in gst-validate

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Nov 17 10:04:14 UTC 2016


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

--- Comment #7 from Víctor Manuel Jáquez Leal <vjaquez at igalia.com> ---
(In reply to Hyunjun Ko from comment #6)
> (In reply to Víctor Manuel Jáquez Leal from comment #5)
> > Did you check why gst_adapter_prev_pts() [1] is returning
> > GST_CLOCK_TIME_NONE? is it because the frame is a DISCONT?
> > 
> > 1.
> > https://cgit.freedesktop.org/gstreamer/gstreamer-vaapi/tree/gst-libs/gst/
> > vaapi/gstvaapidecoder.c#n334
> 
> Well, as far as I see, decode_step is not used at all except for test
> decoder in tests/

You're right. We should get rid of all the rotten/unused code in libgstvaapi.

> Because video pipeline is trying to push buffers downstream even though the 
> buffer has invalid pts. Pushing buffer succeeds after change with guessed pts. 
> But after some push, surface exhaustion happens finally.

We should rethink the whole surface_ready_mutex mechanism.

> With libav decoder, the video frames(with invalid pts) are all dropped and 
> working fine.

Where does libav do that?

I only see the "ghost" frame removal: 
https://cgit.freedesktop.org/gstreamer/gst-libav/tree/ext/libav/gstavviddec.c#n1583

I don't know, perhaps that's our problem.

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