Please provide complete information as applicable to your setup. • Hardware Platform (Jetson / GPU) Jetson Xavier AGX • DeepStream Version 6.3.0 • JetPack Version (valid for Jetson only) 5.1 • TensorRT Version 8.5.2.2
I placed my buffer probe to write metadata to display at the sink pad from my queue, so that I can write at each separately by iterating over batch_meta.frame_meta_list.
By doing this, I understood that I would be writing in the metadata from each batch separately, and I thought that was right since the tiler was fusing those batches in one image and showing the metadata at the right position. But now, when I inspect one batch alone, I see the metadata with an offset, and probably with the wrong size too.
So, the nvmultistreamtiler is the aggressor here, but I don’t understand how to avoid it. I understood from manual that the tiler converts all images into one. I wrongly supposed that the frame and its metadata would be merged, and then, the result would be tiled with all other images, but its not. Frames are merged and metadata suffers some kind of transformation.
The scriptfrom the pipeline I described is this one pipeline.py.txt (29.1 KB).
You may run with 4 sources like this: python3 pipeline.py -o rtsp -i rtsp://user:pass@10.21.45.19 rtsp://user:pass@10.21.45.19 rtsp://user:pass@10.21.45.19 rtsp://user:pass@10.21.45.19
And the RTSP stream is accessible through:
*** Will launch RTSP Streaming at rtsp://localhost:8554/tiled ***
*** Will launch RTSP Streaming at rtsp://localhost:8554/stream0 ***
*** Will launch RTSP Streaming at rtsp://localhost:8554/stream1 ***
*** Will launch RTSP Streaming at rtsp://localhost:8554/stream2 ***
*** Will launch RTSP Streaming at rtsp://localhost:8554/stream3 ***
I have tried your code with our model: samples/models/Primary_Detector/resnet18_trafficcamnet.etlt. It works normally.
Command: python3 pipeline.py -o screen -i rtsp://xxx rtsp://xxx
Could you try to upgrade the deepstream to 6.4 and try that? Thanks
The -o stream option doesn’t create/add/link the tee branch for nvstreamdemux, you will only have the nvmultistreamtiler branch. You need to change it to -o rtsp.
You also need two sources, so you command must be python3 pipeline.py -o rtsp -i rtsp://xxx rtsp://xxx
The tee plugin is just add the ref count of the gstbuffer. It’s not really copy the gstbuffer. So if you processed the image in one branch, the image in the other branch will be affected.
You need to add nvvideoconvert plugin with disable-passthrough=1 after the tee plugin.