视频编码方法技术

技术编号:39578432 阅读:6 留言:0更新日期:2023-12-03 19:29
本申请实施例提供一种视频编码方法

【技术实现步骤摘要】
视频编码方法、设备、系统及存储介质


[0001]本申请涉及云计算
,尤其涉及一种视频编码方法

设备

系统及存储介质


技术介绍

[0002]在当前的云计算基础设施中,数据处理器
(Data Processing Unit

DPU)
芯片正在成为类似传统网卡一样的标准组件,基于
DPU
的加速技术,可以将主机上的计算

存储

网络的虚拟化等功能卸载到
DPU
芯片上实现硬件加速

其中,以卸载到
DPU
芯片上的视频编码器为例,它使主机真正获得了“即插即加速”的能力,既能够实现视频编码服务,又保持了硬件编码的速度优势

[0003]在实际应用中,如果基于
DPU
实现了视频编码器的硬件加速,但是该
DPU
所在主机上的客户虚拟机却无需使用视频编码服务,则该
DPU
上的视频编码器会成为闲置资源,造成编码资源的浪费


技术实现思路

[0004]本申请的多个方面提供一种视频编码方法

设备

系统及存储介质,用以实现编码资源的复用,提高编码资源的利用率,减少编码资源的浪费

[0005]本申请实施例提供一种视频编码系统,包括:资源管控节点和编码资源池,所述编码资源池包括分布在多个计算节点上的多个硬件卸载设备,所述多个硬件卸载设备上实现有多个硬件编码器;所述资源管控节点,用于从所述编码资源池中为目标虚拟化实例分配目标硬件编码器,并控制承载所述目标虚拟化实例的目标计算节点挂载所述目标硬件编码器;所述目标硬件编码器为分布在所述目标计算节点上的本地硬件卸载设备上的硬件编码器,或者为分布在其它计算节点上的远端硬件卸载设备上的硬件编码器;所述目标计算节点,用于面向所述目标虚拟化实例呈现虚拟编码器,并控制所述目标硬件编码器以所述虚拟编码器的形态为所述目标虚拟化实例提供视频编码服务

[0006]本申请实施例还提供一种计算节点,所述计算节点承载有目标虚拟化实例,且所述计算节点包括第一处理器和本地硬件卸载设备,所述本地硬件卸载设备上实现有硬件编码器;所述第一处理器,用于挂载从编码资源池中为所述目标虚拟化实例分配的目标硬件编码器,面向所述目标虚拟化实例呈现虚拟编码器,并控制所述目标硬件编码器以所述虚拟编码器的形态为所述目标虚拟化实例提供视频编码服务;其中,所述编码资源池包括本地硬件卸载设备上的硬件编码器和分布在其它计算节点上的远端硬件卸载设备上的硬件编码器;所述目标硬件编码器为所述本地硬件卸载设备上的硬件编码器,或者为远端硬件卸载设备上的硬件编码器

[0007]本申请实施例还提供一种硬件卸载设备,包括:所述硬件卸载设备上实现有硬件编码器,所述硬件编码器属于编码资源池中的硬件编码器,所述编码资源池包括在多个硬件卸载设备上实现的多个硬件编码器;所述硬件编码器,用于在被分配给目标虚拟化实例
并被挂载到承载所述目标虚拟化实例的目标计算节点上的情况下,以虚拟编码器的形态为所述目标虚拟化实例提供视频编码服务,所述虚拟编码器是对所述硬件编码器的虚拟化;其中,所述目标计算节点为所述硬件卸载设备所在的本地计算节点,或者为与所述硬件卸载设备网络互联的远端计算节点

[0008]本申请实施例提供一种视频编码方法,应用于资源管控节点,该方法包括:从编码资源池中为目标虚拟化实例分配目标硬件编码器,所述编码资源池包括在多个硬件卸载设备上实现的多个硬件编码器,所述多个硬件卸载设备分布在多个计算节点上;控制承载所述目标虚拟化实例的目标计算节点挂载所述目标硬件编码器,以使所述目标虚拟化实例将所述目标硬件编码器虚拟化成能够识别的虚拟编码器,并以所述虚拟编码器的形态使用所述目标硬件编码器提供的视频编码服务;其中,所述目标硬件编码器为分布在所述目标计算节点上的本地硬件卸载设备上的硬件编码器,或者为分布在其它计算节点上的远端硬件卸载设备上的硬件编码器

