计算系统、视频编码方法及数据处理模块技术方案

技术编号:37982149 阅读:9 留言:0更新日期:2023-06-30 09:57
本申请实施例提供一种计算系统、视频编码方法及数据处理模块。在本申请实施例中,将视频编码功能从主机的CPU卸载至数据处理模块,减轻了主机CPU的计算压力,可降低主机的CPU达到性能瓶颈的概率。另一方面,数据处理模块中的硬件处理单元利用DMA引擎访问主机内存,可提高硬件处理单元获取待编码视频的速度,进而有助于提高后续视频编码效率。有助于提高后续视频编码效率。有助于提高后续视频编码效率。

【技术实现步骤摘要】
计算系统、视频编码方法及数据处理模块


[0001]本申请涉及计算机
,尤其涉及一种计算系统、视频编码方法及数据处理模块。

技术介绍

[0002]视频编码是指通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件。这样,可减少视频冗余信息,降低视频传输带宽。视频编码算法复杂,如果直接使用计算设备的中央处理器(Central Processing Unit,CPU)进行软件编码,将消耗较多的CPU资源和内存资源,容易造成计算设备的CPU性能瓶颈。

技术实现思路

[0003]本申请的多个方面提供一种计算系统、数据处理方法及数据处理模块,用以从主机处理器卸载视频编码,降低计算设备的CPU达到性能瓶颈的概率。
[0004]第一方面,本申请实施例提供一种计算系统,包括:主机和数据处理模块;所述主机和所述数据处理模块通信连接;所述数据处理模块包括:硬件处理单元和中央处理器CPU;所述硬件处理单元包括:直接内存访问DMA引擎和控制面传输通道;所述硬件处理单元增设有硬件编码器;
[0005]所述主机用于向所述硬件处理单元下发视频编码请求;
[0006]所述硬件处理单元,用于通过所述控制面传输通道将所述视频编码请求透传至所述CPU;
[0007]所述CPU,运行所述硬件编码器的固件,并基于所述视频编码请求,驱动所述硬件编码器动作;
[0008]所述硬件编码器,用于在所述CPU的驱动下,利用所述DMA引擎从所述主机的内存中获取所述视频编码请求对应的待编码视频;并对所述待编码视频进行编码,以得到所述待编码视频对应的视频编码数据。
[0009]第二方面,本申请实施例还提供一种计算系统,包括:主机和数据处理模块;所述主机和所述数据处理模块通信连接;所述数据处理模块包括:硬件处理单元和中央处理器CPU;所述硬件处理单元包括:直接内存访问DMA引擎和控制面传输通道;
[0010]所述主机用于向所述硬件处理单元下发视频编码请求;
[0011]所述硬件处理单元,用于通过所述控制面传输通道将所述视频编码请求透传至所述CPU;
[0012]所述CPU,基于所述视频编码请求,控制所述硬件处理单元利用所述DMA引擎,从所述主机的内存中获取待编码视频,并利用所述DMA引擎将所述待编码视频存储至所述CPU的内存;从所述CPU的内存中读取所述待编码视频,并对所述待编码视频进行编码,以得到所述待编码视频对应的视频编码数据。
[0013]第三方面,本申请实施例还提供一种视频编码方法,适用于数据处理模块,所述数
据处理模块与主机连接;所述数据处理模块包括:硬件处理单元和CPU;所述硬件处理单元包括:直接内存访问DMA引擎和控制面传输通道;所述硬件处理单元增设硬件编码器;
[0014]所述方法包括:
[0015]获取所述主机下发的视频编码请求;
[0016]通过所述控制面传输通道将所述视频编码请求透传至所述CPU;
[0017]所述CPU运行所述硬件编码器的固件,并基于所述视频编码请求,驱动所述硬件编码器动作;
[0018]所述硬件编码器在所述CPU的驱动下,利用所述DMA引擎从所述主机的内存中获取所述视频编码请求对应的待编码视频;并对所述待编码视频进行编码,以得到所述待编码视频对应的视频编码数据。
[0019]第四方面,本申请实施例还提供适用于数据处理模块,所述数据处理模块与主机连接;所述数据处理模块包括:硬件处理单元和CPU;所述硬件处理单元包括:直接内存访问DMA引擎和控制面传输通道;所述方法包括:
[0020]获取所述主机下发的视频编码请求;
[0021]通过所述控制面传输通道将所述视频编码请求透传至所述CPU;
[0022]所述CPU运行所述硬件编码器的固件,并基于所述视频编码请求,驱动所述硬件编码器动作;
[0023]所述硬件编码器在所述CPU的驱动下,利用所述DMA引擎从所述主机的内存中获取所述视频编码请求对应的待编码视频;并利用所述DMA引擎将所述待编码视频存储至所述CPU的内存;
[0024]所述CPU对从所述内存中的待编码视频进行编码,以得到所述待编码视频对应的视频编码数据。
[0025]第五方面,本申请实施例还提供一种数据处理模块,包括:硬件处理单元和CPU;硬件处理单元和CPU通信连接;所述硬件处理单元包括:直接内存访问DMA引擎和控制面传输通道;所述硬件处理单元增设有硬件编码器;在所述数据处理模块在与主机通信连接时,所述CPU用于执行上述第三方面提供的视频编码方法中的CPU执行的方法中的步骤;
[0026]所述硬件编码器用于执行上述第三方面提供的视频编码方法中的硬件编码器执行方法中的步骤。
[0027]第六方面,本申请实施例还提供一种数据处理模块,包括:硬件处理单元和CPU;硬件处理单元和CPU通信连接;所述硬件处理单元包括:直接内存访问DMA引擎和控制面传输通道;在所述数据处理模块在与主机通信连接时,所述CPU用于执行上述第四方面提供的视频编码方法中的CPU执行的方法中的步骤;
[0028]所述硬件处理单元用于执行上述第四方面提供的视频编码方法中的的硬件处理单元执行方法中的步骤。
[0029]第七方面,本申请实施例还提供一种存储有计算机指令的计算机可读存储介质,当所述计算机指令被一个或多个处理器执行时,致使所述一个或多个处理器执行上述视频编码方法中的步骤。
[0030]在本申请实施例中,将视频编码功能从主机的CPU卸载至数据处理模块,减轻了主机CPU的计算压力,可降低主机的CPU达到性能瓶颈的概率。另一方面,数据处理模块中的硬
件处理单元利用DMA引擎访问主机内存,可提高硬件处理单元获取待编码视频的速度,进而有助于提高后续视频编码效率。
附图说明
[0031]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0032]图1

