After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 786667 - tsdemux dot not handle input buffer timestamp discontinuity properly
tsdemux dot not handle input buffer timestamp discontinuity properly
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
1.12.2
Other All
: Normal major
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2017-08-23 06:05 UTC by Vinod Kesti
Modified: 2018-11-03 14:12 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Vinod Kesti 2017-08-23 06:05:42 UTC
When there is discontinuity in the RTP input stream rtpjitterbuffer tags bufferas GST_BUFFER_FLAG_DISCONT after discontinuity. 

tsdemux reset segment and timestamp when buffer is received with discontinuity. In mpegts_base_chain function below marked code flushes the demuxer and resets the time stamp and segmet due to which the next buffer onward timestamps and segment base starts again from 0. Stream time stamps goes past and all pluigins cribs about the timestamp.

 if (GST_BUFFER_IS_DISCONT (buf)) {
    GST_DEBUG_OBJECT (base, "Got DISCONT buffer, flushing");
    res = mpegts_base_drain (base);
    if (G_UNLIKELY (res != GST_FLOW_OK))
      return res;

    mpegts_base_flush (base, FALSE);
    /* In the case of discontinuities in push-mode with TIME segment
     * we want to drop all previous observations (hard:TRUE) from
     * the packetizer */
    if (base->mode == BASE_MODE_PUSHING
        && base->segment.format == GST_FORMAT_TIME) {
      mpegts_packetizer_flush (base->packetizer, TRUE);
      mpegts_packetizer_clear (base->packetizer);
    } else
      mpegts_packetizer_flush (base->packetizer, FALSE);
  }

In above case tsdemux should generate new segment with current time as base time ??
Comment 1 GStreamer system administrator 2018-11-03 14:12:29 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/601.