跳到主要内容

hi_h265_protocol_param

hi_vdec_video_attr

说明

定义视频解码视频属性。

定义

hi_vdec_video_attr = {"ref_frame_num": ref_frame_num, "temporal_mvp_en": temporal_mvp_en, "tmv_buf_size": tmv_buf_size}

成员

成员名称描述
ref_frame_num整型,参考帧的数目,用于决定解码时需要的参考帧个数,会较大的影响内存 VB 块占用,根据实际情况设置合适的值。如果此处设置的值大于实际码流中的参考帧数量,系统内部会根据实际码流的参考帧数量进行调整,以节省内存,但不超过当前所设置的参数值。 取值范围:[0, 16],以帧为单位。 不知情的情况下,其他码流:推荐设为 5。 测试码流:推荐设为 16。 静态属性。
temporal_mvp_en整型,是否支持时域运动矢量预测。 取值范围:[0, 1]。 如果H.264解码不需要解码B帧,或者H.265解码不需要解码支持时域运动矢量预测(sps_temporal_mvp_enabled_flag =1)的码流,则配置temporal_mvp_en为0,否则配置为1。 当配置为0时,可不分配输出Tmv信息的VB块,节省内存。 注意:调用acl.himpi.vdec_set_chn_param接口设置通道参数时,只支持将hi_video_dec_mode设置为HI_VIDEO_DEC_MODE_IPB(表示解码I、P、B帧),因此解码H.264码流时只能将temporal_mvp_en配置为1。
tmv_buf_size整型,视频解码图像Tmv(Temporal Motion Vector)Buffer大小,temporal_mvp_en为1时有效。 用户可先调用acl.himpi.vdec_get_tmv_buf_size接口获取视频解码图像TMV缓存大小*。*

父主题: 视频/图像解码

hi_vdec_chn_attr

说明

定义解码通道属性字典。

定义

hi_vdec_chn_attr= {"type": hi_payload_type, # RW; video type to be decoded
"mode": hi_vdec_send_mode, # RW; send by stream or by frame
"pic_width": pic_width, # RW; max pic width
"pic_height": pic_height, # RW; max pic height
"stream_buf_size": stream_buf_size, # stream buf size(Byte)
"frame_buf_size": frame_buf_size, # RW; frame buf size(Byte)
"frame_buf_cnt": frame_buf_cnt, # RW; frame buf num
"video_attr": hi_vdec_video_attr} # RW; structure with video

成员

成员名称描述
type整型,解码协议类型值,静态属性。
mode整型,码流发送方式,静态属性。 Atlas 200/500 A2推理产品上,VDEC视频解码场景下,H.264/H.265仅支持按帧发送码流;JPEG图片解码场景下,该参数预留。
pic_width整型,通道支持的解码图像最大宽(以像素为单位),静态属性。 Atlas 200/500 A2推理产品上,JPEG图片解码场景下,该参数预留。
pic_height整型,通道支持的解码图像最大高(以像素为单位),静态属性。 Atlas 200/500 A2推理产品上,JPEG图片解码场景下,该参数预留。
stream_buf_size整型,码流缓存的大小,静态属性。 取值范围:大于或等于解码通道大小(宽*高)的 3/4倍,即YUV420图像大小的一半(宽*高*3/2*1/2),小于或等于1024*1024*1024,以 Byte 为单位。 推荐值:一幅YUV420解码图像大小。即:宽*高*1.5。
frame_buf_size整型,解码图像帧存 buffer 大小,以 byte 为单位。JPEGD图像解码不需要设置该参数。 取值范围:大于或等于0,取值为0时,VDEC内部将根据实际码流信息自动分配合适的帧存大小;取值大于0时,用户需保证(帧存大小 * 参考帧个数 >= 实际所需最小帧存大小 * 实际所需最小参考帧个数),否则不能正常解码。实际所需最小帧存大小,用户需先根据码流中的SPS(Sequence Parameter Set)信息获取输入码流的宽、高、比特位宽,再调用hi_vdec_get_pic_buf_size接口获取实际所需最小帧存大小。
frame_buf_cnt整型,解码图像帧存个数。JPEGD图像解码不需要设置该参数。 取值范围:大于或等于0。
- 一般情况下,设置为0,VDEC内部将根据实际码流信息自动分配合适的帧存个数。
- 如果客户需要限制VDEC解码帧存大小,则设置为大于0的值,用户需保证(帧存大小*参考帧个数 >= 实际需要最小帧存大小*实际需要最小参考帧个数),否则不能正常解码。实际所需最小参考帧个数,用户需先根据码流中的SPS(Sequence Parameter Set)信息获取码流参考帧个数,H.264/H.265解码所需帧存个数=参考帧+显示帧+1。
video_attr字典,视频(H.264/H.265)解码通道属性。

