[Bug 722767] element: add function to sync element state with target state of the parent

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Feb 12 13:18:07 PST 2014


https://bugzilla.gnome.org/show_bug.cgi?id=722767
  GStreamer | gstreamer (core) | 1.x

--- Comment #6 from Miguel París Díaz <mparisdiaz at gmail.com> 2014-02-12 21:18:01 UTC ---
In other hand, with the current implementation we have the next problem with a
sinkelement if it does not receive the preroll:

1) set_state(bin, PLAYING)
2) bin goes to PLAYING
3) sinkelement (child_0) is added, sync_state_with_parent() =>
set_state(child_0, PLAYING)
4) child_0 goes to READY (blocked waiting for preroll), so parent syncs with
its child and goes to READY.
5) another element (child_1) is added, sync_state_with_parent() =>
set_state(child_1, READY)
6) child_1 goes to READY
...

If the sink element does not receive a preroll the other elements in the bin
are blocked, and if the generation of buffers (so the preroll) depends on a
expected state never reached, the pipe has a "deadlock".

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