Please provide complete information as applicable to your setup.
• Hardware Platform (Jetson / GPU) Jetson Nano • DeepStream Version 6.0 • JetPack Version (valid for Jetson only) 4.6 • TensorRT Version 8.0.1 • NVIDIA GPU Driver Version (valid for GPU only) - • Issue Type( questions, new requirements, bugs) Problem / question • How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)
Install deepstream 6.0
Change /opt/nvidia/deepstream/deepstream/samples/configs/deepstream-app/source1_usb_dec_infer_resnet_int8.txt config file a bit:
Set enable=0 on sink0 and sink1
Set enable=1 on sink2
Plug in USB webcam
Run sudo deepstream-app -c /opt/nvidia/deepstream/deepstream/samples/configs/deepstream-app/source1_usb_dec_infer_resnet_int8.txt
It gives message:
*** DeepStream: Launched RTSP Streaming at rtsp://localhost:8554/ds-test ***
Open VLC on Jetson Nano
Media → Oopen Network Stream… → enter the url rtsp://localhost:8554/ds-test → Play
This gives the error in log:
live555 demux error: Failed to connect with rtsp://localhost:8554/ds-test
satip stream error: Failed to setup RTSP session
• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)
How can I use RTSP as a sink? I want to view the sink. It looks like it sends the stream, but I cannot open it so I suspect it does not work.
I have tried using gst-launch-1.0 like you said but it did not work. I could not find much about this issue on the internet, but it looks like the RTSP setup is going wrong on the server side? Also on another PC the VLC does not work at this moment.
user@jetson-nano:~$ gst-launch-1.0 uridecodebin uri="rtsp://localhost:8554/ds-test" ! nvoverlaysink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Progress: (open) Opening Stream
Progress: (connect) Connecting to rtsp://localhost:8554/ds-test
Progress: (open) Retrieving server options
Progress: (open) Retrieving media info
ERROR: from element /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source: Unhandled error
Additional debug info:
gstrtspsrc.c(6161): gst_rtspsrc_send (): /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source:
Bad Request (400)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ..
to give more information, this is my config file (the same file does work if I use EglSink instead of RTSP):
[application]
enable-perf-measurement=1
perf-measurement-interval-sec=1
[tiled-display]
enable=1
rows=1
columns=1
width=1024
height=768
[source0]
enable=1
#Type - 1=CameraV4L2 2=URI 3=MultiURI 4=RTSP 5=CSI
type=1
camera-width=640
camera-height=480
camera-fps-n=30
camera-fps-d=1
camera-v4l2-dev-node=0
[streammux]
## Boolean property to inform muxer that sources are live
## Set to 1 to process @ source framerate, 0 for asap
live-source=1
batch-size=1
##time out in usec, to wait after the first buffer is available
##to push the batch even if the complete batch is not formed
batched-push-timeout=40000
## Set muxer output width and height
width=1024
height=768
[primary-gie]
enable=1
#Required by the app for OSD, not a plugin property
bbox-border-color0=1;0;0;1
bbox-border-color1=0;1;1;1
bbox-border-color2=0;0;1;1
bbox-border-color3=0;1;0;1
#Required to display the PGIE labels, should be added even when using config-file property
# Nano can not do int8, so use fp16
# model-engine-file=../../../../samples/models/tao_pretrained_models/peopleNet/V2.1/resnet34_peoplenet_pruned_int8.etlt_b1_gpu0_int8.engine
model-engine-file=../../../../samples/models/tao_pretrained_models/peopleNet/V2.1/resnet34_peoplenet_pruned_int8.etlt_b1_gpu0_fp16.engine
#Required by the app for SGIE, when used along with config-file property
interval=0
gie-unique-id=1
batch-size=1
config-file=deepstream-peoplenet-pgie-config.txt
[osd]
enable=1
border-width=3
text-size=15
text-color=1;1;1;1;
text-bg-color=0.3;0.3;0.3;1
font=Arial
[sink0]
enable=1
#Type - 1=FakeSink 2=EglSink 3=File 4=RTSPStreaming 5=Overlay
type=4
#1=h264 2=h265
codec=1
#encoder type 0=Hardware 1=Software
enc-type=0
sync=0
bitrate=4000000
#H264 Profile - 0=Baseline 2=Main 4=High
#H265 Profile - 0=Main 1=Main10
profile=0
# set below properties in case of RTSPStreaming
rtsp-port=8554
udp-port=5400
[tracker]
enable=1
# For NvDCF and DeepSORT tracker, tracker-width and tracker-height must be a multiple of 32, respectively
tracker-width=640
tracker-height=480
ll-lib-file=/opt/nvidia/deepstream/deepstream-6.0/lib/libnvds_nvmultiobjecttracker.so
# ll-config-file required to set different tracker types
# ll-config-file=../../../../samples/configs/deepstream-app/config_tracker_IOU.yml
ll-config-file=../../../../samples/configs/deepstream-app/config_tracker_NvDCF_perf.yml
# ll-config-file=../../../../samples/configs/deepstream-app/config_tracker_NvDCF_accuracy.yml
# ll-config-file=../../../../samples/configs/deepstream-app/config_tracker_DeepSORT.yml
enable-batch-process=1
enable-past-frame=1
display-tracking-id=1
[tests]
file-loop=0
Re-flashing the system worked. I found out that there was some old RTSP server running on startup… For future questions, check if there is a process listening on the port for RTSP!