[0009]本申请实施例还提供一种视频编码方法,应用于计算节点,所述计算节点承载有目标虚拟化实例,且所述计算节点包括本地硬件卸载设备,所述本地硬件卸载设备上实现有硬件编码器;所述方法包括:挂载从编码资源池中为所述目标虚拟化实例分配的目标硬件编码器,所述编码资源池包括本地硬件卸载设备上的硬件编码器和分布在其它计算节点上的远端硬件卸载设备上的硬件编码器,所述目标硬件编码器为所述本地硬件卸载设备上的硬件编码器,或者为远端硬件卸载设备上的硬件编码器;面向所述目标虚拟化实例呈现虚拟编码器,并控制所述目标硬件编码器以所述虚拟编码器的形态为所述目标虚拟化实例提供视频编码服务

[0010]本申请实施例提供一种硬件加速系统,包括:资源管控节点和资源池,所述资源池包括分布在多个计算节点上的多个硬件卸载设备,所述多个硬件卸载设备上实现有多个硬件加速器;所述资源管控节点,用于从所述资源池中为目标虚拟化实例分配目标硬件加速器,并控制承载所述目标虚拟化实例的目标计算节点挂载所述目标硬件加速器;所述目标硬件加速器为分布在所述目标计算节点上的本地硬件卸载设备上的硬件加速器,或者为分布在其它计算节点上的远端硬件卸载设备上的硬件加速器;所述目标计算节点,用于面向所述目标虚拟化实例呈现虚拟加速器,并控制所述目标硬件加速器以所述虚拟加速器的形态为所述目标虚拟化实例提供目标服务

[0011]本申请实施例提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被处理器执行时,致使所述处理器能够实现本申请实施例提供的视频编码方法中的步骤

[0012]在本申请实施例中,将不同硬件卸载设备上实现的硬件编码器形成编码资源池,通过资源管控节点对编码资源池中的硬件编码器进行统一调度,结合计算节点能够面向虚拟化实例呈现虚拟编码器实现编码资源前后端解耦的功能,使得计算节点可以在虚拟化实例无感知的情况下就近挂载本地硬件卸载设备上的硬件编码器,也可以挂载远端硬件卸载设备上的硬件编码器,实现硬件编码器的复用,提高硬件编码资源的利用率,解决编码资源的浪费问题

[0013]进一步地,如果单个计算节点上的虚拟化实例需要进行编码能力的扩容,通过对硬件编码器的复用,可以灵活地为虚拟化实例分配满足其编码需求的硬件编码器,无需进
行虚拟化实例的热迁移,能够很好地解决编码器扩容问题

[0014]进一步地,通过对硬件编码器的复用,可以将多个硬件编码器分配给同一虚拟化实例,实现编码能力的聚合

附图说明
[0015]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定

