将待解码的输入内存和解码输出内存一起传到解码器进行解码,异步接口。
aclError aclvdecSendFrame(aclvdecChannelDesc *channelDesc,
acldvppStreamDesc *input,
acldvppPicDesc *output,
aclvdecFrameConfig *config,
void* userData)
参数名 |
输入/输出 |
说明 |
---|---|---|
channelDesc |
输入 |
通道描述信息的指针。 与调用aclvdecCreateChannel接口创建通道时指定的channelDesc保持一致。 调用aclvdecSetChannelDesc系列接口设置通道描述信息的属性,包括解码通道号、线程、回调函数、视频编码协议等。
说明:
在Atlas 200/300/500 推理产品上,由于软件约束,不支持调用aclvdecSetChannelDescRefFrameNum接口设置通道描述信息的对应属性,若调用,则会返回报错。 在Atlas 训练系列产品上,由于软件约束,不支持调用aclvdecSetChannelDescRefFrameNum接口设置通道描述信息的对应属性,若调用,则会返回报错。 在Atlas 推理系列产品上,支持调用aclvdecSetChannelDescRefFrameNum接口设置通道描述信息的对应属性。 |
input |
输入 |
输入码流描述信息的指针,输入内存用户需提前申请。
|
output |
输入&输出 |
输出图片描述信息的指针,输出内存用户需提前申请。 output参数作为输入时,需要用户调用如下接口:
output参数作为输出时,用户需在回调函数中调用acldvppGetPicDesc系列接口获取解码后的输出图片数据。隔行码流场景下,隔行码流每帧发送两场,解码时其中一场无图像输出,属于正常现象,会返回ERR_DECODE_NOPIC = 0x20000错误码;隔行码流的解码输出数据都在奇数场对应的输出buffer中。 |
config |
输入 |
解码配置的指针,预留,当前可填NULL。 |
userData |
输入 |
用户自定义数据的指针。 如果用户需要获取解码的帧序号,则可以在userData参数处定义,然后解码的帧序号可以通过userData参数传递给VDEC的回调函数,用于确定回调函数中处理的是第几帧数据。 |
返回0表示成功,返回非0表示失败。