预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共19页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN113286005A(43)申请公布日2021.08.20(21)申请号202110581339.5(22)申请日2021.05.26(71)申请人北京金山云网络技术有限公司地址100085北京市海淀区西二旗中路33号院4号楼6层006号(72)发明人郑明(74)专利代理机构北京华夏泰和知识产权代理有限公司11662代理人张娜蔡良伟(51)Int.Cl.H04L29/08(2006.01)H04N19/85(2014.01)G06F3/0484(2013.01)G06T9/00(2006.01)权利要求书2页说明书11页附图5页(54)发明名称抓屏方法、装置、电子设备及存储介质(57)摘要本申请提供的一种抓屏方法、装置、电子设备及存储介质,应用于安装有虚拟显示器的云桌面服务器,方法包括:在检测到虚拟显示器当前渲染的云桌面图像发生变化时,抓取虚拟显示器当前渲染的云桌面图像,将抓取的云桌面图像写入虚拟显示器对应的显卡内存中,当检测到云桌面图像写入显卡内存中时,从显卡内存中查找到该云桌面图像,并对该云桌面图像进行编码,将编码后的云桌面图像发送至云桌面终端。由于抓取的云桌面图像本身就存在云桌面服务器的显卡内存中,因此可以在显卡内存中直接对云桌面图像进行编码,无需将云桌面图像从系统内存复制到显卡内存中,因此更加高效,并且可以有效减少系统的CPU资源和内存资源的占用率。CN113286005ACN113286005A权利要求书1/2页1.一种抓屏方法,其特征在于,应用于云桌面服务器,所述云桌面服务器上安装有虚拟显示器,所述虚拟显示器用于对接收到的数据进行图像渲染,得到云桌面图像,所述方法包括:在检测到所述虚拟显示器当前渲染得到的云桌面图像发生变化时,抓取所述虚拟显示器当前渲染得到的云桌面图像;将抓取的所述云桌面图像写入所述虚拟显示器对应的显卡内存;当检测到所述云桌面图像写入所述显卡内存中时,从所述显卡内存中查找到所述云桌面图像,并对所述云桌面图像进行编码;将编码后的所述云桌面图像发送至云桌面终端。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述虚拟显示器的虚拟显示器驱动程序中创建D3D设备,并在所述D3D设备上创建多个纹理容器;所述将抓取的所述云桌面图像写入所述虚拟显示器对应的显卡内存,包括:从多个所述纹理容器中选择一个目标纹理容器;将抓取的所述云桌面图像写入所述目标纹理容器。3.根据权利要求2所述的方法,其特征在于,所述从多个所述纹理容器中选择一个目标纹理容器,包括:对多个所述纹理容器对应的时间戳进行比较,确定对应的时间戳最早的纹理容器,所述时间戳用于表征所述纹理容器中最近一次写入云桌面图像的时间;将对应的时间戳最早的纹理容器确定为目标纹理容器。4.根据权利要求3所述的方法,其特征在于,在所述将抓取的所述云桌面图像写入所述目标纹理容器之后,所述方法还包括:将所述目标纹理容器的时间戳更新为所述云桌面图像写入所述目标纹理容器的时间。5.根据权利要求4所述的方法,其特征在于,在所述D3D设备上创建多个纹理容器之后,所述方法还包括:在本地内存中创建共享内存区,将多个所述纹理容器的ID和时间戳存储至所述共享内存区;所述从所述显卡内存中查找到所述云桌面图像,包括:从所述共享内存区中读取多个所述纹理容器的时间戳;将时间戳距离当前时间最近的纹理容器确定为目标纹理容器;确定所述目标纹理容器中存储的图像为所述云桌面图像。6.一种抓屏装置,其特征在于,应用于云桌面服务器,所述云桌面服务器上安装有虚拟显示器,所述虚拟显示器用于对接收到的数据进行图像渲染,得到云桌面图像,所述装置包括:抓图模块,用于在检测到所述虚拟显示器当前渲染得到的云桌面图像发生变化时,抓取所述虚拟显示器当前渲染得到的云桌面图像;写入模块,用于将抓取的所述云桌面图像写入所述虚拟显示器对应的显卡内存;编码模块,用于当检测到所述云桌面图像写入所述显卡内存中时,从所述显卡内存中查找到所述云桌面图像,并对所述云桌面图像进行编码;2CN113286005A权利要求书2/2页发送模块,用于将编码后的所述云桌面图像发送至云桌面终端。7.根据权利要求6所述的装置,其特征在于,所述装置还包括:设置模块,用于在所述虚拟显示器的虚拟显示器驱动程序中创建D3D设备,并在所述D3D设备上创建多个纹理容器;所述写入模块,包括:选择子模块,用于从多个所述纹理容器中选择一个目标纹理容器;写入子模块,用于将抓取的所述云桌面图像写入所述目标纹理容器。8.根据权利要求7所述的装置,其特征在于,所述选择子模块,具体用于:对多个所述纹理容器对应的时间戳进行比较,确定对应的时间戳最早的纹理容器,所述时间戳用于表征所述纹理容器中最近一次写入云桌面