hi_mpi_isp_set_pub_attr
函数功能
设置ISP公共属性,例如裁剪分辨率、帧率等。
函数原型
hi_s32 hi_mpi_isp_set_pub_attr(hi_vi_pipe vi_pipe, const hi_isp_pub_attr *pub_attr)
约束说明
- 调用本接口前,必须先调用hi_mpi_isp_mem_init接口初始化ISP内部资源。
- ISP支持运行过程中动态裁剪图像的起始位置。
- 调用本接口后ISP内的处理流程:
ISP firmware判断图像WDR模式、分辨率、帧率是否变化,若都不变则直接返回;否则,ISP firmware会调用通过hi_mpi_isp_sensor_reg_callback接口注册的回调函数pfn_cmos_set_wdr_mode、pfn_cmos_set_image_mode改变Sensor模式;
- 若Sensor模式不改变(回调函数返回值-2),判断ISP的裁剪宽高是否变化,若有变化,ISP firmware切换分辨率,并调用通过hi_mpi_isp_sensor_reg_callback接口注册的回调函数pfn_cmos_sensor_init重新配置Sensor;若无变化,就不变。
- 若Sensor模式改变(回调函数返回值为0),则ISP firmware会调用通过hi_mpi_isp_sensor_reg_callback接口注册的回调函数pfn_cmos_sensor_init重新配置Sensor;
- 用户可以修改回调函数pfn_cmos_set_image_mode的实现来调整Sensor模式切换的顺序。如只提供了5M30fps和1080P60fps初始化序列的Sensor,若要运行1080P30fps,可以从5M30fps裁剪得到,也可以从1080P60fps降帧得到, 修改pfn_cmos_set_image_mode函数实现即可。
- 切换线性模式和帧WDR模式时,同样会判断pfn_cmos_set_image_mode的返回值, 因此线性模式和帧WDR模式应该采用不同的 image_mode,才能保证切换成功。
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
vi_pipe |
输入 |
VI PIPE号。 取值范围:[0, 12)。 |
pub_attr |
输入 |
ISP公共属性。 |
返回值说明
- 0:成功
- 非0:失败,参见错误码。
父主题: ISP系统控制及3A算法注册