hi_mpi_isp_ae_lib_reg_callback

Applicable Products

Product

Supported

Ascend 950PR/Ascend 950DT

×

Atlas A3 training products/Atlas A3 inference products

×

Atlas A2 training products/Atlas A2 inference products

×

Atlas 200I/500 A2 inference products

√

Atlas inference products

×

Atlas training products

×

Description

Registers the callback functions of the AE algorithm library with the ISP.

Prototype

hi_s32 hi_mpi_isp_ae_lib_reg_callback(hi_vi_pipe vi_pipe, const hi_isp_3a_alg_lib *ae_lib, const hi_isp_ae_register *ae_register)

Parameters

Parameter

Input/Output

Description

vi_pipe

Input

VI pipe ID

Value range: [0, 12)

ae_lib

Input

Pointer to the structure of the AE algorithm library

ae_register

Input

Pointer to the structure for registering the AE algorithm library

Returns

  • 0: success
  • Other values: failure. For details, see Error Codes.

Constraints

  • If you use the AE algorithm library, this API can be ignored. If you use your own AE algorithm library, you need to call this API to register callback functions with the ISP.
  • This API does not support multiple processes.
  • A maximum of two AE libraries can be registered.

Example

hi_isp_ae_register ae_register;
hi_s32 ret = HI_SUCCESS;
ae_register.ae_exp_func.pfn_ae_init = ae_init;
ae_register.ae_exp_func.pfn_ae_run = ae_run;
ae_register.ae_exp_func.pfn_ae_ctrl = ae_ctrl;
ae_register.ae_exp_func.pfn_ae_exit = ae_exit;
ret = hi_mpi_isp_ae_lib_reg_callback(vi_pipe, ae_lib, &ae_register);
if (HI_SUCCESS != ret) {
    printf("Hi_ae register failed!\n");
}