[Bug 755169] dashdemux: can we have multiple seek events at the same time?

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Sep 22 07:33:23 PDT 2015


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

--- Comment #20 from Florin Apostol <florin.apostol at oregan.net> ---
(In reply to Vincent Penquerc'h from comment #19)
> I was implying that the copy of the list would ref the streams it contains,
> though I did not say it. This is why I had suggested adding refcounting to
> that struct. They'd be unreffed at the end of the function. So stream would
> still be valid when stream->download_error_count = 0; is called (and then be
> freed just after that, in case demux->streams was destroyed in the
> meantime). In this case, "destroyed" changes from "remove pad and free" or
> "remove pad and schedule for free" to "unref". The remove pad and
> free/schedule for free would be moved into the dispose function, from where
> they are now (places which would now unref). It's not clear to me at the
> moment whether the remove pad should be kept at the same place, or deferred
> as well.

That would work, but you still have another problem: when releasing the lock,
you allow a second seek thread to reach the gst_task_join. So you would have 2
threads, both trying to call gst_task_join (serialized using manifest lock, but
this is not important here).

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