How to make output type of `nvurisrcbin` to pinned mem in dGPU platform

• Hardware Platform (Ubuntu22 GPU)
• DeepStream Version 6.4 (from container)
• NVIDIA GPU Driver Version (545)
• Issue Type( questions)

QUESTION 1: Is it possible to configure the output buffer type of nvurisrcbin to NVBUF_MEM_CUDA_PINNED before entering nvstreammux?

  • I tried cudadec-memtype=1, but inside nvurisrcbin, it contains a capsfilter and nvvideoconverter, then, it turns back to NVBUF_MEM_CUDA_DEVICE.

QUESTION 2: What’s the exact purpose of inserting capsfilter and nvvideoconverter into nvurisrcbin? As for gst-launch-1.0 command, user will still have to define output type after nvurisrcbin; in API level, seems that the output type of nvv4l2decoder inside nvurisrcbin is compatible enough. And for now, seems that i have no way to configure them…

The command to save dot file:

USE_NEW_NVSTREAMMUX=yes GST_DEBUG=*:2 gst-launch-1.0 \
nvurisrcbin uri=file:///xxx.mp4 file-loop=1 cudadec-memtype=1 disable-audio=1 latency=10 rtsp-reconnect-interval=15 select-rtp-protocol=4 gpu-id=0 ! muxer.sink_0 \
nvurisrcbin uri=file:///xxx.mp4 file-loop=1 cudadec-memtype=1 disable-audio=1 latency=10 rtsp-reconnect-interval=15 select-rtp-protocol=4 gpu-id=0 ! muxer.sink_1 \
nvurisrcbin uri=file:///xxx.mp4 file-loop=1 cudadec-memtype=1 disable-audio=1 latency=10 rtsp-reconnect-interval=15 select-rtp-protocol=4 gpu-id=0 ! muxer.sink_2 \
nvurisrcbin uri=file:///xxx.mp4 file-loop=1 cudadec-memtype=1 disable-audio=1 latency=10 rtsp-reconnect-interval=15 select-rtp-protocol=4 gpu-id=0 ! muxer.sink_3 \
nvstreammux name=muxer batch-size=4 ! nvmultistreamtiler rows=2 columns=2 ! tee name=tee \
tee. ! queue ! appsink name=appsink sync=0 drop=1 emit-signals=0 tee. ! queue ! nvdsosd ! nveglglessink sync=0 qos=0

Yes. You are right. The cudadec-memtype property is just for the hardware decoder. The output buffer type of nvvideoconvert in the nvurisrcbin cannot be changed at this time.

Nvurisrcbin needs to support both software and hardware decoding. So if it’s used software decoding, we need to use the nvvideoconvert to change the memory type to NVMM.

1 Like

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