[Bug 672832] New: [tsdemux] playback regression

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Mar 26 01:58:03 PDT 2012


https://bugzilla.gnome.org/show_bug.cgi?id=672832
  GStreamer | gst-plugins-bad | git

           Summary: [tsdemux] playback regression
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-bad
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: bugzilla.gnome at gpost.dk
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


The attached file used to work using playbin2, but now it just reports EOS. It
works fine in mpegtsdemux which used to be the default demuxer.

$ gst-launch filesrc location=media.ts ! tsdemux ! h264parse ! ffdec_h264 !
ffmpegcolorspace ! videoscale ! xvimagesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 129829 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

A quick look using fakesink reveals this is likely a timestamp handling issue,
as the newsegment timestamps doesn't match the buffer timestamps.

$ gst-launch -v filesrc location=media.ts ! tsdemux ! h264parse ! fakesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:src: caps = video/x-h264,
stream-format=(string)byte-stream, alignment=(string)nal, parsed=(boolean)true
/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:sink: caps =
video/x-h264, stream-format=(string)byte-stream, alignment=(string)nal
/GstPipeline:pipeline0/GstFakeSink:fakesink0.GstPad:sink: caps = video/x-h264,
stream-format=(string)byte-stream, alignment=(string)nal, parsed=(boolean)true
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "preroll   *******
"
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "event   *******
(fakesink0:sink) E (type: 102, GstEventNewsegment, update=(boolean)false,
rate=(double)1, applied-rate=(double)1, format=(GstFormat)GST_FORMAT_TIME,
start=(gint64)95443716088888, stop=(gint64)-1,
position=(gint64)95443716088888;) 0x21a8140"
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "chain   *******
(fakesink0:sink) (9987 bytes, timestamp: 0:00:00.000000000, duration: none,
offset: 940, offset_end: -1, flags: 0 ) 0x7fe994002ee0"
New clock: GstSystemClock
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "chain   *******
(fakesink0:sink) (1196 bytes, timestamp: 0:00:00.040000000, duration: none,
offset: 11280, offset_end: -1, flags: 0 ) 0x7fe994002400"
...

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list