hi_vi_chn_attr

说明

定义VI通道属性。

定义

typedef struct {
    hi_size              size;
    hi_pixel_format      pixel_format;
    hi_dynamic_range     dynamic_range;
    hi_video_format      video_format;
    hi_compress_mode     compress_mode;
    hi_u32               depth;
    hi_frame_rate_ctrl   frame_rate_ctrl;
    hi_u32               reserved[10];
} hi_vi_chn_attr;

成员

成员名称

描述

size

目标图像大小。静态属性,设置通道时设定,不可更改。

  • 必须配置,且大小需要在VI支持的范围,详细范围说明参考约束说明
  • 通道不支持缩放,通道size必须和pipe属性配置的size一致 。

pixel_format

目标图像像素格式。静态属性,设置通道时设定,不可更改。

当未开启DIS或LDC时,支持的像素格式为:HI_PIXEL_FORMAT_YVU_SEMIPLANAR_422、HI_PIXEL_FORMAT_YVU_SEMIPLANAR_420、HI_PIXEL_FORMAT_YUV_400。

当开启DIS或LDC时,支持的像素格式为:HI_PIXEL_FORMAT_YVU_SEMIPLANAR_420、HI_PIXEL_FORMAT_YUV_400。

dynamic_range

目标图像动态范围。静态属性,设置通道时设定,不可更改。

video_format

目标图像视频数据格式。当前版本仅支持HI_VIDEO_FORMAT_LINEAR格式。

compress_mode

目标图像压缩格式。静态属性,设置通道时设定,不可更改。当前版本不支持。

depth

用户获取图像的队列深度。静态属性,设置通道时设定,不可更改。

取值范围:[0, 8]。

frame_rate_ctrl

帧率控制。

reserved

预留参数,为保证后续版本兼容性,请务必使用memset结构体方式进行清零初始化,在代码中必须避免显式对reserved字段进行访问。

  • 当前版本,VI CHN通道不支持缩放,所以请确保将chn属性中的size大小与pipe属性中的size大小保持一致。
  • 请根据实际负载和抖动,设置合理的depth值,内部实际申请的内存块数量为:调用hi_mpi_vi_enable_chn接口开启通道时的hi_vi_pipe_attr属性中的depth - hi_vi_frame_dump_attr属性中的depth + chn属性中的depth值。所以建议用户在开启通道前,确保已完成pipe dump属性的相关配置。