一种基于会话复用的多路视频解码方法技术

技术编号:37849905 阅读:22 留言:0更新日期:2023-06-14 22:37
本发明专利技术公开了一种基于会话复用的多路视频解码方法,根据GPU当前已建立的解码会话数量与解码会话数量约束之间的关系,确定为待解码视频流分配解码会话的方式,在当前已建立的解码会话数量小于约束时建立新的解码会话,反之则复用已建立的解码会话,由此实现了在不增加GPU硬件的情况下执行更多的视频解码任务,显著提升了安卓云、图形云及多路视频的服务器的视频应用规模。的视频应用规模。

【技术实现步骤摘要】
一种基于会话复用的多路视频解码方法


[0001]本专利技术属于计算机软件开发
,具体涉及一种基于会话复用的多路视频解码方法。

技术介绍

[0002]目前安卓云、图形云及多路视频等服务器的广泛使用对GPU的解码性能提出了更高的要求。在使用安卓云、图形云及多路视频等服务器时,往往会产生由同一GPU并行执行多个进程视频解码的需求,然而,大部分GPU存在可支持的并发解码会话数量的限制,通常情况下GPU中会话与待解码的视频流之间为一一对应的关系,因此会话数量的限制也就间接地限制了GPU处理解码任务的数量,这一限制难以满足逐渐增大的安卓云、图形云及多路视频等服务器对GPU解码能力的需求。

技术实现思路

[0003]有鉴于此,本专利技术提供了一种基于会话复用的多路视频解码方法,实现了基于解码会话复用的更多视频流的解码,突破了GPU对解码会话数量的限制。
[0004]本专利技术提供的一种基于会话复用的多路视频解码方法,包括以下步骤:步骤1、由编解码引擎打开待解码视频流,获取待解码视频流的编码格式及分辨率,并为待解码视频流增加流标识本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于会话复用的多路视频解码方法,其特征在于,包括以下步骤:步骤1、由编解码引擎打开待解码视频流,获取待解码视频流的编码格式及分辨率,并为待解码视频流增加流标识;步骤2、编解码引擎获取GPU当前已建立的解码会话总数,若解码会话总数小于数量上限则执行步骤3,否则执行步骤4;步骤3、为待解码视频流创建新的解码会话及解码历史信息,并为该解码会话绑定解码器和上下文,再执行标准的解码操作,并将解码过程中待解码帧的编号及流标识保存在解码历史信息中,结束本流程;步骤4、在当前已建立的解码会话中查找与待解码视频流的编码格式相同且分辨率不小于待解码视频流分辨率的解码会话,若存在则将其作为基线视频流,将待解码视频流作为被合并视频流执行步骤6,若不存在则执行步骤5;步骤5、在当前已建立的解码会话中,判断是否存在具有相同编码格式的解码会话,若存在则在其中选取两个解码会话分别作为基线视频流和被合并视频流,将被合并视频流的待解码帧添加到基线视频流后形成新的待解码视频流,执行步骤3;若不存在,则报错并结束本流程;步骤6、将被合并视频流的待解码帧添加到基线视频流中形成新的待解码视频流,对待解码视频流执行解码操作,并将解码过程中待解码帧的编号及流标识保存在解码历史信息中,结束本流程。2.根据权利要求1所述的多路视频解码方法,其特征在于,所述编解码引擎为FFmpeg或GStreamer。3.根据权利要求1所述的多路视频解码方法,其特征在于,所述步骤2中所述数量上限为GPU的解码会话数量的上限。4.根据权利要求1所述的多路视频解码方法,其特征在于,所述步骤4还包括:步骤4.1、在当前已建立的解码会话中查找与待解码视频流的编码格式相同的解码会话,若存在则执行步骤4.2,否则执行步骤5;步骤4.2、在具有相同编码格式的解码会话中,判断是否存在与待解码视频流的分辨率相同的解码会话,若存在则将查找到的解码会话作为备选会话执行步骤4.3;若不存在则判断是否存在分辨率不小于待解码视频流的解码会话,若存在则将其中分辨率与待解码视频流的分辨率的差值小于第一阈值的解码会话作为备选会话执行步骤4.3,若不存在则执行步骤5;步骤4.3、若备选会话为多个,则按照第一优先顺序确定可复用的解码会话,将该解码会话作为基线视频流、待解码视频流作为被合并视频流,执行步骤6;若按照第一优先顺序未得到可复用的解码会话,则随机从备选会话中选取一个解码会话作为基线视频流、待解码视...

【专利技术属性】
技术研发人员:温研晏华
申请(专利权)人:北京麟卓信息科技有限公司
类型:发明
国别省市:

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

1