hi_mpi_isp_get_vd_time_out

Description

Obtains ISP interrupt information.

Constraints

  • This API is used to obtain the information about the interrupt generated by the ISP (including whether an interrupt is generated) and the information about the current ISP frame when an interrupt is generated. The start of frame (SOF) interrupt is used.
  • In extreme cases (for example, high CPU usage), if HI_ISP_VD_FE_END ISP is used to obtain the interrupt information and read the statistics, the statistics may not be read in a timely manner. Therefore, you are advised to use HI_ISP_VD_FE_START to obtain the ISP interrupt information to read the statistics.
  • When N processes call this API to obtain the same isp_vd_type at the same time, the interrupt information obtained by each process is 1/N of the actual interrupt information. For example, in the raw data import scenario, the raw data is sent in HI_ISP_VD_FE_START mode. If other processes use HI_ISP_VD_FE_START to run other services, the frame rate for importing raw data will be reduced by half.

Prototype

hi_s32 hi_mpi_isp_get_vd_time_out(hi_vi_pipe vi_pipe, hi_isp_vd_type isp_vd_type, hi_u32 milli_sec)

Parameters

Parameter

Input/Output

Description

vi_pipe

Input

VI pipe ID

Value range: [0, 8)

isp_vd_type

Input

Vsync signal

milli_sec

Input

Timeout interval (ms)

  • The function is returned if no ISP interrupts are obtained within a specific period.
  • If milli_sec is set to 0, the blocking mode is used. In this case, the program keeps waiting and returns a result only after ISP interrupts are obtained.

Returns

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