跳到主要内容

hi_dvpp_epoll_ctl_op

hi_img_info

说明

定义图片信息的结构体。

定义

typedef struct {
hi_u32 width;
hi_u32 height;
hi_u32 width_stride;
hi_u32 height_stride;
hi_u32 img_buf_size;
union {
hi_jpeg_raw_format pixel_format;
hi_png_color_format png_pixel_format;
hi_pixel_format img_pixel_format;
};
hi_u32 reserved[4];
} hi_img_info;

成员

成员名称描述
width图片宽。
height图片高。
width_stride图片宽stride。
height_stride图片高stride。
img_buf_size存放图片的内存大小,单位是Byte。
pixel_formatJPEGD图片格式。
png_pixel_formatPNGD图片格式。
img_pixel_format通用图片格式。
reserved预留参数,为保证后续版本兼容性,请务必使用memset结构体方式进行清零初始化,在代码中必须避免显式对reserved字段进行访问。

父主题: 公共

hi_pic_buf_attr

说明

定义图片缓冲区信息的结构体。

定义

typedef struct {
hi_u32 width;
hi_u32 height;
hi_u32 align;
hi_data_bit_width bit_width;
hi_pixel_format pixel_format;
hi_compress_mode compress_mode;
} hi_pic_buf_attr;

成员

成员名称描述
width图片宽。
height图片高。
align对齐参数,预留参数,暂不支持。
bit_width图片位宽。
pixel_format图片格式。 VDEC视频解码时,暂不使用该参数;JPEGD图像解码时,表示解码输出图像格式,当前支持的输出图像格式请参见JPEGD功能及约束说明
compress_mode压缩模式。

父主题: 公共

hi_jpeg_raw_format

说明

定义JPEG源图片格式的枚举。

定义

typedef enum {
HI_JPEG_RAW_FORMAT_YUV444 = 0,
HI_JPEG_RAW_FORMAT_YUV422 = 1,
HI_JPEG_RAW_FORMAT_YUV420 = 2,
HI_JPEG_RAW_FORMAT_YUV440 = 3,
HI_JPEG_RAW_FORMAT_YUV400 = 4,
HI_JPEG_RAW_FORMAT_YUV411 = 5,
HI_JPEG_RAW_FORMAT_MAX = 100
} hi_jpeg_raw_format;

父主题: 公共

hi_dvpp_epoll_ctl_op

说明

定义DVPP epoll操作类型。

定义

typedef enum {
HI_DVPP_EPOLL_CTL_ADD = 1,
HI_DVPP_EPOLL_CTL_MOD = 2,
HI_DVPP_EPOLL_CTL_DEL = 3,
HI_DVPP_EPOLL_CTL_BUTT
} hi_dvpp_epoll_ctl_op;

成员

成员名称描述
HI_DVPP_EPOLL_CTL_ADD向epoll实例中添加新的DVPP通道的文件句柄。
HI_DVPP_EPOLL_CTL_MOD修改epoll实例中已有DVPP通道的事件类型或对应的用户数据。
HI_DVPP_EPOLL_CTL_DEL从epoll实例中删除DVPP通道的文件句柄。
HI_DVPP_EPOLL_CTL_BUTT保留值。

父主题: 公共

hi_dvpp_epoll_event_type

说明

定义DVPP epoll事件类型。

定义

