下载
中文
注册

hi_mpi_isp_set_piris_attr

函数功能

设定P-Iris自动光圈的控制属性。

函数原型

hi_s32 hi_mpi_isp_set_piris_attr(hi_vi_pipe vi_pipe, const hi_isp_piris_attr *piris_attr)

约束说明

  • P-Iris自动光圈控制属性包含一个只写参数step_fno_table_change,建议先对该结构体赋值,set MPI接口一次之后再get MPI接口,直接get再set MPI可能会报错。
  • P-Iris镜头光圈控制通过AE分配路线进行。P-Iris对接重点在于正确设置镜头相关参数和合理设置AE分配路线,详见 hi_isp_piris_attr和hi_mpi_isp_set_ae_route_attr部分描述,才能保证P-Iris正常工作。由于不同PIris的驱动方式可能会有差别,用户可以自行修改P-Iris驱动以适配不同镜头。

    关闭AI功能,对于P-Iris镜头,光圈会打开到最大光圈目标值对应步进电机位置。

参数说明

参数名

输入/输出

说明

vi_pipe

输入

VI PIPE号。

取值范围:[0, 12)。

piris_attr

输入

P-Iris自动光圈控制属性结构体指针。

返回值说明

参考样例

hi_vi_pipe vi_pipe = 0;     
hi_isp_piris_attr  piris_attr, piris_attr_def;     
hi_u16 total_step_def = 93;     
hi_u16 step_count_def = 62;     
hi_u16 step_fno_table_def[1024] =
{30,35,40,45,50,56,61,67,73,79,85,92,98,105,112,120,127,135,143,150,158,166,174,183,191,200,20 8,217,225,234,243,252,261,270,279,289,298,307,316,325,335,344,353,362,372,381,390,399,408,41
7,426,435,444,453,462,470,478,486,493,500,506,512};     
hi_isp_iris_f_no  max_iris_fno_target_def = 9;     
hi_isp_iris_f_no  min_iris_fno_target_def = 5;     
piris_attr_def.step_fno_table_change= HI_TRUE;     
piris_attr_def.zero_is_max= HI_TRUE;    
piris_attr_def.step_count= step_count_def;     
piris_attr_def.total_step= total_step_def;     
piris_attr_def.max_iris_fno_target = max_iris_fno_target_def;     
piris_attr_def.min_iris_fno_target = min_iris_fno_target_def;     
memcpy(piris_attr_def.step_fno_table, step_fno_table_def, sizeof(piris_attr_def.step_fno_table));
hi_mpi_isp_set_piris_attr(vi_pipe, &piris_attr_def); 
hi_mpi_isp_get_piris_attr(vi_pipe, &piris_attr);