aclvdecCreateChannelDesc
acldvppSetJpegeConfigLevel
函数功能
设置编码配置数据。同步接口。
函数原型
aclError acldvppSetJpegeConfigLevel(****acldvppJpegeConfig *jpegeConfig, uint32_t level)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| jpegeConfig | 输出 | 编码配置数据的指针。 需提前调用acldvppCreateJpegeConfig接口创建acldvppJpegeConfig类型的数据。 |
| level | 输入 | 编码质量范围。 Atlas 200/500 A2推理产品,该参数取值范围:[1, 100],数值越小输出图片质量越差。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: acldvppJpegeConfig
acldvppGetJpegeConfigLevel
函数功能
获取编码配置数据。同步接口。
函数原型
uint32_t acldvppGetJpegeConfigLevel(const acldvppJpegeConfig *jpegeConfig)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| jpegeConfig | 输入 | 编码配置数据的指针。 需提前调用acldvppCreateJpegeConfig接口创建acldvppJpegeConfig类型的数据,再调用acldvppSetJpegeConfigLevel接口设置编码配置数据。 |
返回值说明
返回编码质量范围。
Atlas 200/500 A2推理产品,该参数取值范围:[1, 100],数值越小输出图片质量越差。
父主题: acldvppJpegeConfig
acldvppDestroyJpegeConfig
函数功能
销毁通过acldvppCreateJpegeConfig接口创建的acldvppJpegeConfig类型的数据。同步接口。
函数原型
aclError acldvppDestroyJpegeConfig(****acldvppJpegeConfig *jpegeConfig)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| jpegeConfig | 输入 | 待销毁的acldvppJpegeConfig类型的指针。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: acldvppJpegeConfig
aclvdecCreateChannelDesc
函数功能
创建aclvdecChannelDesc类型的数据,表示创建视频解码处理通道时的通道描述信息。同步接口。
如需销毁aclvdecChannelDesc类型的数据,请参见aclvdecDestroyChannelDesc。
函数原型
aclvdecChannelDesc *aclvdecCreateChannelDesc()
参数说明
无
返回值说明
- 返回aclvdecChannelDesc类型的指针,表示成功。
- 返回nullptr,表示失败。
父主题: aclvdecChannelDesc
aclvdecSetChannelDesc系列接口
函数功能
设置视频解码处理通道描述信息的属性值。同步接口。
函数原型
aclError aclvdecSetChannelDescChannelId(****aclvdecChannelDesc *channelDesc, uint32_t channelId);
aclError aclvdecSetChannelDescThreadId(****aclvdecChannelDesc *channelDesc, uint64_t threadId);
aclError aclvdecSetChannelDescCallback(****aclvdecChannelDesc *channelDesc, aclvdecCallback callback);
aclError aclvdecSetChannelDescEnType(****aclvdecChannelDesc *channelDesc, acldvppStreamFormat enType);
aclError aclvdecSetChannelDescOutPicFormat(****aclvdecChannelDesc *channelDesc, acldvppPixelFormat outPicFormat);
aclError aclvdecSetChannelDescOutPicWidth(****aclvdecChannelDesc *channelDesc, uint32_t outPicWidth);
aclError aclvdecSetChannelDescOutPicHeight(****aclvdecChannelDesc *channelDesc, uint32_t outPicHeight);
aclError aclvdecSetChannelDescRefFrameNum(****aclvdecChannelDesc *channelDesc, uint32_t refFrameNum);
aclError aclvdecSetChannelDescOutMode(****aclvdecChannelDesc *channelDesc, uint32_t outMode)
aclError aclvdecSetChannelDescBitDepth(****aclvdecChannelDesc *channelDesc, uint32_t bitDepth)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| channelDesc | 输出 | 视频解码处理通道描述信息的指针。 需提前调用aclvdecCreateChannelDesc接口创建aclvdecChannelDesc类型的数据。 |
| channelId | 输入 | 通道ID。 Atlas 200/500 A2推理产品,该参数值的取值范围[0, 255]。 |
| threadId | 输入 | 回调线程ID。 (说明:同一个进程内,在不同的Device上注册VDEC解码回调函数的线程时,不能指定同一个线程ID。 同一个Device上,多路VDEC解码可以指定同一个线程ID,但相比一个线程处理一路VDEC解码任务来说,一个线程内串行处理多路VDEC解码任务时,VDEC解码性能可能下降。) |
| callback | 输入 | 解码回调函数。 请参见aclvdecCallback。 |
| enType | 输入 | 视频编码协议H265-main level(0)、H264-baseline level(1)、H264-main level(2)、H264-high level(3)。 |
| outPicFormat | 输入 | YUV图像存储格式,支持如下格式: - YUV420SP NV12 - YUV420SP NV21 - RGB888 - BGR888 如果不设置输出格式,默认使用YUV420SP NV12。 |
| outPicWidth | 输入 | 解码码流最大宽度。 Atlas 200/500 A2推理产品,如果不设置解码码流最大宽度,内部默认使用4096。 |
| outPicHeight | 输入 | 解码码流最大高度。 Atlas 200/500 A2推理产品,如果不设置解码码流最大宽度,内部默认使用4096。 |
| refFrameNum | 输入 | 参考帧数量,取值范围[0, 16]。 Atlas 200/500 A2推理产品,如果不设置参考帧数量,内部默认使用8。 |
| outMode | 输入 | 设置是否实时出帧(即发送一帧解码一帧,无需依赖后续帧的传入)。 取值范围如下: - 0:默认出帧模式,由于解码过程中存在缓存帧,无法实时输出,因此VDEC需要在收到码流中的多帧数据后,才开始输出解码结果。 - 1:快速出帧模式,VDEC获取码流中的一帧数据后,就开始实时输出解码结果。只支持简单参考关系的H264/H265标准码流(无长期参考帧,无B帧)。 |
| bitDepth | 输入 | 设置视频位宽,默认值为10-bit。 取值范围如下: - 0:8-bit - 1: 10-bit(默认值) |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: aclvdecChannelDesc
aclvdecGetChannelDesc系列接口
函数功能
获取视频解码处理通道的描述信息。同步接口。
函数原型
uint32_t aclvdecGetChannelDescChannelId(const aclvdecChannelDesc *channelDesc);
uint32_t aclvdecGetChannelDescThreadId(const aclvdecChannelDesc *channelDesc);
aclvdecCallback aclvdecGetChannelDescCallback(const aclvdecChannelDesc *channelDesc);
acldvppStreamFormat aclvdecGetChannelDescEnType(const aclvdecChannelDesc *channelDesc);
acldvppPixelFormat aclvdecGetChannelDescOutPicFormat(const aclvdecChannelDesc *channelDesc);
uint32_t aclvdecGetChannelDescOutPicWidth(const aclvdecChannelDesc *channelDesc);
uint32_t aclvdecGetChannelDescOutPicHeight(const aclvdecChannelDesc *channelDesc);
uint32_t aclvdecGetChannelDescRefFrameNum(const aclvdecChannelDesc *channelDesc);
uint32_t aclvdecGetChannelDescOutMode(const aclvdecChannelDesc *channelDesc)
uint32_t aclvdecGetChannelDescBitDepth(const aclvdecChannelDesc *channelDesc)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| channelDesc | 输入 | 视频解码数据处理通道描述信息的指针。 需提前调用aclvdecCreateChannelDesc接口创建aclvdecChannelDesc类型的数据,调用aclvdecSetChannelDesc系列接口设置视频解码处理通道描述信息的属性值。 |
返回值说明
| 参数名 | 说明 |
|---|---|
| channelId | 解码通道号。 该参数值的取值范围[0, 255]。 |
| threadId | 回调线程ID。 |
| callback | 回调函数。 请参见aclvdecCallback。 |
| enType | 视频编码协议H265-main level(0)、H264-baseline level(1)、H264-main level(2)、H264-high level(3)。 |
| outPicFormat | YUV图像存储格式。 |
| outPicWidth | 图片宽度。 |
| outPicHeight | 图片高度。 |
| refFrameNum | 参考帧数量,取值范围[0, 16]。 |
| outMode | 是否实时出帧(即发送一帧解码一帧,无需依赖后续帧的传入),取值范围如下: - 0:默认出帧模式,由于解码过程中存在缓存帧,无法实时输出,因此VDEC需要在收到码流中的多帧数据后,才开始输出解码结果。 - 1:快速出帧模式,VDEC获取码流中的一帧数据后,就开始实时输出解码结果。只支持简单参考关系的H264/H265标准码流(无长期参考帧,无B帧)。 |
| bitDepth | 视频位宽。 取值范围如下: - 0:8-bit - 1: 10-bit |
父主题: aclvdecChannelDesc
aclvdecSetChannelDescParam
函数功能
设置视频编码处理通道描述信息的属性值。同步接口。
函数原型
aclError aclvdecSetChannelDescParam**(aclvdecChannelDesc *channelDesc, aclvdecChannelDescParamType paramType, size_t length, const void *param)**
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| channelDesc | 输出 | 视频解码处理通道描述信息的指针。 需提前调用aclvdecCreateChannelDesc接口创建aclvdecChannelDesc类型的数据。 |
| paramType | 输入 | 属性参数的类型。 |
| length | 输入 | 属性参数值的字节数。 - 属性参数的类型为*_UINT64时,此处配置为8。 - 属性参数的类型为*_UINT32时,此处配置为4。 - 属性参数的类型为*_PTR时,若操作系统是32位,则此处配置为4;若操作系统是64位,则配置为8。 |
| param | 输入 | 属性参数值的指针。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: aclvdecChannelDesc
在线提单