Implementing Real-Time, Multi-Camera Pipelines with NVIDIA Jetson

Originally published at: https://developer.nvidia.com/blog/implementing-real-time-multi-camera-pipelines-with-nvidia-jetson/

Here’s how to build efficient multi-camera pipelines taking advantage of the hardware accelerators on NVIDIA Jetson platform in just a few lines of Python.

I am trying to get this example to work on the Jetson AGX Orin Dev kit running jetpack 5.0 EA. Now I know its not really made to run with this setup but if its not to far of a reach to get it to work it would be nice. I already modified “setup.py” to not load deepstream 5.1. I already have a version running that works on the jetpack 5.0 EA

That being said here is where it hangs up.

oev@ubuntu:~/jetson-multicamera-pipelines/examples$ python3 example-no-ai.py
Traceback (most recent call last):
File “example-no-ai.py”, line 7, in
p = CameraPipeline([0, 2, 4])
File “/home/joev/.local/lib/python3.8/site-packages/jetmulticam/pipelines/multicam.py”, line 63, in init
super().init(**kwargs)
File “/home/joev/.local/lib/python3.8/site-packages/jetmulticam/pipelines/basepipeline.py”, line 25, in init
self._p = self._create_pipeline(**kwargs)
File “/home/joev/.local/lib/python3.8/site-packages/jetmulticam/pipelines/multicam.py”, line 68, in _create_pipeline
cameras = [
File “/home/joev/.local/lib/python3.8/site-packages/jetmulticam/pipelines/multicam.py”, line 69, in
make_argus_camera_configured(c, bufapi_version=0) for c in self._cams
File “/home/joev/.local/lib/python3.8/site-packages/jetmulticam/bins/cameras.py”, line 18, in make_argus_camera_configured
cam.set_property(“bufapi-version”, bufapi_version)
TypeError: object of type GstNvArgusCameraSrc' does not have property bufapi-version’
Exception ignored in: <function BasePipeline.del at 0xffffb721c160>
Traceback (most recent call last):
File “/home/joev/.local/lib/python3.8/site-packages/jetmulticam/pipelines/basepipeline.py”, line 38, in del
self.stop()
File “/home/joev/.local/lib/python3.8/site-packages/jetmulticam/pipelines/basepipeline.py”, line 41, in stop
self._p.send_event(Gst.Event.new_eos())
AttributeError: ‘CameraPipeline’ object has no attribute ‘_p’

Can you run your *.py file with the -tt option (ex. python3 -tt test.py)?

My guess is there is a mix of spaces/tabs in the file when you modified it that is throwing off the interpreter.

HI i am also getting the same error. Can anyone guide please @adventuredaisy did you solve the issue.

here is the error that i get:

Downloading pretrained weights for DashCamNet model. This may take a while...
Dowloaded pre-trained DashCamNet model to: /usr/local/lib/python3.6/dist-packages/jetmulticam/models/dashcamnet/dashcamnet_pruned_v1.0
Pipeline element is None!
Traceback (most recent call last):
  File "example.py", line 16, in <module>
    display=False,
  File "/usr/local/lib/python3.6/dist-packages/jetmulticam/pipelines/multicamDNN.py", line 47, in __init__
    super().__init__(**kwargs)
  File "/usr/local/lib/python3.6/dist-packages/jetmulticam/pipelines/basepipeline.py", line 25, in __init__
    self._p = self._create_pipeline(**kwargs)
  File "/usr/local/lib/python3.6/dist-packages/jetmulticam/pipelines/multicamDNN.py", line 52, in _create_pipeline
    p = self._create_pipeline_fully_connected(self._c, self._m, **kwargs)
  File "/usr/local/lib/python3.6/dist-packages/jetmulticam/pipelines/multicamDNN.py", line 86, in _create_pipeline_fully_connected
    nvinfers = [_make_element_safe("nvinfer") for _ in model_list]
  File "/usr/local/lib/python3.6/dist-packages/jetmulticam/pipelines/multicamDNN.py", line 86, in <listcomp>
    nvinfers = [_make_element_safe("nvinfer") for _ in model_list]
  File "/usr/local/lib/python3.6/dist-packages/jetmulticam/utils/gst.py", line 45, in _make_element_safe
    raise NameError(f"Could not create element {el_type}")
NameError: Could not create element nvinfer
Exception ignored in: <bound method BasePipeline.__del__ of <jetmulticam.pipelines.multicamDNN.CameraPipelineDNN object at 0x7fa05563c8>>
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/jetmulticam/pipelines/basepipeline.py", line 38, in __del__
    self.stop()
  File "/usr/local/lib/python3.6/dist-packages/jetmulticam/pipelines/basepipeline.py", line 41, in stop
    self._p.send_event(Gst.Event.new_eos())
AttributeError: 'CameraPipelineDNN' object has no attribute '_p'

Any help please ?

@sharoseali23 @jwitsoe I am facing the same issue when trying on all example elements. Anyone found a solution?

@philippe-mo9 Unfortunately No, I again tried yesterday with deepstream 6.1.0 but this error is still there. I think the authors @jwitsoe should reply and guide us to proceed.