[Bug 736655] basesink: preroll issue for some clips which audio is shorter than video

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon Feb 16 04:37:49 PST 2015


Sebastian Dröge (slomo) <slomo at coaxion.net> changed:

           What    |Removed                     |Added
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED
   Target Milestone|git master                  |1.5.1

--- Comment #121 from Sebastian Dröge (slomo) <slomo at coaxion.net> ---
Thanks for the patches and your patience, I've merged them now and did some
minor cleanup on the way. Enjoy your holidays :)

commit fb9ca25f7f0ee850f73b2c323a2c3a8e7d2d92fc
Author: Song Bing <b06498 at freescale.com>
Date:   Sun Feb 15 13:51:36 2015 +0800

    streamsynchronizer: Use the same waiting function for EOS and stream

    Also improve the waiting condition for stream switches, which was assuming
    before that the condition variable will only stop waiting once when it is
    signaled. But the documentation says that there might be spurious wakeups.


commit eeea911c2e477cc51ed72ac5ce2da34caa4115e3
Author: Song Bing <b06498 at freescale.com>
Date:   Mon Jan 26 11:14:13 2015 +0800

    streamsynchronizer: Unit test for streamsynchronizer's EOS handling

    Test that a pipeline can change from PLAYING to PAUSED and back in
    the following scenarios:
    1. One track reach EOS after pushed some buffers while another track
    still pushes buffers
    2. One track reach EOS without buffers while another track still pushes


commit 2614f80309bf37e65b30f0ea76d2acefba1d57c4
Author: Song Bing <b06498 at freescale.com>
Date:   Mon Jan 12 17:40:25 2015 +0800

    streamsynchronizer: Send GAP events from the pads' streaming threads

    Change the GAP events that are currently sent from the chain function of
    the current pad to all other EOS pads. They should instead be sent from
    their own streaming threads.


commit 9f81931716b7f8fd29862f0bfa1a3891cb414bdc
Author: Song Bing <b06498 at freescale.com>
Date:   Mon Jan 12 16:08:33 2015 +0800

    streamsynchronizer: Send GAP event to finish preroll when change state from

    Wait in the event function when EOS is received until all pads are EOS
    and then forward the EOS event from each pads own event function.

    Also send a new GAP event for EOS pads from the event function whenever
    going from PLAYING->PAUSED by shortly waking up the GCond. This is needed
    to allow sinks to pre-roll again, as they did not receive EOS yet because
    we blocked that, but also will never get data again.


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