[Bug 679504] [matroska] Multiple events received by demuxers when they are sent to the pipeline
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Fri Jul 13 02:04:35 PDT 2012
https://bugzilla.gnome.org/show_bug.cgi?id=679504
GStreamer | gst-plugins-good | 0.10.36
Wim Taymans <wim.taymans> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |NEEDINFO
CC| |wim.taymans at gmail.com
--- Comment #2 from Wim Taymans <wim.taymans at gmail.com> 2012-07-13 09:04:29 UTC ---
Step events are never send upstream so I don't think your comment can be
correct.
Playbin2 has special logic to deal with frame steps. It will send the step
event to the video sink (only) and when it completes, consume an equal amount
of time from the audio sink. If you send the step event to only the video sink,
things will go wrong because data will keep on queueing up on the audiosink and
will eventually block queues. Maybe this is how you conclude that the step
event is sent twice. In any case, it will not ever reach the demuxer.
Some comments on the test app:
- When doing the seek with rate > 0.0, you need to set the stop position to
the end-of-file or else it will keep the value you previously set with a
rate < 0.0 seek and will EOS early. (..., GST_SEEK_TYPE_SET, -1) would do.
- The step event operates on the current playback speed of the pipeline. Your
example app does a step event with the same speed as the pipeline making it
step twice as much (when the pipeline has a speed > 1.0). You probably want
to keep the step rate at 1.0. It doesn't matter so much in this particular
case because the rate is not used when stepping buffers.
I tried the app and it seems to work correctly for me, stepping only 1 frame
etc.
--
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