注意事项

设置通道属性的图像宽和高,若用户清楚码流的具体宽高,建议以实际值来设置。若是不清楚,建议以此码流的最大规格来创建。但是最大规格是4096*4096,不能超过此值。

父主题: 视频/图像解码

hi_h264_protocol_param

说明

与 H.264 协议相关的内存分配参数。

定义

hi_h264_protocol_param = {"max_slice_num": max_slice_num, # RW, Range: [1, 300]; max slice num support
"max_sps_num": max_sps_num, # RW, Range: [1, 32]; max sps num support
"max_pps_num": max_pps_num } # RW, Range: [1, 256]; max pps num support

成员

成员名称描述
max_slice_num整型,该通道解码支持的最大 Slice 个数。 取值范围:[1, 300]。 Default:16。
max_sps_num整型,该通道解码支持的最大 SPS 个数。 取值范围:[1, 32]。 Default:2。
max_pps_num整型,该通道解码支持的最大 PPS 个数。 取值范围:[1, 256]。 Default:2。

父主题: 视频/图像解码

hi_h265_protocol_param

说明

定义与 H.265 协议相关的内存分配参数。

定义

hi_h265_protocol_param = {"max_slice_segment_num": max_slice_segment_num, # RW; max slice segment num support
"max_vps_num": max_vps_num, # RW; max vps num support
"max_sps_num": max_sps_num, # RW; max sps num support
"max_pps_num":max_pps_num } # RW; max pps num support

成员

成员名称描述
max_slice_segment_num整型,该通道解码支持的最大 SliceSegment 个数。 取值范围:[1, 600] Default:16。
max_vps_num整型,该通道解码支持的最大 VPS 个数。 取值范围:[1, 16]。 Default:2。
max_sps_num整型,该通道解码支持的最大 SPS 个数。 取值范围:[1, 16]。 Default:2。
max_pps_num整型,该通道解码支持的最大 PPS 个数。 取值范围:[1, 64]。 Default:2。

父主题: 视频/图像解码

hi_vdec_protocol_param

说明

定义与协议相关的内存分配参数。

定义

hi_vdec_protocol_param = {"type": type, # RW; video type to be decoded, only h264 and h265 supported
"h264_param": hi_h264_protocol_param, # protocol param structure for h264

hi_vdec_protocol_param = {"type": type, # RW; video type to be decoded, only h264 and h265 supported
"h265_param": hi_h265_protocol_param } # protocol param structure for h265

成员

成员名称描述
type整型,解码通道支持的协议。
h264_param字典,H.264 协议参数。
h265_param字典,H.265 协议参数。

父主题: 视频/图像解码

hi_video_dec_mode

说明

定义视频解码模式。

定义

HI_VIDEO_DEC_MODE_IPB = 0
HI_VIDEO_DEC_MODE_IP = 1
HI_VIDEO_DEC_MODE_I = 2
HI_VIDEO_DEC_MODE_BUTT = 3

成员

成员名称描述
HI_VIDEO_DEC_MODE_IPBIPB 模式,即 I、P、B 帧都解码。
HI_VIDEO_DEC_MODE_IPIP 模式,即只解码 I 帧和 P 帧。暂不支持。
HI_VIDEO_DEC_MODE_II 模式,即只解码 I 帧。暂不支持。
HI_VIDEO_DEC_MODE_BUTT保留值。

父主题: 视频/图像解码

hi_video_out_order

说明

定义视频解码输出顺序。

定义

HI_VIDEO_OUT_ORDER_DISPLAY = 0
HI_VIDEO_OUT_ORDER_DEC = 1
HI_VIDEO_OUT_ORDER_BUTT = 2

成员

成员名称描述
HI_VIDEO_OUT_ORDER_DISPLAY显示序输出。
HI_VIDEO_OUT_ORDER_DEC解码序输出。
HI_VIDEO_OUT_ORDER_BUTT保留值。

注意事项

解码有 B 帧的码流应设置为显示序输出。

父主题: 视频/图像解码

在线提单