昇腾社区首页
中文
注册

vdec_release_frame

产品支持情况

产品

是否支持

Atlas A3 训练系列产品 / Atlas A3 推理系列产品

Atlas A2 训练系列产品 / Atlas 800I A2 推理产品 /A200I A2 Box 异构组件

Atlas 训练系列产品

x

Atlas 推理系列产品

Atlas 200I/500 A2 推理产品

Atlas 200/300/500 推理产品

x

功能说明

解码之后,释放资源。

函数原型

  • C函数原型
    1
    hi_s32 hi_mpi_vdec_release_frame(hi_vdec_chn chn, const hi_video_frame_info *frame_info);
    
  • python函数
    1
    ret = acl.himpi.vdec_release_frame(chn, frame_info)
    

参数说明

参数名

说明

chn

int,解码通道号。

  • Atlas 推理系列产品 ,该参数的取值范围:[0, 256),JPEGD功能和VDEC功能共用通道,且通道总数最多256。
  • Atlas A2 训练系列产品 / Atlas 800I A2 推理产品 /A200I A2 Box 异构组件,该参数的取值范围:[0, 256),JPEGD功能和VDEC功能共用通道,且通道总数最多256,其中,JPEGD解码通道总数最多256,VDEC解码通道总数最多32。
  • Atlas 200I/500 A2 推理产品 ,该参数的取值范围:[0, 128),JPEGD功能和VDEC功能共用通道,且通道总数最多128。
  • Atlas A3 训练系列产品 / Atlas A3 推理系列产品 ,该参数的取值范围:[0, 256),JPEGD功能和VDEC功能共用通道,且通道总数最多256,其中,JPEGD解码通道总数最多256,VDEC解码通道总数最多32。

frame_info

dict,解码后的图像信息字典,调用vdec_get_frame接口获取,具体请参见hi_video_frame_info

返回值说明

返回值

说明

ret

int,错误码。

  • 返回0表示成功。
  • 返回非0表示失败,参见VDEC视频/JPEGD图像解码返回码
    • 如果在解码图像时未创建通道,则会返回“HI_ERR_VDEC_UNEXIST”的错误码。
    • 如果在获取图像的过程中销毁通道,则会返回“HI_ERR_VDEC_UNEXIST”的错误码。
    • 如果在获取解码图像的过程中复位通道,则会返回“HI_ERR_VDEC_UNEXIST”的错误码。
    • 以非阻塞方式获取解码图像,如果缓冲区内无图像,则会返回“HI_ERR_VDEC_BUF_EMPTY”的错误码。
    • 以超时方式获取解码图像,到达设定的超时时间还不能获取到硬件解码结果则会返回“HI_ERR_VDEC_BUF_EMPTY”的错误码,此时则可增大超时时间,或循环调用本接口等待解码结果。

约束说明

  • 此接口需与acl.himpi.vdec_get_frame配对使用,获取的数据应当在使用完之后立即释放,如果不及时释放,会导致解码过程阻塞等待资源。
  • 释放的数据必须是调用acl.himpi.vdec_get_frame接口从该通道获取的数据,不得对数据信息字典进行任何修改。

资源参考

接口调用流程,参见JPEGE图片编码VENC视频编码