Does libargus support yuv camera devices?

Hi,
We will use four 2-lane bayer cameras (not ov5693, imx185) and two 2-lane yuv caemras on Tx1.
The camera drivers are V4L2 media-controller sensor kernel driver and SDK version is R24.2.1.
Can Tx1 support multi cameras to use TX1 ISP at the same time?
Does libargus support the bayer sensor devices we use?
Does libargus support multi bayer cameras at the same time?
Does libargus support yuv camera devices?

Thank you,

Yes, both of your request are supported.

Dear ShaneCCC,

Thank you for your prompt reply.

Hello Gentleman,

We are following the use case on TX1 platform (L4T:24.2.1, Jetpack:2.3.1),
and we could capture the sensor data by the gstreamer command:

gst-launch-1.0 nvcamerasrc sensor-id=0 fpsRange="30 30" ! 'video/x-raw(memory:NVMM), width=1280, height=720, format=(string)I420, framerate=30/1' ! nvvidconv ! 'video/x-raw(memory:NVMM), width=640, height=480, format=(string)I420, framerate=30/1' ! nvegltransform ! nveglglessink -e

but when we execute the tegra_multimedia_api/samples/9_camera_jpeg_capture, we will get the error:

NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: No module data found
Sensor_LoadModeModeType: mode 0: Failed to load pixeltype
Sensor_LoadModePixelPhase: mode 0: Failed to load pixeltype
Sensor_LoadModeModeType: mode 1: Failed to load pixeltype
Sensor_LoadModePixelPhase: mode 1: Failed to load pixeltype
Sensor_LoadModeModeType: mode 2: Failed to load pixeltype
Sensor_LoadModePixelPhase: mode 2: Failed to load pixeltype
Sensor_LoadModeModeType: mode 3: Failed to load pixeltype
Sensor_LoadModePixelPhase: mode 3: Failed to load pixeltype
Sensor_LoadModeModeType: mode 4: Failed to load pixeltype
Sensor_LoadModePixelPhase: mode 4: Failed to load pixeltype
Sensor_LoadModeModeType: mode 5: Failed to load pixeltype
Sensor_LoadModePixelPhase: mode 5: Failed to load pixeltype
PRODUCER: Creating output stream
PRODUCER: Launching consumer thread
CONSUMER: Waiting until producer is connected...
CONSUMER: Waiting until producer is connected...
PRODUCER: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
CONSUMER: Producer has connected; continuing.
LSC:patch height less than 10LSC:patch height less than 10(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlValMultiple(), line 620)
(NvOdmDevice) Error IoctlFailed: Coarse Time set failed (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlVal(), line 411)
NvPclDriver_UpdateOutputSettings: Set Control failed. Use cached values
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function streamControl(), line 1136)
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlValMultiple(), line 620)
(NvOdmDevice) Error IoctlFailed: Coarse Time set failed (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlVal(), line 411)
NvPclDriver_UpdateOutputSettings: Set Control failed. Use cached values
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function streamControl(), line 1136)
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlValMultiple(), line 620)
(NvOdmDevice) Error IoctlFailed: Coarse Time set failed (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlVal(), line 411)
NvPclDriver_UpdateOutputSettings: Set Control failed. Use cached values
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function streamControl(), line 1136)
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlValMultiple(), line 620)
(NvOdmDevice) Error IoctlFailed: Coarse Time set failed (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlVal(), line 411)
NvPclDriver_UpdateOutputSettings: Set Control failed. Use cached values
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function streamControl(), line 1136)
SCF: Error Timeout:  (propagating from src/services/capture/CaptureServiceEvent.cpp, function wait(), line 59)
Error: Camera HwEvents wait, this may indicate a hardware timeout occured,abort current/incoming cc
launchCC abort cc 104

SCF: Error Timeout:  (propagating from src/api/Session.cpp, function capture(), line 731)
(Argus) Error Timeout: Failed to submit first capture request (propagating from src/api/CaptureSessionImpl.cpp, function submitCaptureRequests(), line 301)
(Argus) Error Timeout:  (propagating from src/api/CaptureSessionImpl.cpp, function threadFunction(), line 741)
Error: waitCsiFrameStart timeout guid 0
Error: waitCsiFrameStart Something went wrong with waiting on frame start
Error: waitCsiFrameStart Something went wrong with waiting on frame start
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlValMultiple(), line 620)
(NvOdmDevice) Error IoctlFailed: Gain set failed (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlVal(), line 411)
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlValMultiple(), line 620)
(NvOdmDevice) Error IoctlFailed: Coarse Time set failed (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlVal(), line 411)
NvPclDriver_UpdateOutputSettings: Set Control failed. Use cached values
(NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function streamControl(), line 1136)
Error: waitCsiFrameStart timeout guid 0

Does anyone have an idea for this problem?
Thank you very much, if you have any question please feel free to ask.

Walker

Does it also failed ? Looks like the timeout to wait capture frame from the sensor. Generally this problem cause by the MIPI timing not well. Does the gstreamer always working well?

Dear ShaneCCC,

Thanks for you reply.

Does it also failed?

Sorry, could you please provide more detail information?

Does the gstreamer always working well?

Yes, It’s working well always.

BTW, the tegra_multimedia_api/samples/9_camera_jpeg_capture always running fail.

Walker

Does all of the argus sample fail?

Dear ShaneCCC,

Does all of the argus sample fail?

No, the error occurred with camera sample (09, 10, 11).

Walker

That’s interesting. From the log I saw a lot of “Error IoctlFailed:” can you explain it. And what’s the sensor module? And could you try others sample locate the tegra_multimedia_api/argus/samples/*