图3为本申请实施例提供的计算系统的结构示意图;
[0033]图4为本申请实施例提供的计算系统采用流水线式任务执行方式进行视频编码的流程示意图;
[0034]图5为本申请实施例提供的计算系统进行视频编码的交互流程示意图;
[0035]图6为本申请实施例提供的另一计算系统的结构示意图;
[0036]图7a和图7b为本申请实施例提供的视频编码方法的流程示意图;
[0037]图8a和图8b为本申请实施例提供的数据处理模块的结构示意图。
具体实施方式
[0038]为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算系统,其特征在于,包括:主机和数据处理模块;所述主机和所述数据处理模块通信连接;所述数据处理模块包括:硬件处理单元和中央处理器CPU;所述硬件处理单元包括:直接内存访问DMA引擎和控制面传输通道;所述硬件处理单元增设有硬件编码器;所述主机用于向所述硬件处理单元下发视频编码请求;所述硬件处理单元,用于通过所述控制面传输通道将所述视频编码请求透传至所述CPU;所述CPU,运行所述硬件编码器的固件,并基于所述视频编码请求,驱动所述硬件编码器动作;所述硬件编码器,用于在所述CPU的驱动下,利用所述DMA引擎从所述主机的内存中获取所述视频编码请求对应的待编码视频;并对所述待编码视频进行编码,以得到所述待编码视频对应的视频编码数据。2.根据权利要求1所述的系统,其特征在于,所述主机部署多个虚拟机;所述数据处理模块支持单根输入输出虚拟化SR

