一种视频编码优化方法和系统技术方案

技术编号:33145902 阅读:75 留言:0更新日期:2022-04-22 13:57
本发明专利技术涉及视频编码技术,公开了一种视频编码优化方法和系统,一种视频编码优化方法应用于NUMA架构中,其方法包括:检测服务器的CPU硬件,并获取CPU的节点总数以及CPU的节点所包括的逻辑核心,其中CPU的节点总数为M;依据检测的CPU节点总数,进行编码内核的创建;依据当前视频帧的gop id,在编码器上对视频进行编码;对于编码后的视频输出视频码流,依据码流中I帧的显示次序从低到高,将码流依次拼接成完整的码流。本发明专利技术在提高编码并行度的同时,避免了常规软件编码存在的远程访问内存。同时提高了编码并行度,提升编码速度,同时不会损失编码质量。失编码质量。失编码质量。

【技术实现步骤摘要】
一种视频编码优化方法和系统


[0001]本专利技术涉及视频编码技术,尤其涉及了应用于NUMA架构中的一种视频编码优化方法和系统。

技术介绍

[0002]目前,针对超高清视频的软件编码器,都采用多种并行编码策略的组合来实现超高清实时转码。常用的并行编码策略有:
[0003](1)、帧内行级并行编码(利用多线程实现帧内多行同时编码);
[0004](2)、帧级并行编码(利用多线程实现多帧同时编码);
[0005](3)、GOP级并行编码(利用多线程实现多个GOP同时编码)。
[0006]通过基于多线程的并行编码,尽可能充分调动多核心CPU的计算资源。与此同时,为满足超高清视频实时编码的计算要求,硬件一般会采用超多核心CPU的服务器。
[0007]目前的多核CPU普遍采用的是NUMA架构,即“非一致性内存访问”。NUMA架构解决了多核心CPU上通过传统的北桥访问内存造成的性能瓶颈问题。在NUMA架构中,服务器被分为若干个节点(SOCKET),每个节点上有单独的CPU和内存。CPU通过内存控制器直接访问本地地址,本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种视频编码优化方法,应用于NUMA架构中,其特征在于,方法包括:服务器的检测,检测服务器的CPU硬件,并获取CPU的节点总数以及CPU的节点所包括的逻辑核心,其中CPU的节点总数为M;编码器的创建,依据检测的CPU节点总数,进行编码内核的创建;视频的编码,依据当前视频帧的gop id,在编码器上对视频进行编码;码流的合成,对于编码后的视频输出视频码流,依据码流中I帧的显示次序从低到高,将码流依次拼接成完整的码流。2.根据权利要求1所述的一种视频编码优化方法,其特征在于,编码器的创建方法包括:步骤1,初始化设置节点索引变量i=0;步骤2,调用pthread_setaffinity_np设置编码器的线程运行在节点i的逻辑核心上;步骤3,创建编码内核i,编码内核绑定在了节点i上;步骤4,对编码内核进行初始化,包括原始帧内存和重建帧内存的分配;步骤5,节点索引变量加1,即i=i+1,当i小于M则继续步骤2,否则编码器创建完成。3.根据权利要求1所述的一种视频编码优化方法,其特征在于,视频的编码方法包括:获取当前视频帧的gop id,并对gop id进行更新,其中gop id初始化为0,最大值为M

1;对当前gop id为i的视频帧,将当前帧送给节点i上的编码内核,编码内核将原始图像拷贝到自己的原始帧内存中,然后开始编码。4.根据权利要求3所述的一种视频编码优化方法,其特征在于,gop id更新方式为:第一帧之后,每收到一个I帧或者IDR帧,gop id加1,如果gop id等于M,则gop id赋值为0。5.一种视频编码优化系统,应用于NUMA架构中,其特征在于:包括服务器检测模块、编码器创建模块、视频编码模块和码流合成模块;服务器检测模块,服务器检测模块检测服务器的CPU硬件,并获取CPU的节点总数以及CPU的节点所包括的逻辑核心,其中CPU的节点总数为M;编码器创建...

【专利技术属性】
技术研发人员:李日朱建国廖义谢亚光孙彦龙
申请(专利权)人:杭州当虹科技股份有限公司
类型:发明
国别省市:

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

1