I want to receive multiple cameras

I am using drivework1.2.

Are using now.
“/usr/local/driveworks/tools/capture/recorder” to receive camera input.

rig-file

{
    "rig": {
        "sensors": [
            {
                "name": "camera:front:center:120fov",
                "nominalSensor2Rig": {
                    "quaternion": [
                        0.5,
                        -0.5,
                        0.5,
                        -0.5
                    ],
                    "t": [
                        1.77,
                        0.0,
                        1.47
                    ]
                },
                "parameter": "camera-type=ar0231-rccb-bae-ss3323,csi-port=a,camera-count=1,format=h264,output-format=raw+yuv,fifo-size=30,file-buffer-size=4194304",
                "properties": {
                    "Model": "ftheta",
                    "bw-poly": "0.0 0.00102669443003833 3.77865596590254e-08 -2.1812513600894e-11 4.76916107246175e-14",
                    "cx": "960",
                    "cy": "604",
                    "height": "1208",
                    "width": "1920"
                },
                "protocol": "camera.gmsl",
                "sensor2Rig": {
                    "quaternion": [
                        0.5,
                        -0.5,
                        0.5,
                        -0.5
                    ],
                    "t": [
                        1.77,
                        0.0,
                        1.47
                    ]
                }
            }

        ],

        "vehicle": {
            "valid": true,
            "value": {
                "COMMENT": "steeringCoefficient is not validated",
                "axlebaseFront": 1.582,
                "axlebaseRear": 1.575,
                "bumperFront": 0.912,
                "bumperRear": 1.109,
                "centerOfMassToRearAxle": 1.564,
                "frontCorneringStiffness": 30654.0,
                "height": 1.473,
                "inertia": 1780.8,
                "length": 4.872,
                "mass": 1779.4,
                "rearCorneringStiffness": 36407.0,
                "steeringCoefficient": 14.8,
                "wheelDiameter": 0.673,
                "wheelbase": 2.85,
                "width": 1.852,
                "widthWithMirrors": 2.121
            }
        }
    },
    "version": 2
}

But, changing camera-count to 2 or higher does not work.

Please help me to save multiple cameras.

The provided rig-file contains only one camera.
Please tell me how to define the name when using multiple cameras.

The error is strange to use the following parameters.

1.Connect 3 cameras
Use ☞ “camera-count=3,camera-mask=0111”

[29-5-2020 18:21:37] Initialize DriveWorks SDK v1.2.400
[29-5-2020 18:21:37] Release build with GNU 4.9.4 from v1.2.0-rc11-0-ga7f5475 against Vibrante PDK v5.0.10.3
[29-5-2020 18:21:37] Platform: Detected Drive PX2 - Tegra A
[29-5-2020 18:21:37] TimeSource: monotonic epoch time offset is 1590719146089445
[29-5-2020 18:21:37] TimeSource: PTP ioctl returned error. Synchronized time will not be available.
[29-5-2020 18:21:37] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[29-5-2020 18:21:37] Platform: number of GPU devices detected 1
[29-5-2020 18:21:37] Platform: currently selected GPU device integrated ID 0
[29-5-2020 18:21:37] SDK: Resources mounted from /usr/local/driveworks-1.2/data/resources
[29-5-2020 18:21:37] SDK: Create NvMediaDevice
[29-5-2020 18:21:37] SDK: Create NvMediaIPPManager
[29-5-2020 18:21:37] egl::Display: found 1 EGL devices
[29-5-2020 18:21:37] egl::Display: use drm device: drm-nvdc
[29-5-2020 18:21:37] SensorFactory::createSensor() -> camera.gmsl, camera-type=ar0231-rccb-ae-sf3324,csi-port=a,camera-count=3,format=h264,output-format=raw+yuv,fifo-size=30,file-buffer-size=4194304,camera-mask=0111,slave=0
[29-5-2020 18:21:37] CameraGMSL: required FPS = 30, resolution = 1920x1208
***** aurix state *****
 CAM_PWR_ON: 0x0
 TEGRA_GMSL: TEGRA B
 TEGRA_FPDL: TEGRA B
 TEGRA_A_HDMI: MXM
 TEGRA_B_HDMI: MXM
 TEGRA_PCI: TEGRA B
 FAN_STATE: UNKNOWN
