【技术实现步骤摘要】
一种屏幕录制方法及装置、存储介质
本申请实施例涉及屏幕录制技术,尤其涉及一种屏幕录制方法及装置、存储介质。
技术介绍
目前的录屏功能,需要用户选择待录屏对象,并需要用户为待录屏对象确定相应的抓屏方式,而确定抓屏方式时,需要一定的抓屏知识,不然为待录屏对象确定的抓屏方式不一定适于待录屏对象,或者录屏效果不佳;若用户未为待录屏对象确定抓屏方式,则需要系统自动确定录屏方式,而系统为待录屏对象确定的抓屏方式非常不智能,只能确定待录屏对象所支持的或预设的抓屏方式进行确定,当前系统中可能支持更适于待录屏对象的录屏方式,或者当前系统中具有录屏效果更佳的抓屏方式,但自动确定抓屏方式不可能为待录屏对象确定这些更适合的抓屏方式。
技术实现思路
有鉴于此,本申请实施例提供一种屏幕录制方法及装置、存储介质,能根据屏幕录制指令确定出待录制内容,并结合当前的运行环境为待录制内容确定抓屏策略,基于抓屏策略创建相应的抓屏对象,实现对待录屏对象的屏幕录制。根据本申请的第一方面,提供一种屏幕录制方法,包括:基于屏幕录制指令,确定待录制内容;根据当前的运行环境,为所述待录制内容确定抓屏策略;在所述抓屏策略中选取优先级最高的抓屏策略,创建优先级最高的抓屏策略对应的抓屏对象,并对所述抓屏对象进行初始化;确定优先级最高的抓屏策略对应的所述抓屏对象初始化是否成功,不成功时创建次优先级的抓屏策略对应的抓屏对象,并确定次优先级的抓屏策略对应的抓屏对象是否初始化成功,不成功时继续下一优先级的抓屏策略,直至为所述抓屏策 ...
【技术保护点】
1.一种屏幕录制方法,其特征在于,所述方法包括:/n基于屏幕录制指令,确定待录制内容;/n根据当前的运行环境,为所述待录制内容确定抓屏策略;/n在所述抓屏策略中选取优先级最高的抓屏策略,创建优先级最高的抓屏策略对应的抓屏对象,并对所述抓屏对象进行初始化;确定优先级最高的抓屏策略对应的所述抓屏对象初始化是否成功,不成功时创建次优先级的抓屏策略对应的抓屏对象,并确定次优先级的抓屏策略对应的抓屏对象是否初始化成功,不成功时继续下一优先级的抓屏策略,直至为所述抓屏策略创建适用的抓屏对象或所有抓屏策略均尝试完毕;/n当成功创建抓屏对象后,以成功创建的抓屏对象抓取数据,作为录制屏幕数据。/n
【技术特征摘要】 【专利技术属性】
1.一种屏幕录制方法,其特征在于,所述方法包括:
基于屏幕录制指令,确定待录制内容;
根据当前的运行环境,为所述待录制内容确定抓屏策略;
在所述抓屏策略中选取优先级最高的抓屏策略,创建优先级最高的抓屏策略对应的抓屏对象,并对所述抓屏对象进行初始化;确定优先级最高的抓屏策略对应的所述抓屏对象初始化是否成功,不成功时创建次优先级的抓屏策略对应的抓屏对象,并确定次优先级的抓屏策略对应的抓屏对象是否初始化成功,不成功时继续下一优先级的抓屏策略,直至为所述抓屏策略创建适用的抓屏对象或所有抓屏策略均尝试完毕;
当成功创建抓屏对象后,以成功创建的抓屏对象抓取数据,作为录制屏幕数据。
2.根据权利要求1所述的方法,其特征在于,所述基于屏幕录制指令,确定待录制内容,包括:
获取屏幕录制指令中的待录制内容,所述待录制内容为以下至少之一:
应用界面、操作系统桌面。
3.根据权利要求2所述的方法,其特征在于,所述为所述抓屏策略创建抓屏对象,包括:
待录制内容为游戏时,为游戏创建多个抓屏对象,对所述多个抓屏对象分别进行初始化;
使用全局钩子监听所创建的所述多个抓屏对象,以在所述多个抓屏对象中确定产生视频渲染数据的第一抓屏对象,判定游戏使用所述第一抓屏对象对应的游戏引擎进行视频渲染,通过所述第一抓屏对象复制数据,作为录制屏幕数据进行存储。
4.根据权利要求3所述的方法,其特征在于,所述为游戏创建多个抓屏对象,包括:
为游戏创建Direct3D对象,所述Direct3D对象包括directx8、directx9、directx10、directx11、directx12。
5.根据权利要求2所述的方法,其特征在于,所述为所述抓屏策略创建抓屏对象,包括:
待录制内容为操作系统桌面时,确定当前操作系统的版本号,操作系统为windows7及以下系统时,创建动态窗口管理器DWM抓屏对象,使用全局钩子监听DWM抓屏对象,以捕获桌面渲染数据;若DWM抓屏对象创建失败,则创建图形设备接口GDI抓屏对象,调用windows的bitblt函数截取桌面渲染数据;
操作系统为windows8及以上系统时,调用CreateTexture2D函数创建DXGI抓屏对象,以捕获桌面渲染数据,若DXGI抓屏对象创建失败或创建后无法捕获桌面渲染数据,则创建GDI抓屏对象,调用windows的bitblt函数截取桌面渲染数据。
6.一种屏幕录制装置,其特征在于,所述装置包括:
技术研发人员:顾迅羽,朱清,周炬,
申请(专利权)人:苏州开心盒子软件有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。