typedef enum {
HI_DVPP_EPOLL_IN = 1u,
HI_DVPP_EPOLL_OUT = 1u << 1u,
HI_DVPP_EPOLL_ET = (hi_u32)1u << 31u
&#125; hi_dvpp_epoll_event_type;

成员

成员名称描述
HI_DVPP_EPOLL_IN可读事件,标识DVPP通道中存在输出数据。
HI_DVPP_EPOLL_OUT可写事件,标识DVPP通道可以进行新的数据输入。预留功能,暂不支持。
HI_DVPP_EPOLL_ET边缘触发方式,不设定则DVPP epoll默认为水平触发。

父主题: 公共

hi_dvpp_epoll_event

说明

定义DVPP epoll事件信息。

定义

typedef struct &#123;
hi_u32 events;
hi_void *data;
&#125; hi_dvpp_epoll_event;

成员

成员名称描述
eventsDVPP epoll事件类型 ,由hi_dvpp_epoll_event_type中定义的类型组成的位掩码(bitmask),例如处理可读和可写两种事件时,此处配置为:HI_DVPP_EPOLL_IN | HI_DVPP_EPOLL_OUT。
data关联到DVPP通道的用户自定义数据。

父主题: 公共

hi_csc_matrix

说明

定义色域转换矩阵的数据标准。

基于各标准的色域转换矩阵,其各分量的转换公式如下:

## YUV转RGB:
## | R | | matrix_r0c0 matrix_r0c1 matrix_r0c2 | | Y - input_bias_0 |
## | G | = | matrix_r1c0 matrix_r1c1 matrix_r1c2 | * | U - input_bias_1 |
## | B | | matrix_r2c0 matrix_r2c1 matrix_r2c2 | | V - input_bias_2 |
## BGR转YUV:
## | Y | | output_bias_0 | | matrix_r0c0 matrix_r0c1 matrix_r0c2 | | R |
## | U | = | output_bias_1 | + | matrix_r1c0 matrix_r1c1 matrix_r1c2 | * | G |
## | V | | output_bias_2 | | matrix_r2c0 matrix_r2c1 matrix_r2c2 | | B |

定义

typedef enum &#123;
HI_CSC_MATRIX_BT601_WIDE = 0,
HI_CSC_MATRIX_BT601_NARROW,
HI_CSC_MATRIX_BT709_WIDE,
HI_CSC_MATRIX_BT709_NARROW,
HI_CSC_MATRIX_BT2020_WIDE,
HI_CSC_MATRIX_BT2020_NARROW,
HI_CSC_MATRIX_USER = 100,
HI_CSC_MATRIX_BUTT
&#125; hi_csc_matrix;

成员

表1 色域转换矩阵的数据标准

成员名称描述
HI_CSC_MATRIX_BT601_WIDE基于BT601 wide标准的色域转换矩阵。默认为HI_CSC_MATRIX_BT601_WIDE。 基于该标准的色域转换矩阵,各参数值如下:
text<br># YUV转RGB:<br># | R | | 1.000 0.000 1.402 | | Y - 0 |<br># | G | = | 1.000 -0.344 -0.714 | * | U - 128 | <br># | B | | 1.000 1.772 0.000 | | V - 128 |<br># RGB转YUV:<br># | Y | |-0.5 | | 0.299 0.587 0.114 | | R | <br># | U | = |127.5 | + | -0.168 -0.331 0.500 | * | G | <br># | V | |127.5 | | 0.500 -0.419 -0.081 | | B | <br>
HI_CSC_MATRIX_BT601_NARROW基于BT601 narrow标准的色域转换矩阵。 基于该标准的色域转换矩阵,各参数值如下:
text<br># YUV转RGB:<br># | R | | 1.16438 0.00000 1.59602 | | Y - 16 |<br># | G | = | 1.16438 -0.39176 -0.81297 | * | U - 128 | <br># | B | | 1.16438 2.01723 0.00000 | | V - 128 |<br># RGB转YUV:<br># | Y | |16 | | 0.25679 0.51564 0.10014 | | R | <br># | U | = |128| + | -0.14491 -0.29099 0.43922 | * | G | <br># | V | |128| | 0.42941 -0.36779 -0.07143 | | B | <br>
HI_CSC_MATRIX_BT709_WIDE基于BT709 wide标准的色域转换矩阵。 基于该标准的色域转换矩阵,各参数值如下:
text<br># YUV转RGB:<br># | R | | 1.00000 0.00000 1.57480 | | Y - 0 |<br># | G | = | 1.00000 -0.18732 -0.46812 | * | U - 128 | <br># | B | | 1.00000 1.85560 0.00000 | | V - 128 |<br># RGB转YUV:<br># | Y | |0 | | 0.21260 0.71520 0.07220 | | R | <br># | U | = |128| + | -0.11457 -0.38543 0.50000 | * | G | <br># | V | |128| | 0.50000 -0.45415 -0.04585 | | B | <br>
HI_CSC_MATRIX_BT709_NARROW基于BT709 narrow标准的色域转换矩阵。 基于该标准的色域转换矩阵,各参数值如下:
text<br># YUV转RGB:<br># | R | | 1.16438 0.00000 1.79274 | | Y - 16 |<br># | G | = | 1.16438 -0.21325 -0.53291 | * | U - 128 | <br># | B | | 1.16438 2.11240 0.00000 | | V - 128 |<br># RGB转YUV:<br># | Y | |16 | | 0.18259 0.62825 0.06342 | | R | <br># | U | = |128| + | -0.09840 -0.33857 0.43922 | * | G | <br># | V | |128| | 0.42941 -0.39894 -0.04027 | | B | <br>
HI_CSC_MATRIX_BT2020_WIDE基于BT2020 wide标准的色域转换矩阵。 基于该标准的色域转换矩阵,各参数值如下:
text<br># YUV转RGB:<br># | R | | 1.00000 0.00000 1.47460 | | Y - 0 |<br># | G | = | 1.00000 -0.16455 -0.57135 | * | U - 128 | <br># | B | | 1.00000 1.88140 0.00000 | | V - 128 |<br># RGB转YUV:<br># | Y | |0 | | 0.26270 0.67800 0.05930 | | R | <br># | U | = |128| + | -0.13963 -0.36037 0.50000 | * | G | <br># | V | |128| | 0.50000 -0.45979 -0.04021 | | B | <br>
HI_CSC_MATRIX_BT2020_NARROW基于BT2020 narrow标准的色域转换矩阵。 基于该标准的色域转换矩阵,各参数值如下:
text<br># YUV转RGB:<br># | R | | 1.16438 0.00000 1.67868 | | Y - 16 |<br># | G | = | 1.16438 -0.18733 -0.65042 | * | U - 128 | <br># | B | | 1.16438 2.14177 0.00000 | | V - 128 |<br># RGB转YUV:<br># | Y | |16 | | 0.22564 0.59558 0.05209 | | R | <br># | U | = |128| + | -0.11992 -0.31656 0.43922 | * | G | <br># | V | |128| | 0.42941 -0.40389 -0.03533 | | B | <br>
HI_CSC_MATRIX_USER用户自定义色域转换矩阵。
HI_CSC_MATRIX_BUTT保留值。

父主题: 公共

在线提单