• Harald Sitter's avatar
    Dynamic lock timeout is our friend. · 431ab9bf
    Harald Sitter authored
    Instead of simply waiting for a fixed amount of ms for the next source,
    we wait for the most sensible amount of time. This is whatever amount
    of time is remaining to play minus a 0.5 seconds safety delta (time
    values not precise etc.).
    A source for which we have no time or for which the remaining time is
    < 0.5 seconds is immediately unlocked again. Otherwise the consumer has
    as much time as gst gave us to set a new source.
    This in particular prevents pointless excessive locking on sources which
    have a totalTime < whatever fixed lock value we have (so that we'd lock
    longer than what we are playing). An issue apparent with notification-like
    sounds, that are rather short and do not need gapless transitioning.
    BUG: 307530
    FIXED-IN: 4.6.3