总体说明

  • 本手册中媒体数据处理V1版本与媒体数据处理V2版本的接口功能范围相同,都是描述处理媒体数据的接口,用于实现抠图、图片缩放、格式转换等功能,但两套接口不能混用。
    • 建议使用V2版本中的接口,保证后续版本接口功能以及业务的连续演进。
    • V1版本中的接口是为了兼容旧版本,保证使用该部分接口的用户能继续使用,后续版本不再演进。

基本概念

功能简介

当前已有的媒体数据处理功能如表1所示。

昇腾310 AI处理器表1中的功能都为预留功能。

昇腾910 AI处理器表1中的功能都为预留功能。

表1 功能说明

功能

说明

VPC(Vision Preprocessing Core)

负责图像处理功能,包括图像的缩放、抠图、图像金字塔、色域转换等等,详细描述请参见VPC功能

JPEGE(JPEG Encoder)

负责完成图像编码功能,详细描述请参见JPEGE功能

JPEGD(JPEG Decoder)

负责完成图像解码功能,详细描述请参见JPEGD功能

VDEC(Video Decoder)

负责视频解码,详细描述请参见VDEC功能

VENC(Video Encoder)

负责视频编码,详细描述请参见VENC功能

PNGD(PNG Decoder)

负责PNG格式图片的解码,详细描述请参见PNGD功能

整体约束说明

使用本章中介绍的接口,有以下注意点:

关于内存申请/释放:实现媒体数据处理的VPC、JPEGD、JPEGE等功能前,若需要申请内存存放输入或输出数据,需调用acl.himpi.dvpp_malloc申请内存、调用acl.himpi.dvpp_free接口释放内存。

接口调用流程

昇腾310 AI处理器上,标准形态下,本文中描述的接口开发人员可以在Host上调用。

昇腾910 AI处理器,标准形态下,本文中描述的接口开发人员可以在Host上调用。

本文中描述的接口在调用时,需与部分pyACL接口配套使用(例如acl_init 、acl_finalize、acl.rt.set_device、acl.rt.reset_device接口),不能与pyACL中的媒体数据处理接口混用,接口调用流程如下:

图1 标准形态下的接口调用流程