一种基于图层动态合成的跨运行环境录屏优化方法及系统技术方案

技术编号:38821488 阅读:14 留言:0更新日期:2023-09-15 20:00
本公开涉及一种基于图层动态合成的跨运行环境录屏优化方法及系统,在确保录屏内容包括正确的鼠标位置、鼠标外形的前提下,消除了录取每一帧时从兼容环境内获取桌面鼠标信息的开销。的开销。的开销。

【技术实现步骤摘要】
一种基于图层动态合成的跨运行环境录屏优化方法及系统


[0001]本公开涉及通信
,具体涉及一种基于图层动态合成的跨运行环境录屏优化方法及系统。

技术介绍

[0002]在桌面OS上(如Linux、Windows等),在安卓兼容环境内录制安卓应用屏幕时,安卓应用自身的窗口图形内容可以在安卓内直接获取(如通过SurfaceFlinger),但是因为是桌面应用的体验,因此需要绘制出鼠标的形状和位置。
[0003]传统做法是,桌面OS的鼠标形状、位置等需要从安卓内通过RPC从桌面OS获取,每一帧都需要有这部分开销,因为开销大而使得鼠标显示出现延迟等问题。

技术实现思路

[0004]本公开提供一种基于图层动态合成的跨运行环境录屏优化方法及系统,能够解决传统录屏从兼容环境内获取桌面鼠标信息时处理每一帧数据所产生的开销较大的问题。为解决上述技术问题,本公开提供如下技术方案:作为本公开实施例的一个方面,提供一种基于图层动态合成的跨运行环境录屏优化方法,应用于不同运行环境的第一运行端和第二运行端,包括如下步骤:获取第一运行端的鼠标位图信息,并将鼠标位图信息保存在媒体编解码器中;获取当前帧图像及当前被录屏的应用窗口在第二运行端显示器上的坐标位置,确定第一运行端的鼠标位置,将当前帧图像和鼠标位置同时传入媒体编解码器中;根据当前帧图像对应的时间戳和鼠标位置调用所述媒体编解码器生成当前鼠标位图信息,将当前鼠标位图信息合并到当前帧图像中进行编码。
[0005]可选地,所述确定第一运行端的鼠标位置,包括:从第一运行端读取鼠标位置列表,基于当前被录屏的应用窗口在第二运行端显示器上的坐标位置,对鼠标位置列表中所有的横坐标减去当前被录屏的应用窗口在第二运行端显示器上的横坐标,鼠标位置列表中所有的纵坐标减去当前被录屏的应用窗口在第二运行端显示器上的纵坐标,得到偏移计算后的坐标位置。
[0006]可选地,所述确定第一运行端的鼠标位置,还包括:若鼠标位置列表的长度大于1,判断鼠标位置列表中所有坐标是否均为整数,若是,则利用拟合算法拟合出一条线段,并取线段中点位置作为当前帧图像的鼠标位置,否则,取(

1,

1)作为鼠标位置。
[0007]可选地,所述确定第一运行端的鼠标位置,还包括:若鼠标位置列表的长度不大于1,则取偏移计算后的坐标位置作为鼠标位置。
[0008]可选地,所述根据当前帧图像对应的时间戳和鼠标位置调用所述媒体编解码器生成当前鼠标位图信息,包括:若鼠标位置的横坐标和纵坐标均大于等于0,则根据当前帧图像的格式,基于鼠标位置生成当前鼠标位图信息,并合并到当前帧图像中。
[0009]可选地,如果当前帧图像是第一帧,所述从第一运行端读取鼠标位置列表,包括:
获取每帧的时间间隔frameInterval和第一运行端的定时器精度frameDeviation;通过第二运行端的高精度定时器获取当前时间startTime和第二运行端的定时器精度linuxTimerInterval。
[0010]可选地,所述从第一运行端读取鼠标位置列表,还包括:从开始记录鼠标位置列表,每隔一个linuxTimerInterval记录一次鼠标位置,并加入到鼠标位置列表,直到时间达到startTime+frameDeviation;每次第一运行端读取鼠标位置列表时,将当前鼠标位置列表中的所有坐标均传递过去,并清除鼠标位置列表。
[0011]作为本公开实施例的另一个方面,提供一种基于图层动态合成的跨运行环境录屏优化系统,应用于不同运行环境的第一运行端和第二运行端,包括:鼠标位图信息获取模块,获取第一运行端的鼠标位图信息,并将鼠标位图信息保存在媒体编解码器中;鼠标位置获取模块,获取当前帧图像及当前被录屏的应用窗口在第二运行端显示器上的坐标位置,确定第一运行端的鼠标位置,将当前帧图像和鼠标位置同时传入媒体编解码器中;帧图像编码模块,根据当前帧图像对应的时间戳和鼠标位置调用所述媒体编解码器生成当前鼠标位图信息,将当前鼠标位图信息合并到当前帧图像中进行编码。
[0012]相对于现有技术,本公开的有益效果为:本公开在确保录屏内容包括了正确的鼠标位置、鼠标外形的前提下,消除了录取每一帧时从兼容环境内获取桌面鼠标信息的开销,显著提升了录屏的效率。
附图说明
[0013]图1为实施例1中基于图层动态合成的跨运行环境录屏优化方法的流程图;图2为实施例2中基于图层动态合成的跨运行环境录屏优化系统示意框图。
具体实施方式
[0014]以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
[0015]在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
[0016]本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
[0017]另外,为了更好地说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
[0018]可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例,限于篇幅,本公开不再赘述。
[0019]此外,本公开提供了一种基于图层动态合成的跨运行环境录屏优化方法及系统,上述均可用来实现本公开提供的任一种基于图层动态合成的跨运行环境录屏优化方法,相应技术方案和描述和参见方法部分的相应记载,不再赘述。
[0020]基于图层动态合成的跨运行环境录屏优化方法的执行主体可以是计算机或者其他能够实现基于图层动态合成的跨运行环境录屏优化装置,例如,方法可以由终端设备或服务器或其它处理设备执行,其中,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该基于图层动态合成的跨运行环境录屏优化方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
实施例1
[0021]本实施例提供一种基于图层动态合成的跨运行环境录屏优化方法,应用于不同运行环境的第一运行端和第二运行端,如图1所示,包括如下步骤:获取第一运行端的鼠标位图信息,并将鼠标位图信息本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于图层动态合成的跨运行环境录屏优化方法,应用于不同运行环境的第一运行端和第二运行端,其特征在于,包括如下步骤:获取第一运行端的鼠标位图信息,并将鼠标位图信息保存在媒体编解码器中;获取当前帧图像及当前被录屏的应用窗口在第二运行端显示器上的坐标位置,确定第一运行端的鼠标位置,将当前帧图像和鼠标位置同时传入媒体编解码器中;根据当前帧图像对应的时间戳和鼠标位置调用所述媒体编解码器生成当前鼠标位图信息,将当前鼠标位图信息合并到当前帧图像中进行编码。2.根据权利要求1所述的跨运行环境录屏优化方法,其特征在于,所述确定第一运行端的鼠标位置,包括:从第一运行端读取鼠标位置列表,基于当前被录屏的应用窗口在第二运行端显示器上的坐标位置,对鼠标位置列表中所有的横坐标减去当前被录屏的应用窗口在第二运行端显示器上的横坐标,鼠标位置列表中所有的纵坐标减去当前被录屏的应用窗口在第二运行端显示器上的纵坐标,得到偏移计算后的坐标位置。3.根据权利要求2所述的跨运行环境录屏优化方法,其特征在于,所述确定第一运行端的鼠标位置,还包括:若鼠标位置列表的长度大于1,判断鼠标位置列表中所有坐标是否均为整数,若是,则利用拟合算法拟合出一条线段,并取线段中点位置作为当前帧图像的鼠标位置,否则,取(

1,

1)作为鼠标位置。4.根据权利要求3所述的跨运行环境录屏优化方法,其特征在于,所述确定第一运行端的鼠标位置,还包括:若鼠标位置列表的长度不大于1,则取偏移计算后的坐标位置作为鼠标位置。5.根据权利要求4所述的跨运行环境录屏优化方法,其特征在于,所述根据当前帧图像对应的时间戳和...

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

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

1