DS 5.0 nvstreammux width=0 height=0

Hey! I’m trying to start this pipeline:

gst-launch-1.0 videotestsrc ! nvvideoconvert ! 'video/x-raw(memory:NVMM),format=NV12' ! m.sink_0 nvstreammux name=m batch-size=1 width=0 height=0 ! fakesink

And I get

ERROR: from element /GstPipeline:pipeline0/GstNvStreamMux:m: Output width not set

DS version 5.0.1

Do you have any plans to support automatic width/height detection in future DS releases?

And also property value range is wrong:

width             : Width of each frame in output batched buffer. This property MUST be set.
                    flags: readable, writable
                    Unsigned Integer. Range: 0 - 4294967295 Default: 0     
height            : Height of each frame in output batched buffer. This property MUST be set.
                    flags: readable, writable
                    Unsigned Integer. Range: 0 - 4294967295 Default: 0

I’d expect “1 - 4294967295”

Got it to work with

USE_NEW_NVSTREAMMUX=yes gst-launch-1.0 videotestsrc ! nvvideoconvert ! 'video/x-raw(memory:NVMM),format=NV12' ! m.sink_0 nvstreammux name=m batch-size=1 ! fakesink

Is it equivalent to the initial pipeline?

No. It is not the same.

The ‘width’ and ‘height’ properties are set for multiple streams with different resolutions case, they are batch resolution but not stream resolution. If the ‘width’ and ‘height’ are not set, and there is only one stream, the batch resolution is the same with the stream resolution. But when there are multiple streams, the resolution can not be decided by the plugin itself. You must set non-zero resolution for batch.

1 Like