文档首页> Atlas 300应用(型号 3000)> DVPP API参考> 概述> 关于输入输出内存的说明
更新时间:2021-03-18 GMT+08:00
分享

关于输入输出内存的说明

关于HIAI_DMalloc/HIAI_DFree接口、HIAI_DVPP_DMalloc/HIAI_DVPP_DFree接口的说明,以及Graph配置文件(receive_memory_without_dvpp参数)的说明,请参见《Matrix API参考》

表1 内存要求说明

功能模块

输入内存

输出内存

VPC

请使用Matrix提供的接口申请/释放内存:

  • 使用HIAI_DVPP_DMalloc接口申请内存,内存满足DVPP的要求(内存起始地址16对齐);
  • 使用HIAI_DVPP_DFree接口释放内存。

请使用Matrix提供的接口申请/释放内存:

  • 使用HIAI_DVPP_DMalloc接口申请内存,内存满足DVPP的要求(内存起始地址16对齐);
  • 使用HIAI_DVPP_DFree接口释放内存。

JPEGE和JPEGD

请使用Matrix提供的接口申请/释放内存:

  • 使用HIAI_DVPP_DMalloc接口申请内存,内存满足DVPP的要求(内存起始地址128对齐);
  • 使用HIAI_DVPP_DFree接口释放内存。
  • 由用户指定输出内存时,由用户自行释放内存 。请使用Matrix提供的接口申请/释放内存:
    • 使用HIAI_DVPP_DMalloc接口申请内存,内存满足DVPP的要求(内存起始地址128对齐)。在申请内存前,可以调用DvppGetOutParameter接口获取输出内存大小。
    • 使用HIAI_DVPP_DFree接口释放内存。
  • 不由用户指定输出内存时,DVPP内部申请内存,需由用户调用JPEGE/JPEGD出参结构体中的cbFree()回调函数释放内存,并将内存地址指针置为空。

PNGD

请使用Matrix提供的接口申请/释放内存:

  • 使用HIAI_DVPP_DMalloc接口申请内存,内存满足DVPP的要求(内存起始地址128对齐);
  • 使用HIAI_DVPP_DFree接口释放内存。
由用户指定输出内存时,由用户自行释放内存 。请使用Matrix提供的接口申请/释放内存:
  • 使用HIAI_DVPP_DMalloc接口申请内存,内存满足DVPP的要求(内存起始地址128对齐)。在申请内存前,可以调用DvppGetOutParameter接口获取输出内存大小。
  • 使用HIAI_DVPP_DFree接口释放内存。

VDEC和VENC

对内存无要求,支持调用malloc/free、new/delete等原生接口申请/释放内存,也支持调用Matrix提供的HIAI_DMalloc/HIAI_DFree接口、HIAI_DVPP_DMalloc/HIAI_DVPP_DFree接口申请/释放内存,还支持通过Matrix提供的receive_memory_without_dvpp参数控制内存是否给DVPP使用。

VDEC输出的HFBC格式数据直接作为VPC的输入。

VENC输出内存是DVPP内部管理,用户在使用时可以拷贝输出内存中的数据。

分享:

    相关文档

    相关产品