hi_mpi_isp_get_vd_time_out

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

Obtains ISP interrupt information.

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, 12)

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.

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 is used to obtain the ISP 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.