[Bug 787319] New: gsth264parser: buffering period parser fails

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Sep 5 16:26:07 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=787319

            Bug ID: 787319
           Summary: gsth264parser: buffering period parser fails
    Classification: Platform
           Product: GStreamer
           Version: 1.12.2
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-bad
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: nnoell3 at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

Created attachment 359209
  --> https://bugzilla.gnome.org/attachment.cgi?id=359209&action=edit
debug log

Hi,

We have an rtsp source coming from an IP camera that plays fine for a few
seconds and then stops because an EOS is sent:

gst-launch-1.0 rtspsrc location=... ! rtph264depay ! decodebin ! fakesink

I have debugged the code and it looks like the h264 parser fails when parsing
the SEI message if the payload type is `GST_H264_SEI_BUF_PERIOD`, here:

https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/gst-libs/gst/codecparsers/gsth264parser.c?h=1.12#n1152

That parsing error causes the VAAPI H264 decoder to send an EOS here:

https://cgit.freedesktop.org/gstreamer/gstreamer-vaapi/tree/gst-libs/gst/vaapi/gstvaapidecoder_h264.c?h=1.12#n1765

which is why the video plays fine only for a few seconds...

It seems to only happen when using the VAAPI plugins so I am not sure if this
is a gst-plugins-bad issue or a gstreamer-vaapi issue.

If we ignore that error and always return `GST_H264_PARSER_OK` when parsing the
buffering period, the video plays fine forever, but I guess this is not the
proper solution.

The full log with GST_DEBUG=4 is attached, the relevant lines are:

gsth264parser.c:848:gst_h264_parser_parse_buffering_period: failed to read UE
gsth264parser.c:892:gst_h264_parser_parse_buffering_period: error parsing
"Buffering period"
gsth264parse.c:530:gst_h264_parse_process_sei:<h264parse0> failed to parse one
or more SEI message

Does anybody know why the parsing is failing?

-- 
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