Low camera frame rate

Could you try gst-launch-1.0 command like:

$ gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 bufapi-version=1 ! 'video/x-raw(memory:NVMM),width=1920,height=1080,framerate=60/1' ! nvvideoconvert ! 'video/x-raw(memory:NVMM),format=NV12' ! mx.sink_0 nvv4l2camerasrc device=/dev/video1 bufapi-version=1 ! 'video/x-raw(memory:NVMM),width=1920,height=1080,framerate=60/1' ! nvvideoconvert ! 'video/x-raw(memory:NVMM),format=NV12' ! mx.sink_1 nvstreammux width=1920 height=1080 batch-size=2 live-source=1 name=mx ! nvinfer config-file-path=/opt/nvidia/deepstream/deepstream-5.0/samples/configs/deepstream-app/config_infer_primary.txt batch-size=2 ! nvvideoconvert ! nvmultistreamtiler width=1920 height=1080 rows=1 columns=2 ! nvvideoconvert ! nvdsosd ! nvegltransform ! nveglglessink sync=0

The above pipeline is with two sources. Please extend to 8 sources and give it a try.

Hi DaneLLL,

It works with 8 sources but we still have some questions.

  1. How to implement in deepstream-app and perform its frame rate per channel?
  2. We cannot switch to single window when we click certain one on display wall.



Using nvv4l2camerasrc + nveglglessink in deepstream-app, it works for single source. But for multiple sources, it shows whole black as your observation. We would need internal teams’ help to do further investigation on this and may take some time. For a quick solution, we suggest use gst_parse_launch() to launch the pipeline. You may refer to the sample of using the function:
What is maximum video encoding resolution in pixels?

For showing specific source, you can call g_object_set() to set the property in nvmultistreamtiler:

  show-source         : ID of the source to be shown. If -1 all the sources will be tiled else only a single source will be scaled into the output buffer.
                        flags: readable, writable
                        Integer. Range: -1 - 2147483647 Default: -1