hi_stiching_ipm_param

Function

Defines the stitching table information.

Definition

typedef struct {
    hi_u32 src_pic_width;
    hi_u32 src_pic_height;
    hi_u32 dest_pic_width;
    hi_u32 dest_pic_height;
    hi_u32 ipm_table_len;
    hi_stiching_ipm_table *ipm_table_address;
} hi_stiching_ipm_param;

For details about basic data type hi_u32, see Basic Data Types.

Members

Member

Description

src_pic_width

Width of the input image.

The widths of the four input images must be the same.

src_pic_height

Height of the input image.

The heights of the four input images must be the same.

dest_pic_width

Width of the output image.

dest_pic_height

Height of the output image.

ipm_table_len

Array size. The value must be dest_pic_width × dest_pic_height.

ipm_table_address

Stitching table address. For details, see hi_stiching_ipm_table.

You need to allocate a buffer in advance to store the stitching table data. Buffer size (in bytes) = sizeof(hi_stiching_ipm_table) × ipm_table_len.

The buffer size here may be large. If you use the malloc API in the C standard library to allocate a buffer, the buffer will be fragmented and the number of huge pages will be reduced. As a result, you will not be able to call hi_mpi_dvpp_malloc to allocate input/output buffers for each DVPP function. Therefore, you are advised to call hi_mpi_dvpp_malloc to allocate a buffer for storing data of ipm_table_address.