multiqueue: Handle gapless input
authorEdward Hervey <edward@centricular.com>
Thu, 21 Jul 2022 13:26:14 +0000 (15:26 +0200)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Wed, 16 Nov 2022 14:01:46 +0000 (14:01 +0000)
commit4b8f411c5d94ed956521c358c6052f7ff59af06a
treef237acb6c425952f8e8054d6c4fba746bd689f1c
parentf785b3d58485234542dd893f2d15913007e8ab7f
multiqueue: Handle gapless input

When dealing with gapless input (i.e. streams with changing group-id in
GST_EVENT_STREAM_START), we need to take into account the elapsed
running-time (if applicable) in order to properly calculate levels and output
time. Without doing this all incoming data from future groups would be
considered as being "late" and would be consumed immediately.

This does **NOT** modify the actual segment and buffer times, and is only used
internally.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2784>
subprojects/gstreamer/plugins/elements/gstmultiqueue.c