Could not link nvarguscamerasrc0 to nvstreammux0

Hi,

I’m trying to use nvstreammux in my own pipeline :

gst-launch-1.0 -v -e nvarguscamerasrc ! ‘video/x-raw(memory:NVMM), width=1280, height=720, framerate=30/1, format=NV12’ ! nvstreammux batch-size=1 width=1280 height=720 ! fakesink -e
WARNING: erroneous pipeline: could not link nvarguscamerasrc0 to nvstreammux0, nvstreammux0 can’t handle caps video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, framerate=(fraction)30/1, format=(string)NV12

gst-inspect-1.0 nvstreammux # works (version 4.0.2)

I tried deepstream-app and it works too. I generated the pipeline to check parameters and caps. Everything looks the same.

Why do I have “could not link nvarguscamerasrc0 to nvstreammux0” ?

Best regards

Hi,
Please set bufapi-version=true in nvarguscamerasrc.

Since there are many parameters, you may check if you can apply your usecase to deepstream-app directly. It is easier to modify the config file and run.

Thank you for the reply.

gst-launch-1.0 -v -e nvarguscamerasrc bufapi-version=true ! ‘video/x-raw(memory:NVMM), width=1280, height=720, framerate=30/1, format=NV12’ ! nvstreammux batch-size=1 width=1280 height=720 batched-push-timeout=40000 ! fakesink -e
WARNING: erroneous pipeline: could not link nvarguscamerasrc0 to nvstreammux0, nvstreammux0 can’t handle caps video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, framerate=(fraction)30/1, format=(string)NV12

I tried to match also the properties reported with:

export GST_DEBUG_DUMP_DOT_DIR=/tmp ; deepstream-app -c deepstream_app_config_yoloV3.txt
gst-launch-1.0 -v -e nvarguscamerasrc do-timestamp=TRUE maxperf=TRUE bufapi-version=TRUE ! ‘video/x-raw(memory:NVMM), width=1280, height=720, framerate=30/1, format=NV12’ ! nvstreammux batch-size=1 width=1280 height=720 batched-push-timeout=40000 ! fakesink -e
WARNING: erroneous pipeline: could not link nvarguscamerasrc0 to nvstreammux0, nvstreammux0 can’t handle caps video/x-raw(memory:NVMM), width=(int)1280, height=(int)720, framerate=(fraction)30/1, format=(string)NV12

The problem persists.

Do you have any other hints?

Le mar. 24 mars 2020 à 00:56, DaneLLL via NVIDIA Developer Forums nvidia@discoursemail.com a écrit :

Hi,
We support Yolo modles in deepstream-app, please follow README in

deepstream_sdk_v4.0.2_jetson\sources\objectDetector_Yolo\README

To run default config file first. And then change the source to type=5
https://docs.nvidia.com/metropolis/deepstream/dev-guide/index.html#page/DeepStream%20Development%20Guide%2Fdeepstream_app_config.3.2.html%23wwpID0E0QB0HA

Hi,

As described in the initial post, deepstream-app (with Yolo and source0/type=5) works fine on my jetson board.

I would like to build my own pipeline using gst-launch-1.0.

Le mar. 24 mars 2020 à 10:43, DaneLLL via NVIDIA Developer Forums nvidia@discoursemail.com a écrit :

Hi,
May see if other users can give suggestion. As mentioned in #2, there are bunch of obligatory parameters you have to configure, still recommend run a C or python app.

Hi,
Please try

deepstream-4.0/samples/configs/deepstream-app$ gst-launch-1.0 nvarguscamerasrc bufapi-version=1 ! 'video/x-raw(memory:NVMM),width=1920,height=1080,framerate=30/1' ! mx.sink_0 nvstreammux width=1920 height=1080 batch-size=1 name=mx ! nvinfer config-file-path=/home/nvidia/deepstream-4.0/samples/configs/deepstream-app/config_infer_primary_nano.txt ! nvvideoconvert ! nvdsosd ! nvoverlaysink sync=0

OK it works!

The magic is related to the explicit connection to the pad (mx.sink_0).
This is weird. I guess it’s because this pad is “on request”.

Thank you a lot.