***********************
***** aurix state *****
 CAM_PWR_ON: 0x1
 TEGRA_GMSL: UNKNOWN
 TEGRA_FPDL: UNKNOWN
 TEGRA_A_HDMI: UNKNOWN
 TEGRA_B_HDMI: UNKNOWN
 TEGRA_PCI: UNKNOWN
 FAN_STATE: UNKNOWN
***********************
Sensor AR0231 RCCB Rev7 detected!
Sensor AR0231 RCCB Rev7 detected!
Sensor AR0231 RCCB Rev7 detected!
NvMediaImageCreateNew: Unable to create YUV surface
[CreateBufferNew:693] Failed to create nvmedia image
[BufferPool_Create_New:839] Failed to create buffer
[IppIspComponentCreateNew:845] BufferPool_Create failed
[NvMediaIPPComponentCreateNew:807] Failed to create NVMEDIA_IPP_COMPONENT_ISP component
***** aurix state *****
 CAM_PWR_ON: 0x0
 TEGRA_GMSL: UNKNOWN
 TEGRA_FPDL: UNKNOWN
 TEGRA_A_HDMI: UNKNOWN
 TEGRA_B_HDMI: UNKNOWN
 TEGRA_PCI: UNKNOWN
 FAN_STATE: UNKNOWN
***********************
[29-5-2020 18:21:38] SensorManager: DW_NVMEDIA_ERROR: CameraGMSL: Cannot setup pipeline : 7

2. Connect 3 cameras
** Use ☞ “camera-count=3,camera-mask=1110” or “camera-mask=0100”.**
If mask is written as “nnn0”, it works.

 [29-5-2020 18:21:24] SensorFactory::createSensor() -> camera.gmsl, camera-type=ar0231-rccb-ae-sf3324,csi-port=a,camera-count=3,format=h264,output-format=raw+yuv,fifo-size=30,file-buffer-size=4194304,camera-mask=1110,slave=0
 [29-5-2020 18:21:24] CameraGMSL: required FPS = 30, resolution = 1920x1208
 ***** aurix state *****
  CAM_PWR_ON: 0x0
  TEGRA_GMSL: TEGRA B
  TEGRA_FPDL: TEGRA B
  TEGRA_A_HDMI: MXM
  TEGRA_B_HDMI: MXM
  TEGRA_PCI: TEGRA B
  FAN_STATE: UNKNOWN
 ***********************
 ***** aurix state *****
  CAM_PWR_ON: 0x1
  TEGRA_GMSL: UNKNOWN
  TEGRA_FPDL: UNKNOWN
  TEGRA_A_HDMI: UNKNOWN
  TEGRA_B_HDMI: UNKNOWN
  TEGRA_PCI: UNKNOWN
  FAN_STATE: UNKNOWN
 ***********************
 Sensor AR0231 RCCB Rev7 detected!
 Sensor AR0231 RCCB Rev7 detected!
 [29-5-2020 18:21:24] CameraGMSL: default IPP event callback function set
 [29-5-2020 18:21:24] CameraGMSL: serializer bitrate not specified. Using 8000000.
 Rig: test.json NewSink: /dev/null
 [29-5-2020 18:21:24] SensorManager: started
 Press s<Enter> to start, just <Enter> to see progress, q<Enter> to quit.

I would like to know how to save more than 2 cameras simultaneously using “recorder-qtgui”.

Dear @ehduk,
Please check running sample_camera_multiple_gmsl sample with 2 cameras and confirm if there is no issue camera setting. if it works please check with recorder tool to verify there is no issue recorder config file.

I confirmed sample_camera_multiple_gmsl it works with 4 cameras.

Can you tell me the rig-file to use for recorder-qtgui?

Dear @ehduk,
Could you tell the camera model details and share the used full command to run sample_camera_multiple_gmsl.

I used the 120 degree camera sf3324.
only “sample_camera_multiple_gmsl” was executed without any other command.

Dear @ehduk,
I am closing this topic as per our conversation via private message. please share the final paramters or rig file for benefiting other in community.

1 Like