Forums - Integration Issues with RB5 Onboard Cameras for Real-Time Video Streaming to Python Tornado Server

1 post / 0 new
Integration Issues with RB5 Onboard Cameras for Real-Time Video Streaming to Python Tornado Server
kromeroit
Join Date: 27 Jan 24
Posts: 2
Posted: Mon, 2024-01-29 17:51

Hello Qualcomm RB5 Community,

 

I am currently working on a project where I am trying to integrate the RB5 onboard cameras with an open-source framework to stream real-time video to a Python Tornado web server. However, I've encountered an issue with setting up the GStreamer pipeline for the camera stream.

When I try to run my application, I receive the following error message:

cfg.CAMERA_TYPE RB5_CAMERA

INFO:__main__:cfg.CAMERA_TYPE RB5_CAMERA

gbm_create_device(192): Info: backend name is: msm_drm

[ WARN:0] global ../modules/videoio/src/cap_gstreamer.cpp (713) open OpenCV | GStreamer warning: Error opening bin: could not link videoconvert0 to appsink0, videoconvert0 can't handle caps video/x-raw, format=(string)BGR

[ WARN:0] global ../modules/videoio/src/cap_gstreamer.cpp (480) isPipelinePlaying OpenCV | GStreamer warning: GStreamer: pipeline have not been created

Traceback (most recent call last):

  File "manage.py", line 1146, in <module>

    drive(cfg, model_path=args['--model'], use_joystick=args['--js'],

  File "manage.py", line 104, in drive

    add_camera(V, cfg, camera_type)

  File "manage.py", line 884, in add_camera

    cam = get_camera(cfg)

  File "manage.py", line 825, in get_camera

    cam = RB5Camera(camera_index=cfg.CAMERA_INDEX, capture_width=cfg.IMAGE_W, capture_height=cfg.IMAGE_H,framerate=cfg.CAMERA_FRAMERATE)

  File "/root/donkeycar/donkeycar/parts/camera.py", line 412, in __init__

    self.init_camera()

  File "/root/donkeycar/donkeycar/parts/camera.py", line 441, in init_camera

    raise RuntimeError("Unable to open RB5Camera.")

RuntimeError: Unable to open RB5Camera.

 

 

 

I believe the issue may be related to my GStreamer pipeline configuration in the `RB5Camera` class:

 

```python

class RB5Camera(BaseCamera):

    def gstreamer_pipeline(self, camera_index=1, capture_width=640, capture_height=480, framerate=30):

        return (

            'qtiqmmfsrc ! '

            'video/x-raw(memory:GBM),format=NV12,width={capture_width},height={capture_height},framerate={framerate}/1 ! '

            'videoconvert ! '

            'appsink'

        ).format(camera_index=camera_index, capture_width=capture_width, capture_height=capture_height, framerate=framerate)

 

I am reaching out to the community for insights or suggestions on how to resolve this issue. Has anyone else experienced similar problems, or does anyone have advice on configuring the GStreamer pipeline correctly for the RB5 cameras? Any help or guidance would be greatly appreciated as I work to integrate these cameras for real-time video streaming.

 

  • Up1
  • Down0

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.