Unable to create nvstreammux in deepstream-l4t:5.1-21.02-iot


We have successfully developed our app on Deepstream 5.1 on Jetson Xavier NX and are porting to deepstream-l4t:5.1-21.02-iot, running on the same Xavier. When running the app within the container, the app fails to create nvstreammux. Running ‘gst-inspect-1.0 nvstreammux’ returns No such element or plugin ‘nvstreammux’. We previously encountered this error when first developing on Deepstream 5.1, but resolved it by flashing the Xavier via the SDK. Has anyone encountered this?

Creating streamux

Unable to create NvStreamMux
Traceback (most recent call last):
File “pipeline.py”, line 298, in
sys.exit(main(list_of_sources, codec = args.codec, bitrate = args.bitrate, rtsp_port_num = args.rtsp_port_num))
File “pipeline.py”, line 98, in main
File “/usr/lib/python3/dist-packages/gi/overrides/Gst.py”, line 64, in add
if not Gst.Bin.add(self, arg):
TypeError: Argument 1 does not allow None as a value

Code Snippet:
# Standard GStreamer initialization

# Create gstreamer elements */
# Create Pipeline element that will form a connection of other elements
print("Creating Pipeline \n ")
pipeline = Gst.Pipeline()
is_live = False

if not pipeline:
    sys.stderr.write(" Unable to create Pipeline \n")
print("Creating streamux \n ")

# Create nvstreammux instance to form batches from one or more sources.
streammux = Gst.ElementFactory.make("nvstreammux", "Stream-muxer")
if not streammux:
    sys.stderr.write(" Unable to create NvStreamMux \n")

Do you mean you are using the docker container on your NX board? Please make sure your board has been upgraded with JetPack4.5.1.

1 Like

Hi Fiona

Thanks for getting back. Yeah, we’re running in a docker container on the board, and the board has been flashed with Jetpack 4.5.1 The issue was that we were exporting the display, but running headless with no X forwarding, so the pipeline would not build. We corrected that and the pipeline works.

All the best