I’m trying to understand how many RTSP 1920x1080 8fps video streams I can process simultaneously.
At the moment I am testing DeepStream base (4 classes) and Deepstream with Yolo integration (yolov3).
My goal would be to work with at least 4 RTSP (all types of vehicles and people).
If I start 4 processes, I get to the maximum of 5 fps per process.
Hi,
Please run with ‘sudo jetson_clocks’. See if max clock of all hardware engines gives performance improvement.
By default deepstream_app_config_yoloV3_tiny.txt is single 1080p30 video file source. Four 1920x1080 7fps should work.
Hi,
The reference config file is source30_1080p_dec_infer-resnet_tiled_display_int8.txt. It is Resnet10 model. YoloV3 is with more layers, leading to higher loading.
Sorry, I didn’t understand correctly:
with Yolov3 tiny I can work with 4 rtsp streams at 1080p7fps, while reading the post you shared it seems that with Yolov3 it can only get one stream?
Is It correct?
Thanks
Hi,
The reference config file deepstream_app_config_yoloV3.txt is one source. That’s the case we have verified. The loading of model deminates performance. Resnet10 model can be run with 30 sources. YoloV3 cannot. You may consider to use YoloV3 tiny, or refer to this config file to set interval in [primary-gie].
processing multiple VideoStreams with YoloV3 is possible if you modify the given examples. I am currently at a resolution of 1280x720p and get roughly the following FPS:
On Jetson Xavier:
YoloV3 on 4x parallel 1280x720 csi camera source: ~ 5 FPS [EDIT] its 7.6 FPS with little changes
YoloV3 on 3x parallel 1280x720 csi camera source: ~ 8-10 FPS
YoloV3tiny on 4x parallel 1280x720 csi camera source: ~ 27 FPS
For this to make your custom config by mixing the files:
deepstream_app_config_yoloV3.txt - for yolov3 detection
source6_csi_dec_infer_resnet_int8.txt - to find out how to use different sources and display them in an overlay sink or rtsp stream
note: I have not optimizied it or used DLA layers so you could probrably improve it further