获取编码图片

Atlas 200/300/500 推理产品 acldvpp接口

Atlas 推理系列产品(Ascend 310P处理器) hi_mpi接口

Atlas 200/300/500 推理产品->Atlas 推理系列产品(Ascend 310P处理器)迁移时,对用户的影响

需要调用aclrtSynchronizeStream流同步接口,等待图片编码结束,然后获取编码结果:

编码后图片存放地址为调用acldvppJpegEncodeAsync时传入的输出内存地址,图片大小从acldvppJpegEncodeAsync输出参数size获取

调用hi_mpi_venc_get_stream接口获取一帧编码结果,再从hi_venc_stream结构体的以下成员中获取编码数据:

hi_venc_stream.pack[i].addr

hi_venc_stream.pack[i].len

hi_venc_stream.pack[i].data_type(从该成员结构体中获取输出图片格式)

hi_venc_stream.pack[i].pts

用户需要修改代码,改为另起线程,调用hi_mpi_venc_get_stream接口来主动获取编码结果。

需注意,用户需要通过调用hi_mpi_venc_query_status得到每次编码出的包数n,然后再调用hi_mpi_venc_get_stream前,提前给参数hi_venc_stream.pack分配不小于n * sizeof(hi_venc_pack)大小的内存。

获取编码结果成功后,需调用hi_mpi_venc_release_stream接口释放码流缓存。

无对应接口,无需通知编码器停止接收编码数据帧

通知编码器停止接收输入数据(一个通道只需要调用一次该接口):

hi_mpi_venc_stop_chn

用户需要修改代码,增加调用hi_mpi_venc_stop_chn接口。