Orin nano play RTSP stream using gstreamer pipeline

Hi Everyone,

We are using the Jetson Orin Nano Developer Kit 8GB RAM board. We are trying to capture the RTSP stream from the network using the GStreamer and trying to pass it to appsink. We are using the GStreamer pipeline below:

snprintf(rtspPipeLineBuffer, RTSP_PIPELINE_MAX_CHAR_COUNT,"uridecodebin uri=%s ! videoconvert ! x264enc bframes=0 speed-preset=veryfast bitrate=512 byte-stream=TRUE tune=zerolatency ! video/x-h264,stream-format=byte-stream,alignment=au,profile=baseline ! queue ! appsink sync=TRUE emit-signals=TRUE name=appsink-video ",rtspUri);

But it is not working.

Earlier, we tried with Jetson nano board. It is working fine. For Jetson nano board, the working pipeline is

snprintf(rtspPipeLineBuffer, RTSP_PIPELINE_MAX_CHAR_COUNT,"uridecodebin uri=%s ! nvvideoconvert ! videoconvert ! x264enc bframes=0 speed-preset=veryfast bitrate=512 byte-stream=TRUE tune=zerolatency ! video/x-h264,stream-format=byte-stream,alignment=au,profile=baseline ! queue ! appsink sync=TRUE emit-signals=TRUE name=appsink-video ",rtspUri);

Attachment: Log for gst-launch on Orin board.
gst_log.txt (14.2 KB)

Thanks in advance.

1 Like

Hello,

Thanks for posting in the NVIDIA Developer forums! Your topic will be best served in the Jetson category.

I will move this over for better visibility.

Cheers,
Tom

1 Like

Hi,
The nvvideoconvert plugin is missing in the first pipeline. Please add it or nvvidconv plugin and try again.

Hi @DaneLLL , Thank you. I tried using nvvideoconvert plugin. It is working for me. The current pipeline is

snprintf(rtspPipeLineBuffer, RTSP_PIPELINE_MAX_CHAR_COUNT,"uridecodebin uri=%s ! nvvideoconvert !videoconvert ! x264enc bframes=0 speed-preset=veryfast bitrate=512 byte-stream=TRUE tune=zerolatency ! video/x-h264,stream-format=byte-stream,alignment=au,profile=baseline ! queue ! appsink sync=TRUE emit-signals=TRUE name=appsink-video ",rtspUri);

This is giving me the RTSP frame but the video is 2 sec delayed. Any thought on same.

Thanks in advance.

Hi,
For redusig latency, there are discussion in
Problem with NVDEC

Please set the properties and give it a try.

Hi,
Please also try

uridecodebin source::latency=0 ...

The uridecodebin plugin uses rtspsrc that has 2-second default latency. Please set it to 0 and try.

Hi @DaneLLL ,
Thank you for sharing. It worked for me. By using the

uridecodebin source::latency=0 ...

I am able to reduce the delay less than 1 sec, which works for my application.
Once again Thank you.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.