在附图中:
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种视频编码系统,其特征在于,包括:资源管控节点和编码资源池,所述编码资源池包括分布在多个计算节点上的多个硬件卸载设备,所述多个硬件卸载设备上实现有多个硬件编码器;所述资源管控节点,用于从所述编码资源池中为目标虚拟化实例分配目标硬件编码器,并控制承载所述目标虚拟化实例的目标计算节点挂载所述目标硬件编码器;所述目标硬件编码器为分布在所述目标计算节点上的本地硬件卸载设备上的硬件编码器,或者为分布在其它计算节点上的远端硬件卸载设备上的硬件编码器;所述目标计算节点,用于面向所述目标虚拟化实例呈现虚拟编码器,并控制所述目标硬件编码器以所述虚拟编码器的形态为所述目标虚拟化实例提供视频编码服务
。2.
根据权利要求1所述的系统,其特征在于,所述资源管控节点具体用于:响应用户的视频编码需求,确定所述目标虚拟化实例的编码资源需求信息;根据所述多个硬件编码器的基础能力信息和使用状态信息,从中选择满足所述编码资源需求信息的目标硬件编码器
。3.
根据权利要求1所述的系统,其特征在于,所述多个硬件卸载设备还包括:处理器;所述目标计算节点具体用于:通过所述虚拟编码器将所述目标虚拟化实例的编码请求和待编码视频帧提供给本地硬件卸载设备,以通过所述本地硬件卸载设备控制所述目标硬件编码器为所述目标虚拟化实例提供视频编码服务;所述本地硬件卸载设备上的处理器,用于根据所述编码请求,控制所述目标硬件编码器对所述待编码视频帧进行编码,以得到所述目标虚拟化实例所需的码流数据
。4.
根据权利要求3所述的系统,其特征在于,所述多个硬件卸载设备还包括:远程直接数据存取
RDMA
模块;所述本地硬件卸载设备上的处理器具体用于:根据所述编码请求,控制所述本地硬件卸载设备上的
RDMA
模块从所述目标虚拟化实例的内存中
DMA
所述待编码视频帧至所述目标硬件编码器的内存中,以供所述目标硬件编码器对所述待编码视频帧进行编码得到所述码流数据
。5.
根据权利要求4所述的系统,其特征在于,所述目标硬件编码器所在硬件卸载设备上的处理器,用于控制所述目标硬件编码器所在硬件卸载设备上的
RDMA
模块从所述目标硬件编码器的内存中
DMA
所述码流数据至所述目标虚拟化实例的内存中
。6.
根据权利要求5所述的系统,其特征在于,所述本地硬件卸载设备上的处理器,还用于在所述目标硬件编码器为所述远端硬件卸载设备上的硬件编码器的情况下,向所述远端硬件卸载设备上的处理器转发所述编码请求,并将所述目标虚拟化实例的内存中用于缓存所述码流数据的第一内存地址发送给所述远端硬件卸载设备上的处理器;以及接收所述远端硬件卸载设备上的处理器发送给的所述目标硬件编码器的内存中用于缓存所述待编码视频帧的第二内存地址;所述远端硬件卸载设备上的处理器,还用于在接收到所述编码请求的情况下,从所述目标硬件编码器的内存中申请用于缓存所述待编码视频帧的第二内存地址并发送给所述本地硬件卸载设备上的处理器
。7.
一种计算节点,其特征在于,所述计算节点承载有目标虚拟化实例,且所述计算节点包括第一处理器和本地硬件卸载设备,所述本地硬件卸载设备上实现有硬件编码器;
所述第一处理器,用于挂载从编码资源池中为所述目标虚拟化实例分配的目标硬件编码器,面向所述目标虚拟化实例呈现虚拟编码器,并控制所述目标硬件编码器以所述虚拟编码器的形态为所述目标虚拟化实例提供视频编码服务;其中,所述编码资源池包括本地硬件卸载设备上的硬件编码器和分布在其它计算节点上的远端硬件卸载设备上的硬件编码器;所述目标硬件编码器为所述本地硬件卸载设备上的硬件编码器,或者为远端硬件卸载设备上的硬件编码器
。8.
根据权利要求7所述的计算节点,其特征在于,本地硬件卸载设备还包括:第二处理器;所述第一处理器具体用于:通过所述虚拟编码器将所述目标虚拟化实例的编码请求和待编码视频帧提供给本地硬件卸载设备,以通过所述本地硬件卸载设备控制所述目标硬件编码器为所述目标虚拟化实例提供视频编码服务;所述本地硬件卸载设备上的第二处理器,用于根据所述编码请求,控制所述目标硬件编码器对所述待编码视频帧进行编码,以得到所述目标虚拟化实例所需的码流数据
。9.
根据权利要求8所述的计算节点,其特征在于,本地硬件卸载设备还包括:远程直接数据存取
RDMA
模块;所述本地硬件卸载设备上的第二处理器具体用于:根据所述编码请求,控制所述本地硬件卸载设备上的

【专利技术属性】
技术研发人员:张献涛文敢徐达维赵磊
申请(专利权)人:杭州阿里巴巴飞天信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1