My pipeline encountered an issue after running for 45 hours

• Hardware Platform (Jetson)
• DeepStream Version(ds-6.2)
• JetPack Version (5.1.4)

my pipeline: nvurisrcbin-nvstreammux-pgie-fakesink.However, it stopped working after about 45 hours of operation. The log is as follows:

deepstream-log.txt (26.3 KB)

Can you help me find out what exactly caused it?

Are you working with HikVision camera?

@Fiona.Chen

I am indeed using a Hikvision RTSP camera.

There are lots of RTSP abnormal reported in your log.

3:01:40.024866904     1     0x3627f240 WARN                 rtspsrc gstrtspsrc.c:6585:gst_rtspsrc_send:<src> error: Unhandled error
3:01:40.024933914     1     0x3627f240 WARN                 rtspsrc gstrtspsrc.c:6585:gst_rtspsrc_send:<src> error: Option not supported (551)
3:01:40.024999484     1     0x3627f240 WARN                 rtspsrc gstrtspsrc.c:8669:gst_rtspsrc_pause:<src> error: Could not send message. (Generic error)

Please refer to subprojects/gst-plugins-good/gst/rtsp/gstrtspsrc.c · 1.20 · GStreamer / gstreamer · GitLab

39:03:53.555312473     1 0xfffe5c015180 WARN                 default gstrtspconnection.c:1308:writev_bytes: Operation was cancelled
39:03:53.555361147     1 0xfffe5c015180 WARN                 rtspsrc gstrtspsrc.c:6410:gst_rtspsrc_try_send:<src> send interrupted
39:03:53.555381819     1 0xfffe5c015180 WARN                 rtspsrc gstrtspsrc.c:8672:gst_rtspsrc_pause:<src> PAUSE interrupted
39:03:53.557215215     1 0xfffe5c015180 WARN                 default gstrtspconnection.c:1308:writev_bytes: Error sending message: Broken pipe
39:03:53.557254672     1 0xfffe5c015180 WARN                 rtspsrc gstrtspsrc.c:6407:gst_rtspsrc_try_send:<src> error: Could not send message. (Received end-of-file)
39:03:53.557286481     1 0xfffe5c015180 WARN                 rtspsrc gstrtspsrc.c:8096:gst_rtspsrc_close:<src> error: Could not send message. (Received end-of-file)

Please check with your RTSP server(the camera) for why the end of file is generated.

@Fiona.Chen

According to the hint you gave me, it means that

case GST_RTSP_STS_NOT_ACCEPTABLE:
case GST_RTSP_STS_NOT_IMPLEMENTED:
case GST_RTSP_STS_METHOD_NOT_ALLOWED:
    GST_WARNING_OBJECT (src, "got NOT IMPLEMENTED, disable method %s", gst_rtsp_method_as_text (method));
    src->methods &= ~method;
    res = GST_RTSP_OK;
    break;
default:
    RTSP_SRC_RESPONSE_ERROR (src, response, RESOURCE, READ,"Unhandled error");
break;

add GST_RTSP_STS_OPTION_NOT_SUPPORTED in gstrtspsrc.c

case GST_RTSP_STS_NOT_ACCEPTABLE:
case GST_RTSP_STS_NOT_IMPLEMENTED:

// add in this
case GST_RTSP_STS_OPTION_NOT_SUPPORTED: 
             
case GST_RTSP_STS_METHOD_NOT_ALLOWED:
    GST_WARNING_OBJECT (src, "got NOT IMPLEMENTED, disable method %s", gst_rtsp_method_as_text (method));
    src->methods &= ~method;
    res = GST_RTSP_OK;
    break;
default:
    RTSP_SRC_RESPONSE_ERROR (src, response, RESOURCE, READ,"Unhandled error");
break;

Convert the error message ‘551’ from GST_STSPS-STD_OPTION_SUPPORTED to ‘501’??

The plugin already handled the error 551.

The rtspsrc strictly follows RFC 2326, seems HikVision camera has some non-standard features. The rtspsrc is just a RTSP client, please contact the RTSP server(camera) provider for the reason of “end-of-file” log.

@Fiona.Chen

I am using version 1.16.2 of gst plugins food, and I am not sure if the issue with 551 has been resolved

Seems not. You also need to consult HikVision for how to avoid sending such message to RTSP client.