[gstreamer-bugs] [Bug 632433] New: [basesink] hangs/drops going to PLAYING following flushing step in PAUSED

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Oct 18 01:57:50 PDT 2010


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

           Summary: [basesink] hangs/drops going to PLAYING following
                    flushing step in PAUSED
    Classification: Desktop
           Product: GStreamer
           Version: unspecified
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: blocker
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: mnauw at users.sourceforge.net
         QAContact: gstreamer-bugs at lists.sourceforge.net
      GNOME target: ---
     GNOME version: ---


Created an attachment (id=172588)
 View: https://bugzilla.gnome.org/attachment.cgi?id=172588
 Review: https://bugzilla.gnome.org/review?bug=632433&attachment=172588

basesink: recompute running time for buffer ending flushing step

That is, play some (e.g. video only) clip, and then:
* go to PAUSED
* perform a flushing step of say 10s
* go to PLAYING

Then there will be a delay/hang of about 10s, and then about 10s worth of data
will be dropped as it is too late.

Reason is: the last buffer that completes the step has its running and stream
time computed first, then the step is "rounded-up" which includes manipulating
the segment so as to "drop 10s of running time" (to account for the flushed
data).  Going to playing, the last buffer will be synced (rendered) on the
computed running time, which is then still 10s more (= the hang).  When it is
then rendered, 10s of subsequent data will arrive too late.

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