A problem about RTSPStreaming

My configuration file is as follows:

[sink3]
enable=1
#Type - 1=FakeSink 2=EglSink 3=File 4=RTSPStreaming
type=4
codec=1
sync=0
bitrate=4000000
rtsp-port=8554

When I used another LAN computer to connect to the RTSP stream,the stream video is buffering a lot.The video doesn’t play smoothly.

Hi,
Do you use PC with desktop GPU or Jetson platform?
Usually if you don’t observe the issue in setting type=3( encode + file save ), it is most likely an issue in network bandwidth and stability.

Hi DaneLLL,
I use Jetson platform(TX2).
when type=3,it is saved as a file.I can not link video stream by RTSP,How do I observe the issue? and The video(out.mp4) can not play.

Hi,
Please try

$ gst-launch-1.0 uridecodebin uri=file:///home/nvidia/out.mp4 ! nvoverlaysink

If you don’t see defects in video playback, it should not be an issue in nvv4l2h264enc. Most likely the network bandwidth is insufficient, leading to video buffering.

Hi DaneLLL,
I use a local area network,rtsp path is:

rtsp://10.0.0.138:8554/ds-test

The same problem exists on the same computer,rtsp path is:

rtsp://127.0.0.1:8554/ds-test

Is it the efficiency of video coding?

Hi,
Please execute ‘sudo nvpmodel -m 0’ and ‘sudo jetson_clocks’.

and try

$ gst-launch-1.0 uridecodebin uri=rtsp://127.0.0.1:8554/ds-test ! nvoverlaysink sync=false

Hi DaneLLL

I did as you said,but problems remain.I’m trying to take out the inference process,but problems aslo remain.

Hi,
Is your source RTSP source? Could you share full config file in


for reference?

Hi DaneLLL

My config file:

# Copyright (c) 2018 NVIDIA Corporation.  All rights reserved.
#
# NVIDIA Corporation and its licensors retain all intellectual property
# and proprietary rights in and to this software, related documentation
# and any modifications thereto.  Any use, reproduction, disclosure or
# distribution of this software and related documentation without an express
# license agreement from NVIDIA Corporation is strictly prohibited.

[application]
enable-perf-measurement=1
perf-measurement-interval-sec=5
#gie-kitti-output-dir=streamscl

[tiled-display]
enable=1
rows=1
columns=1
width=1920
height=1080
gpu-id=0
nvbuf-memory-type=0

[source0]
enable=1
#Type - 1=CameraV4L2 2=URI 3=MultiURI
type=4
#uri=file:///opt/nvidia/deepstream/deepstream-4.0/samples/streams/sample_1080p_h264.mp4
uri=rtsp://admin:1111@10.0.0.156:554
num-sources=1
gpu-id=0
nvbuf-memory-type=0
#latency=10000

[source1]
enable=0
#Type - 1=CameraV4L2 2=URI 3=MultiURI
type=4
uri=rtsp://admin:1111@10.0.0.156:554
num-sources=1
gpu-id=0
nvbuf-memory-type=0
#latency=10000

[sink0]
enable=0
#Type - 1=FakeSink 2=EglSink 3=File
type=2
sync=0
source-id=0
gpu-id=0
nvbuf-memory-type=0

[sink1]
enable=1
#Type - 1=FakeSink 2=EglSink 3=File 4=UDPSink 5=nvoverlaysink 6=MsgConvBroker
type=6
sync=0
#msg-conv-config=dstest5_msgconv_sample_config.txt
msg-conv-config=dstest4_msgconv_config.txt
#(0): PAYLOAD_DEEPSTREAM - Deepstream schema payload
#(1): PAYLOAD_DEEPSTREAM_MINIMAL - Deepstream schema payload minimal
#(256): PAYLOAD_RESERVED - Reserved type
#(257): PAYLOAD_CUSTOM   - Custom schema payload
msg-conv-payload-type=0
#msg-broker-proto-lib=/opt/nvidia/deepstream/deepstream-4.0/lib/libnvds_kafka_proto.so
msg-broker-proto-lib=libnvds_kafka_proto.so
#Provide your msg-broker-conn-str here
msg-broker-conn-str=39.97.109.63;9092;deepstream-data
topic=deepstream-data
#Optional:
msg-broker-config=cfg_kafka.txt

[sink2]
enable=0
type=3
#1=mp4 2=mkv
container=1
#1=h264 2=h265 3=mpeg4
## only SW mpeg4 is supported right now.
codec=3
sync=1
bitrate=2000000
output-file=out.mp4
source-id=0

[sink3]
enable=1
#Type - 1=FakeSink 2=EglSink 3=File 4=RTSPStreaming
type=4
#1=h264 2=h265
codec=1
sync=0
bitrate=4000000
# set below properties in case of RTSPStreaming
rtsp-port=8554
#udp-port=5400


[osd]
enable=1
gpu-id=0
border-width=1
text-size=15
text-color=1;1;1;1;
text-bg-color=0.3;0.3;0.3;1
font=Arial
show-clock=0
clock-x-offset=800
clock-y-offset=820
clock-text-size=12
clock-color=1;0;0;0
nvbuf-memory-type=0

[streammux]
gpu-id=0
##Boolean property to inform muxer that sources are live
live-source=1
batch-size=2
##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=1920
height=1080
##Enable to maintain aspect ratio wrt source, and allow black borders, works
##along with width, height properties
enable-padding=0
nvbuf-memory-type=0

# config-file property is mandatory for any gie section.
# Other properties are optional and if set will override the properties set in
# the infer config file.
[primary-gie]
enable=1
gpu-id=0
#Required to display the PGIE labels, should be added even when using config-file
#property
batch-size=2
#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
interval=0
#Required by the app for SGIE, when used along with config-file property
gie-unique-id=1
nvbuf-memory-type=0
model-engine-file=resnet10.caffemodel_b2_fp16.engine
labelfile-path=labels.txt
config-file=config_infer_primary.txt
#infer-raw-output-dir=../../../../../samples/primary_detector_raw_output/


[tracker]
enable=1
tracker-width=600
tracker-height=300
ll-lib-file=libnvds_mot_klt.so
#ll-config-file required for DCF/IOU only
#ll-config-file=tracker_config.yml
#ll-config-file=iou_config.txt
gpu-id=0
#enable-batch-process applicable to DCF only
enable-batch-process=0

[tests]
file-loop=0

Hi,
You enable sink1 and sink3. Could you disable sink1 and enable sink3 for a try?

Hi 2528514903,

Have you tried the suggestions to disable sink1 and enable sink3? Any result can be shared?