when I run smaple_drivenetNcameras twice at the same time(selector-mask are 1111 and 000000010001), it will report error after working well for about 10s.
[19-6-2019 14:27:42] CameraGMSL: Frame: 509 CaptureTimestamp: 3888641276 - ICP DROP in camera 1
ImgAddFences: Couldn’t find a place to store the fences
NvMediaEglStreamProducerGetImage: Failed to add read fence
[19-6-2019 14:27:42] ImageStreamer: timeout waitPosted, producer waited for 33 ms.
[19-6-2019 14:27:42] ImageStreamer: cannot post, no available slot
[19-6-2019 14:27:42] CameraGMSL: Frame: 524 CaptureTimestamp: 3888676266 - ICP DROP in camera 0
[19-6-2019 14:27:42] CameraGMSL: Frame: 511 CaptureTimestamp: 3888707927 - ICP DROP in camera 1
[19-6-2019 14:27:42] ImageStreamer: cannot receive, EGLstream busy
[19-6-2019 14:27:42] Driveworks exception thrown: DW_INVALID_ARGUMENT: Cannot cast to C handle, given instance is a nullptr
terminate called after throwing an instance of ‘std::runtime_error’
what(): [2019-06-19 14:27:42] DW Error DW_INVALID_ARGUMENT executing DW function:
dwSensorCamera_getImage(&rawImageCUDA, DW_CAMERA_OUTPUT_CUDA_RAW_UINT16, frameHandle)
at /builds/driveav/dw/sdk/samples/drivenet/drivenet_ncameras/main.cpp:477
Aborted (core dumped)
The main.cpp:477 is “dwSensorCamera_getImage” function.
Also there is no eglstreamer code here.
I want to identify objects using sample_drivenetNcameras with 6 cameras on PX2.
When I run the modified sample_drivenetNcameras, or the original sample_drivenetNcameras twice at the same time, get the same error.
I used multi-threads get image and processed it, and use type DW_CAMERA_OUTPUT_CUDA_RGBA_UINT8 to directly get cuda image. I used producer-consumer mode to make thread synchronization, and thread 2 process() is much slower than thread 1 getimage().
When I run, it failed and printed error “Driveworks exception thrown: DW_CUDA_ERROR: Call failed cuEGLStreamConsumerAcquireFrame : unspecified launch fahanksilure”.
If I $export CUDA_VISIBLE_DEVICES=1 it run success but fps is 4.
If I $export CUDA_VISIBLE_DEVICES=0 it also run failed.
How did it happen, how can I solve this question?
Thanks!