[Bug 719437] ghostpad: Clearing ghostpad sticky events when switching targets causes regressions

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Fri Nov 29 03:46:30 PST 2013


https://bugzilla.gnome.org/show_bug.cgi?id=719437
  GStreamer | gstreamer (core) | git

Sebastian Dröge (slomo) <slomo> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |slomo at coaxion.net,
                   |                            |wim.taymans at gmail.com
            Summary|A recent patch in           |ghostpad: Clearing ghostpad
                   |gstghostpad causes gnonlin  |sticky events when
                   |tests to racily fail.       |switching targets causes
                   |                            |regressions

--- Comment #2 from Sebastian Dröge (slomo) <slomo at coaxion.net> 2013-11-29 11:46:24 UTC ---
Problem here is that gnlcomposition drops all stream-start events that it
doesn't expect on it's src ghostpads... and when the target of that ghostpad is
changed by gnlcomposition, the previously accepted stream-start event is
cleared now. A new one is resent before the next data flow but gnlcomposition
does not expect it, so just drops it.

So there's 3 problems here:
a) gnlcomposition only forwards the stream-start event of the first stream (?).
I think instead of doing such weird things it should just create its own
stream-start event and drop all coming from upstream
b) gnlcomposition's stream-start dropping logic is racy, because most of the
time it actually passes on the stream-start event after it is cleared
c) clearing the ghostpads sticky events when changing targets, and copying them
from the new target is maybe not a good idea. The owner of the ghostpad
could've caught sticky events coming from upstream and modified them or dropped
some of them, and by now just copying them without giving the owner of the
ghostpad to do anything about that could break code.

So... what to do? Revert that change, reopen bug #707621 and make Christian and
others unhappy?

Independent of that the logic inside gnlcomposition needs to be fixed though.

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