mpegaudioparse: Support gapless playback
authorCarlos Rafael Giani <crg7475@mailbox.org>
Sat, 7 Sep 2019 17:15:42 +0000 (19:15 +0200)
committerSebastian Dröge <sebastian@centricular.com>
Mon, 14 Mar 2022 08:32:15 +0000 (10:32 +0200)
commit0431a0845c140408fe55e672440bb6b863dd5247
treed56a8e7c90269bda2c2e1f3b113d5acffd24b1ad
parent2db283499e1482333cc761481f96f7c0aed69abb
mpegaudioparse: Support gapless playback

Gapless playback is handled by adjusting buffer timestamps & durations
and by adding GstAudioClippingMeta.

Support for "Frankenstein" streams (= poorly stitched together streams)
is also added, so that gapless playback support doesn't prevent those
from being properly played.

Co-authored-by: Sebastian Dröge <sebastian@centricular.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1028>
subprojects/gst-plugins-good/gst/audioparsers/gstmpegaudioparse.c
subprojects/gst-plugins-good/gst/audioparsers/gstmpegaudioparse.h
subprojects/gst-plugins-good/tests/check/elements/mpegaudioparse.c
tests/files/sine-1009ms-1ch-32000hz-gapless-with-lame-tag.mp3 [new file with mode: 0644]