[Bug 706779] oggmux: support flushing seeks
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Tue Aug 27 23:49:26 PDT 2013
https://bugzilla.gnome.org/show_bug.cgi?id=706779
GStreamer | gst-plugins-base | git
Alessandro Decina <alessandro.d> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #253094|0 |1
is obsolete| |
--- Comment #4 from Alessandro Decina <alessandro.d at gmail.com> 2013-08-28 06:49:23 UTC ---
Created an attachment (id=253344)
View: https://bugzilla.gnome.org/attachment.cgi?id=253344
Review: https://bugzilla.gnome.org/review?bug=706779&attachment=253344
new attempt
Here's a better attempt which (i think) implements what we discussed on IRC.
The steps involved are:
1) when the flushing seek is received, mark that we're flushing and forward the
event upstream. Do not set collectpads as flushing here else forwarding the
event wouldn't work obviously (and doing set_flushing(TRUE);
set_flushing(FALSE); forward; would be racy)
2a) on the first FLUSH_START coming from an upstream pad, flush internal state
and set collectpads as flushing. Setting collectpads as flushing means that
every pad is marked as FLUSHING until it gets the next FLUSH_STOP
2b) mark that we need to send FLUSH_STOP in the first next _collected call
3) in the first _collected call, send FLUSH_STOP downstream. We flush here
since if we're in _collected, it means that all the pads have finished flushing
(FLUSH_STOP) and have a buffer queued belonging to the new segment
--
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