[Bug 648359] baseaudiosrc: ringbuffer: segbase/segdone not updated when ring buffer cleared leads to incorrect timestamps

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Apr 27 19:18:44 PDT 2011


https://bugzilla.gnome.org/show_bug.cgi?id=648359
  GStreamer | gst-plugins-base | git

Håvard Graff (hgr) <havard.graff> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |havard.graff at tandberg.com

--- Comment #2 from Håvard Graff (hgr) <havard.graff at tandberg.com> 2011-04-28 02:18:40 UTC ---
The idea of SLAVE_SKEW is to keep track of running-time, and resync to it if
one drifts out from it.

The two causes, (copied from the code) are:
        /* Resync the ringbuffer if:
         *
         * 1. We are more than the length of the ringbuffer behind.
         *    The length of the ringbuffer then gets to dictate
         *    the threshold for what is concidered "too late"
         *
         * 2. If this is our first buffer.
         *    We know that we should catch up to running_time
         *    the first time we are ran.
         */

And I am pretty sure the point 2. will be triggered if src->next_is sat to -1,
which it is in:

    case GST_STATE_CHANGE_READY_TO_PAUSED:
      GST_DEBUG_OBJECT (src, "READY->PAUSED");
      src->next_sample = -1;

If not, that might be a bug.

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