[Bug 752746] harness: Keep synchronized events in sync with buffers
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Thu Jul 23 02:06:02 PDT 2015
https://bugzilla.gnome.org/show_bug.cgi?id=752746
--- Comment #2 from HÃ¥vard Graff (hgr) <havard.graff at gmail.com> ---
While I appreciate what you are trying to solve, the patch in its current form
would break a few hundered of our tests. :)
The main problem is that most events are serialized, and there is an existing
event-queue for events, and with this patch the only events ending up in the
event-queue would be the OOB ones, hence all tests waiting for specific
(custom) events would break.
We have been evolvoing the harness along with the tests we write for it, and
the current solution is basically to get the three "necessary" events (Segment,
Stream-Start and Caps) pushed so we don't have to worry about them. You can
"control" these initial events by when you actually add and/or _play the
src-harness. Now if you have a use-case of having more of these events arriving
later, serialized with the buffers, I can see the problem.
However, I think I am leaning towards a mechanism of turning off all
"convenience-magic" (like the forward-pad is), and then letting the user handle
all pulling and pushing of buffers and events manually. This can actually
already be acheived by simply having two separate harnesses, and then pulling
and pushing between the two "manually".
The alternative would be to do a bigger rewrite where (a bit like you propose)
all buffers and events end up in the same queue, have _pull return a
GstMiniObject, and have convenience pull_buffer and pull_event doing a
check-cast-and-return. This however I feel is moving the scale
flexibility<---->convenience to far on the flexibility side, sacrificing some
of the ease-of-use and simplicity I believe we have achived quite well
currently.
--
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