NvMediaICPCreateEx error : Following combination not supported:

Please provide the following info:
Software Version
[*] DRIVE OS Linux 5.2.0
DRIVE OS Linux 5.2.0 and DriveWorks 3.5
NVIDIA DRIVE™ Software 10.0 (Linux)
NVIDIA DRIVE™ Software 9.0 (Linux)
other DRIVE OS version
other

Target Operating System
[*] Linux
QNX
other

Hardware Platform
NVIDIA DRIVE™ AGX Xavier DevKit (E3550)
[*] NVIDIA DRIVE™ AGX Pegasus DevKit (E3550)
other

SDK Manager Version
[*] 1.4.0.7363
other

Host Machine Version
[*] native Ubuntu 18.04
other

Hello I am getting the following error when calling NvMediaICPCreateEx().
I am trying to capture CSI data from an ISP which sends out yuv422 (8bit) images.

Module_id 22 Severity 6 : NvMediaICPCreateEx 76
Module_id 22 Severity 6 : T19x VI version 0x000019
Module_id 22 Severity 2 : sICPFormatsValidator 291
Module_id 22 Severity 2 : Following combination not supported:
Module_id 22 Severity 2 : inputFormatType 0
Module_id 22 Severity 2 : sufaceType 42
Module_id 22 Severity 2 : sCreateGroup 1205
Module_id 22 Severity 2 : Failed to create ICP instance 0
Module_id 22 Severity 2 : sICPCreateEx 1391
Module_id 22 Severity 2 : CreateGroup failed

I can’t find any documents about the right combinations. Please help me understand the error.

Thank you!

Hi @ranchen,

Which camera module are you using? Which sample application are you using? Which NVM_SURF_FMT_SET_ATTR_ macro are you using? Thanks!

Hi @VickNV,

I am using a customized camera (ar0231 + an ISP), the output format is yuyv422, packed.
I got the mentioned error when I use NVM_SURF_FMT_SET_ATTR_YUV(surfFormatAttrs,YUV,422,PLANAR,UINT,8,PL);
so I’ve resolved this problem by using NVM_SURF_FMT_SET_ATTR_YUV(surfFormatAttrs,YUYV,422,PACKED,UINT,8,PL);

Hi @ranchen,

Thanks for letting us know!

We don’t really support camera module bringup in the forum but below are all the supported surface formats for the format you’re capturing. FYI.

NVM_SURF_FMT_SET_ATTR_YUV(surfFormatAttrs,YUV,422,SEMI_PLANAR,UINT,8,PL);
NVM_SURF_FMT_SET_ATTR_YUV(surfFormatAttrs,YVU,422,PLANAR,UINT,8,PL);
NVM_SURF_FMT_SET_ATTR_YUV(surfFormatAttrs,YUYV,422,PACKED,UINT,8,PL);
NVM_SURF_FMT_SET_ATTR_YUV(surfFormatAttrs,YVYU,422,PACKED,UINT,8,PL);
NVM_SURF_FMT_SET_ATTR_YUV(surfFormatAttrs,VYUY,422,PACKED,UINT,8,PL);
NVM_SURF_FMT_SET_ATTR_YUV(surfFormatAttrs,UYVY,422,PACKED,UINT,8,PL);

Please check below statements from NvMedia Porting Guide of DRIVE OS 5.2.0.0 so you may need to move to SIPL APIs. Thanks!

NvMedia Image Capture Processing (NvMediaICP*) APIs are deprecated and will be removed in a future release. Use NvMedia SIPL APIs instead.

Thanks for the heads up!