MTK camera metadata文件中size的配置解读

Metadata文件config_static_metadata_project.h中size的配置影响着很多CTS测试项的结果,这里解读一下关于size的配置。

Example:

68          CONFIG_ENTRY_VALUE(HAL_PIXEL_FORMAT_RAW16, MINT64)

69          CONFIG_ENTRY_VALUE(4160, MINT64)        // width

70          CONFIG_ENTRY_VALUE(3120, MINT64)        // height

71          CONFIG_ENTRY_VALUE(MTK_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_OUTPUT, MINT64)   // output

72          CONFIG_ENTRY_VALUE(33333333, MINT64)   // frame duration

73          CONFIG_ENTRY_VALUE(33333333, MINT64)   // stall duration

74          CONFIG_ENTRY_VALUE(HAL_PIXEL_FORMAT_YCbCr_420_888, MINT64)

75          CONFIG_ENTRY_VALUE(4160, MINT64)        // width

76          CONFIG_ENTRY_VALUE(3120, MINT64)        // height

77          CONFIG_ENTRY_VALUE(MTK_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_OUTPUT, MINT64)   // output

78          CONFIG_ENTRY_VALUE(33333333, MINT64)   // frame duration

79          CONFIG_ENTRY_VALUE(0, MINT64)           // stall duration

80          CONFIG_ENTRY_VALUE(HAL_PIXEL_FORMAT_BLOB, MINT64)

81          CONFIG_ENTRY_VALUE(4160, MINT64)        // width

82          CONFIG_ENTRY_VALUE(3120, MINT64)        // height

83          CONFIG_ENTRY_VALUE(MTK_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_OUTPUT, MINT64)   // output

84          CONFIG_ENTRY_VALUE(33333333, MINT64)   // frame duration

85          CONFIG_ENTRY_VALUE(0, MINT64)

  1. Format size: HAL_PIXEL_FORMAT_RAW16:看Camera APP是否需要raw16 数据,如果不需要就可以不配。如果需要,就要配置raw16 size, 这里面的raw16的含义是所有raw的能力,只要想有raw数据的输出,就要配置raw16,只能填一个size,该size要等于或者接近于active array size。

HAL_PIXEL_FORMAT_BLOB:该format用于capture的size

HAL_PIXEL_FORMAT_YCbCr_420_888:该format用于preview/video的size

只要配置了YCbCr_420_888 size,就要配置相同的BLOB size,不然CTS会有fai,且size要16对齐。

  1. MTK_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_xxx:OUTPUT表示HAL层回给APP的数据,INPUT是APP回灌给HAL层的数据(APP raw reprocess),这个要根据实际需求配置
  2. frame duration:单位ns,与size大小无关,和fps有关,如果fps为30的话,那frame duration就得为 33333333, 若fps为24,则frame duration为41666667,计算方法就是用1S除以帧率再换算成ns,此值需要和驱动中对应size的帧率相匹配。
  3. stall duration:单位ns,HAL_PIXEL_FORMAT_YCbCr_420_888的stall duration需要配置成0,不然会有CTS fail,BOLB 的stall duration配置成和frame duration相同。

版权声明:本文为zhoumin090508原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。