mpegts: Always clear packetizer on DISCONT push mode
authorEdward Hervey <edward@centricular.com>
Fri, 16 Dec 2022 14:03:12 +0000 (15:03 +0100)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Sun, 18 Dec 2022 18:50:19 +0000 (18:50 +0000)
commitf18186b5dced46a53a103a3f34fa65252e6e48b8
tree9e3fcbce9e93d1742862bbaf5fc155ecc52a97d3
parent3fa6651d91e5065829d8bcd520f00538945ada72
mpegts: Always clear packetizer on DISCONT push mode

If a discontinuity is detected in push mode, we need to clear the cached section
observations since they might have potentially changed.

This was only done properly when operating with TIME segments (dvb, udp,
adaptive demuxers, ...) but not with BYTE segments (such as with custom app/fd
sources).

We still don't want to flush out the PCR observations, since this might be
needed for seeking in push-based BYTE sources.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1650

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3584>
subprojects/gst-plugins-bad/gst/mpegtsdemux/mpegtsbase.c