JPEGD参数说明
入参:JpegdIn
成员变量 |
说明 |
---|---|
unsigned char* jpegData |
输入jpg图片数据,起始地址128对齐,2M大页表方式申请。 使用Matrix提供的HIAI_DVPP_DMalloc接口申请内存,申请到的内存满足DVPP的要求(首地址128对齐)。HIAI_DVPP_DMalloc接口的说明,请参见《 Matrix API参考》。
须知:
使用HIAI_DVPP_DMalloc接口申请内存时,则由用户保证申请的内存大小与输入参数jpegDataSize的参数值一致。 |
uint32_t jpegDataSize |
输入内存的长度。 使用Matrix提供的HIAI_DVPP_DMalloc接口申请内存,申请到的内存大小为“实际数据大小+8 byte”,8 byte为硬件约束要求。 |
bool isYUV420Need |
是否需要输出yuv420 semi-planar格式的数据。
JPEGD支持raw格式(包括yuv420sp、yuv422sp、yuv444sp)和降采样为yuv420的半平面格式输出。其中灰度图片输出的yuv420为fake420形式。 |
bool isVBeforeU |
该参数值只能配置为true,v在u前,预留字段。 |
出参:JpegdOut
成员变量 |
说明 |
---|---|
unsigned char* yuvData |
输出yuv图片数据buf,该图片的宽高为128*16对齐后的宽高。 如果由用户指定内存,使用Matrix提供的HIAI_DVPP_DMalloc接口申请内存,申请到的内存满足DVPP的要求(首地址128对齐)。HIAI_DVPP_DMalloc接口的说明,请参见《 Matrix API参考》。
须知:
使用HIAI_DVPP_DMalloc接口申请内存时,则由用户保证申请的内存大小与输入参数yuvDataSize的参数值一致。 |
uint32_t yuvDataSize |
输出yuv数据的长度,数据长度由对齐后的宽高计算,也可以通过调用DvppGetOutParameter接口获取数据长度。 |
uint32_t imgWidth |
输出yuv图片的宽度。 |
uint32_t imgHeight |
输出yuv图片的高度。 |
uint32_t imgWidthAligned |
输出图片的对齐后的宽度,对齐到128。 |
uint32_t imgHeightAligned |
输出图片的对齐后的高度,对齐到16。 |
JpegCalBackFree cbFree |
释放输出内存的回调函数。
|
jpegd_color_space outFormat |
输出yuv数据格式: enum jpegd_color_space{ DVPP_JPEG_DECODE_OUT_UNKNOWN = -1, DVPP_JPEG_DECODE_OUT_YUV444 = 0, DVPP_JPEG_DECODE_OUT_YUV422_H2V1 = 1, /* YUV422 */ DVPP_JPEG_DECODE_OUT_YUV422_H1V2 = 2, /* YUV440 */ DVPP_JPEG_DECODE_OUT_YUV420 = 3, DVPP_JPEG_DECODE_OUT_YUV400 = 4, DVPP_JPEG_DECODE_OUT_FORMAT_MAX, }; |
入参:jpegd_raw_data_info
成员变量 |
说明 |
---|---|
unsigned char* jpeg_data |
输入jpg图片数据,起始地址128对齐,2M大页表方式申请。 使用Matrix提供的HIAI_DVPP_DMalloc接口申请内存,申请到的内存满足DVPP的要求(首地址128对齐)。HIAI_DVPP_DMalloc接口的说明,请参见《 Matrix API参考》。
须知:
使用HIAI_DVPP_DMalloc接口申请内存时,则由用户保证申请的内存大小与输入参数jpeg_data_size的参数值一致。 |
uint32_t jpeg_data_size |
输入内存的长度。 使用Matrix提供的HIAI_DVPP_DMalloc接口申请内存,申请到的内存大小为“实际数据大小+8 byte”,8 byte为硬件约束要求。 |
jpegd_raw_format in_format |
输入图片中yuv的采样格式,不需要填充,默认值即可。 enum jpegd_raw_format{ DVPP_JPEG_DECODE_RAW_YUV_UNSUPPORT = -1, DVPP_JPEG_DECODE_RAW_YUV444 = 0, DVPP_JPEG_DECODE_RAW_YUV422_H2V1 = 1, // 422 // yuv440 不再支持,保留字段 DVPP_JPEG_DECODE_RAW_YUV422_H1V2 = 2, // 440 DVPP_JPEG_DECODE_RAW_YUV420 = 3, DVPP_JPEG_DECODE_RAW_YUV400 = 4, DVPP_JPEG_DECODE_RAW_MAX, }; |
bool IsYUV420Need |
是否需要输出yuv420 semi-planar格式的数据。
JPEGD支持raw格式(包括yuv420sp、yuv422sp、yuv444sp)和降采样为yuv420的半平面格式输出。其中灰度图片输出的yuv420为fake420形式。 |
bool isVBeforeU |
该参数值只能配置为true,v在u前,预留字段。 |
出参:jpegd_yuv_data_info
成员变量 |
说明 |
---|---|
unsigned char* yuv_data |
输出yuv图片数据buf,该图片的宽高为对齐后的宽高。
须知:
该内存是由DVPP内部申请并管理,不能由用户指定。 |
uint32_t yuv_data_size |
输出yuv数据的长度,数据长度由对齐后的宽高计算。 |
uint32_t img_width |
输出yuv图片的宽度。 |
uint32_t img_height |
输出yuv图片的高度。 |
uint32_t img_width_aligned |
输出图片的对齐后的宽度,对齐到128。 |
uint32_t img_height_aligned |
输出图片的对齐后的高度,对齐到16。 |
JpegCalBackFree cbFree |
释放输出内存的回调函数。 DVPP内部申请内存,需由用户调用cbFree()回调函数释放内存,并将yuv_data置为空指针。调用示例请参见实现JPEGD功能。 |
enum jpegd_color_space out_format |
输出yuv数据格式: enum jpegd_color_space { DVPP_JPEG_DECODE_OUT_UNKNOWN = -1, DVPP_JPEG_DECODE_OUT_YUV444 = 0, DVPP_JPEG_DECODE_OUT_YUV422_H2V1 = 1,// 422 // yuv440 不再支持,保留字段 DVPP_JPEG_DECODE_OUT_YUV422_H1V2 = 2,// 440 DVPP_JPEG_DECODE_OUT_YUV420 = 3, DVPP_JPEG_DECODE_OUT_YUV400 = 4, DVPP_JPEG_DECODE_OUT_FORMAT_MAX, }; |