下载
中文
注册

hi_mpi_isp_set_ae_route_sf_attr

函数功能

WDR模式下,设置AE短帧的曝光分配策略属性。

函数原型

hi_s32 hi_mpi_isp_set_ae_route_sf_attr(hi_vi_pipe vi_pipe, const hi_isp_ae_route *ae_route_sf_attr)

约束说明

  • 此接口用于WDR模式下设定AE短帧的曝光分配路线,AE计算得到的短帧的曝光量将按照设定的路线进行分配,用户可以根据自己的需求设定曝光优先、增益优先、光圈优先。
  • AE分配路线遵循以下限定:

    − 最大支持 16 个节点,每个节点有曝光时间、增益、光圈三个分量,增益包含模拟增益、数字增益、ISP数字增益。

    − 节点中曝光时间的单位为us,不能设置为 0,也不能设置太小导致实际对应的曝光行数为 0,否则可能产生异常。

    − 光圈分量仅支持P-Iris,不支持DC-Iris,因为DC-Iris 无法精确控制,所以DCIris和手动光圈镜头光圈分量是无效的。即光圈类型为DC-Iris时,节点光圈分量不会对曝光量分配产生任何影响。光圈分量仅在优先帧为短帧时可控。

    − 节点的曝光量是曝光时间、增益和光圈的乘积,节点曝光量单调递增,后一个节点的曝光量大于或等于前一个节点的曝光量,第一个节点的曝光量最小,最后一个节点的曝光量最大。

    − 如果相邻节点的曝光量增加,那么应该有一个分量增加,其他分量固定,增加的分量决定该段路线的分配策略。例如增益分量增加,那么该段路线的分配策略是增益优先。

    − 不支持设置等曝光量节点。

    − 用户可以根据不同的场景设置不同的路线,分配路线支持动态切换。

    − AE分配路线不能用于限制曝光参数的最大值和最小值。如果当前曝光量不在用户设定的路线范围当中,即曝光量超出了第一个节点或最后一个节点,曝光参数分配会超出节点限制,但不超过参数本身范围限制。

    − 针对DC-Iris和手动光圈镜头,默认AE分配策略是首先分配曝光时间,其次分配增益。针对P-Iris镜头,默认AE分配策略是首先调节光圈,将光圈调至最大后调节曝光时间,最后再分配增益。如果当前曝光量不在用户设定的路线范围当中,按默认策略分配。

    − 在线进行DC-Iris和P-Iris切换,短帧AE route会重置为与光圈类型相匹配的默认分配策略,用户可以根据需要在切换光圈类型时自行设置短帧AE route。

    − 优先帧为长帧且增益分开配置不使能、以及线性模式下,短帧AE route不生效。

    − 自动降帧时,最大曝光时间的改变会更新到分配路线中。

    − 线性模式与WDR模式切换时,若cmos.c里面设置了短帧AE route,则在切换后会采用cmos.c中的route,否则采用默认的短帧AE route。

    2 合 1WDR模式下,帧率或分辨率切换时,若用户设置的最大曝光目标时间大于切换后 1 帧所允许的最大曝光时间的一半,那么分配路线的最大曝光时间会更新为切换后 1 帧所允许的最大曝光时间的一半。

    − 发生自动降帧、线性与 2 合 1WDR模式切换、帧率或分辨率切换、优先帧切换、增益分开配置切换、限制曝光时间或增益的最大最小值等情况时,实际生效的AE route可能与MPI设置的不一致,此时可以通过

    hi_mpi_isp_query_exposure_info获取实际生效的短帧AE route。

参数说明

参数名

输入/输出

说明

vi_pipe

输入

VI PIPE号。

取值范围:[0, 12)。

ae_route_sf_attr

输入

AE短帧的曝光分配策略结构体指针。

返回值说明

参考样例

hi_vi_pipe vi_pipe = 0; 
hi_isp_ae_route ae_route_sf_attr; 
hi_u32 route_node [3][3] = {{100,1024,1},{20000,1024,1},{20000,16384,1}};
hi_mpi_isp_set_ae_route_sf_attr(vi_pipe, & ae_route_sf_attr); 
ae_route_sf_attr.total_num = 3;
memcpy(ae_route_sf_attr. route_node, route_node, sizeof(route_node)); 
hi_mpi_isp_set_ae_route_sf_attr(vi_pipe, & ae_route_sf_attr);