IOV;所述多个虚拟机通过SR

IOV技术,将所述数据处理模块虚拟为多个虚拟视频设备,并分配至所述多个虚拟机。3.一种计算系统,其特征在于,包括:主机和数据处理模块;所述主机和所述数据处理模块通信连接;所述数据处理模块包括:硬件处理单元和中央处理器CPU;所述硬件处理单元包括:直接内存访问DMA引擎和控制面传输通道;所述主机用于向所述硬件处理单元下发视频编码请求;所述硬件处理单元,用于通过所述控制面传输通道通过将所述视频编码请求透传至所述CPU;所述CPU,基于所述视频编码请求,控制所述硬件处理单元利用所述DMA引擎,从所述主机的内存中获取待编码视频,并利用所述DMA引擎将所述待编码视频存储至所述CPU的内存;从所述CPU的内存中读取所述待编码视频,并对所述待编码视频进行编码,以得到所述待编码视频对应的视频编码数据。4.根据权利要求3所述的系统,其特征在于,所述主机部署多个虚拟机;所述数据处理模块支持单根输入输出虚拟化SR

IOV;所述多个虚拟机通过SR

IOV技术,将所述数据处理模块虚拟为多个虚拟视频设备,并分配至所述多个虚拟机。5.一种视频编码方法,其特征在于,适用于数据处理模块,所述数据处理模块与主机连接;所述数据处理模块包括:硬件处理单元和CPU;所述硬件处理单元包括:直接内存访问DMA引擎和控制面传输通道;所述硬件处理单元增设硬件编码器;所述方法包括:获取所述主机下发的视频编码请求;通过所述控制面传输通道将所述视频编码请求透传至所述CPU;所述CPU运行所述硬件编码器的固件,并基于所述视频编码请求,驱动所述硬件编码器动作;所述硬件编码器在所述CPU的驱动下,利用所述DMA引擎从所述主机的内存中获取所述视频编码请求对应的待编码视频;并对所述待编码视频进行编码,以得到所述待编码视频
对应的视频编码数据。6.根据权利要求5所述的方法,其特征在于,所述主机部署有虚拟机;所述虚拟机向所述数据处理模块发送所述视频编码请求;所述基于所述视频编码请求,驱动所述硬件编码器动作,包括:所述CPU根据所述视频编码请求及所述虚拟机分配到的编码容量,判断是否接受所述视频编码请求;若判断结果为是,向所述虚拟机返回请求接受消息;通过所述控制面传输通道将所述请求接受消息透传至所述虚拟机,以供所述虚拟机响应于所述请求接受消息,从所述待编码视频中确定待编码视频帧,并将所述待编码视频帧的元数据提供给所述数据处理模块;所述CPU基于所述虚拟机返回的所述待编码视频帧的元数据,驱动所述硬件编码器动作。7.根据权利要求6所述的方法,其特征在于,所述硬件编码器在所述CPU的驱动下,利用所述DMA引擎从所述主机的内存中获取所述视频编码请求对应的待编码视频,包括:所述硬件编码器在所述CPU的驱动下,利用所述DMA引擎从所述主机的内存中获取所述待编码视频帧;所述对所述待编码视频进行编码,包括:所述硬件编码器对所述待编码视频帧进行编码,以得到所述待编码视频帧的视频编码数据。8.根据权利要求6所述的方法,其特征在于,所述CPU根据所述虚拟...

【专利技术属性】
技术研发人员:张献涛任晋奎张振祥文敢闵洪波赵政辉刘翔徐达维江海涛田巍
申请(专利权)人:阿里巴巴中国有限公司
类型:发明
国别省市:

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

1