Part Number: TDA3
Tool/software: TI-RTOS
Hi
I am in the same usecases using gray 12bit sensor for captureing and displaying.
I tried your recommendation like the follow:
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
pInstPrm->videoIfMode = SYSTEM_VIFM_SCH_DS_HSYNC_VSYNC; pInstPrm->videoIfWidth = SYSTEM_VIFW_16BIT; pInstPrm->bufCaptMode = SYSTEM_CAPT_BCM_FRM_DROP; pInstPrm->numStream = 1; pInprms->width = captureInWidth; pInprms->height = captureInHeight; pInprms->dataFormat = SYSTEM_DF_RAW16; pInprms->scanFormat = SYSTEM_SF_PROGRESSIVE; pOutprms->width = captureOutWidth; pOutprms->height = captureOutHeight; pOutprms->dataFormat = SYSTEM_DF_RAW16; pOutprms->maxWidth = pOutprms->width; pOutprms->maxHeight = pOutprms->height; pPortCfg->syncType = SYSTEM_VIP_SYNC_TYPE_DIS_SINGLE_YUV; pPortCfg->ancCropEnable = FALSE; pPortCfg->intfCfg.clipActive = FALSE; pPortCfg->intfCfg.clipBlank = FALSE; pPortCfg->intfCfg.intfWidth = SYSTEM_VIFW_16BIT; |
but I had some error without capturing and displaying.
[IPU1-0] 43.969377 s:
[IPU1-0] 43.974653 s: CAPTURE: Create in progress !!!
[IPU1-0] 43.974958 s: CAPTURE: VIP1 Slice0 PortA capture mode is [16-bit] !!!
[IPU1-0] 43.975812 s: SYSTEM: WARNING: Memory address out of bounds (0x82ff0400, 153600 B). Memory region is [ 0x82f7fc00, 576000 B ] !!!
[IPU1-0] 43.975995 s: SYSTEM: WARNING: Memory address out of bounds (0x83015c00, 153600 B). Memory region is [ 0x82f7fc00, 576000 B ] !!!
[IPU1-0] 43.976331 s: CAPTURE: Insuffcient memory provided by user !!!
[IPU1-0] 43.976453 s: CAPTURE: Memory requirement is 768000 bytes.
[IPU1-0] 43.976514 s: CAPTURE: Memory provided by user is 576000 bytes.
[IPU1-0] 43.976605 s: CAPTURE: Additional Memory required is 192000 bytes.
[IPU1-0] 43.976697 s: CAPTURE: ERROR: Cannot continue execution !!!
[IPU1-0] 43.976758 s: Assertion @ Line: 1779 in system_common.c: (Bool)0U : failed !!!
[IPU1-0] 43.977154 s: Assertion @ Line: 1779 in system_common.c: (Bool)0U : failed !!!
The difference between your code and default code are only pInstPrm->videoIfWidth, pInprms->dataFormat, and pOutprms->dataFormat.
So I tried several tests changing the values.
The results are like the below. Image Resolution is set to 320x240.
pInstPrm->videoIfWidth | pInprms->dataFormat | pOutprms->dataFormat | Result |
SYSTEM_VIFW_8BIT | SYSTEM_DF_YUV422P | SYSTEM_DF_YUV420SP_UV | OK |
SYSTEM_DF_YUV422I_UYVY | [IPU1-0] 44.972579 s: CAPTURE: VIP1 Slice0 PortA capture mode is [ 8-bit] !!! [IPU1-0] 54.326541 s: CAPTURE: Memory requirement is 768000 bytes. [IPU1-0] 54.326602 s: CAPTURE: Memory provided by user is 576000 bytes. [IPU1-0] 54.326694 s: CAPTURE: Additional Memory required is 192000 bytes. |
||
SYSTEM_DF_YUV422SP_UV | [IPU1-0] 74.361922 s: CAPTURE: VIP1 Slice0 PortA capture mode is [ 8-bit] !!! [IPU1-0] 74.363173 s: CAPTURE: Memory requirement is 384000 bytes. [IPU1-0] 74.363264 s: CAPTURE: Memory provided by user is 576000 bytes. [IPU1-0] 74.363356 s: CAPTURE: Unused Memory is 192000 bytes. |
||
SYSTEM_DF_YUV420SP_VU | [IPU1-0] 80.699048 s: CAPTURE: VIP1 Slice0 PortA capture mode is [ 8-bit] !!! [IPU1-0] 80.700207 s: CAPTURE: Memory requirement is 384000 bytes. [IPU1-0] 80.700329 s: CAPTURE: Memory provided by user is 576000 bytes. [IPU1-0] 80.700390 s: CAPTURE: Unused Memory is 192000 bytes. |
||
SYSTEM_DF_YUV420P | [IPU1-0] 31.385835 s: CAPTURE: Memory requirement is 1536000 bytes. [IPU1-0] 31.385926 s: CAPTURE: Memory provided by user is 576000 bytes. [IPU1-0] 31.385987 s: CAPTURE: Additional Memory required is 960000 bytes. |
||
SYSTEM_DF_RAW16 | [IPU1-0] 20.233575 s: CAPTURE: Memory requirement is 1536000 bytes. [IPU1-0] 20.233666 s: CAPTURE: Memory provided by user is 576000 bytes. [IPU1-0] 20.233727 s: CAPTURE: Additional Memory required is 960000 bytes. |
||
SYSTEM_VIFW_8BIT | SYSTEM_DF_RAW16 | SYSTEM_DF_YUV420SP_UV | No Image Out, No Capture |
SYSTEM_DF_RGB16_565 | SYSTEM_DF_YUV420SP_UV | OK but color changed | |
SYSTEM_DF_RGB16_565 | SYSTEM_DF_RGB16_565 | [IPU1-0] 26.043097 s: CAPTURE: Memory requirement is 1536000 bytes. [IPU1-0] 26.043189 s: CAPTURE: Memory provided by user is 576000 bytes. [IPU1-0] 26.043250 s: CAPTURE: Additional Memory required is 960000 bytes. |
|
SYSTEM_DF_RAW16 | SYSTEM_DF_RAW16 | [IPU1-0] 16.130299 s: CAPTURE: Memory requirement is 1536000 bytes. [IPU1-0] 16.130391 s: CAPTURE: Memory provided by user is 576000 bytes. [IPU1-0] 16.130452 s: CAPTURE: Additional Memory required is 960000 bytes. |
|
SYSTEM_VIFW_16BIT | SYSTEM_DF_RAW16 | SYSTEM_DF_RAW16 | [IPU1-0] 43.974958 s: CAPTURE: VIP1 Slice0 PortA capture mode is [16-bit] !!! [IPU1-0] 43.976453 s: CAPTURE: Memory requirement is 768000 bytes. [IPU1-0] 43.976514 s: CAPTURE: Memory provided by user is 576000 bytes. [IPU1-0] 43.976605 s: CAPTURE: Additional Memory required is 192000 bytes. |
Please analyse the results and let me know how to solve this please.
Thank you.