hi_mpi_vi_send_pipe_yuv
The
The
Description
Sends YUV data through a VI pipe.
Restrictions
- Call hi_mpi_vi_start_pipe to start the pipe before calling this API.
- Before sending YUV data, set the data source of the pipe to HI_VI_PIPE_FRAME_SOURCE_USER by calling hi_mpi_vi_set_pipe_frame_source. In this case, the data from the sensor is not sent to the ISP BE for processing, and the ISP BE processes only the frame data sent by the user.
- When YUV data is sent by calling this API, the YUV data must meet the following requirements:
- The width and height of the YUV data must be the same as those specified when a pipe is created by calling hi_mpi_vi_create_pipe.
- The YUV frame information that is sent must be authentic and valid, which is obtained by calling hi_mpi_vi_pipe_get_buffer.
- The pixel format of the YUV data must be the same as that configured when a pipe is created by calling hi_mpi_vi_create_pipe.
- field of the YUV data must be set to HI_VIDEO_FIELD_FRAME.
- video_format of the YUV data must be set to HI_VIDEO_FORMAT_LINEAR.
- compress_mode of the YUV data must be HI_COMPRESS_MODE_NONE.
- dynamic_range of the YUV data must be HI_DYNAMIC_RANGE_SDR8, HI_DYNAMIC_RANGE_SDR10, or HI_DYNAMIC_RANGE_XDR.
- This API cannot be called in WDR mode.
- Data can be sent only from the BE, not from the FE.
Prototype
hi_s32 hi_mpi_vi_send_pipe_yuv(hi_vi_pipe vi_pipe, const hi_video_frame_info *frame_info, hi_s32 milli_sec)
Parameters
Parameter |
Input/Output |
Description |
|---|---|---|
vi_pipe |
Input |
Pipe ID. Value range: [0, 12) |
frame_info |
Input |
Pointer to the structure of the VI frame information. |
milli_sec |
Input |
Timeout parameter.
|
Returns
- 0: success
- Other values: failure. For details, see VI Return Codes.
Parent topic: VI