截屏方法、装置、电子设备及可读存储介质制造方法及图纸

技术编号:16885757 阅读:22 留言:0更新日期:2017-12-27 03:33
本发明专利技术实施例提供一种截屏方法、装置、电子终端及可读存储介质。在一个实施例中,所述截屏方法包括:建立图像读取对象以实现初始化,该图像读取对象包括指向缓存区的指针对象;根据用户的截屏操作调用图形库系统接口将当前屏幕对应的数据渲染,并将渲染得到的图像数据传递至所述图像读取对象的指针对象指向的缓存区中;启动一线程获取所述缓存区中的图像数据并进行存储。

Screen method, device, electronic equipment and readable storage medium

The embodiment of the invention provides a screen method, a device, an electronic terminal and a readable storage medium. In one embodiment, the method includes: to achieve the initial setup screen image reading object, the image reading object includes buffer pointer pointing object; according to the interface screenshots operation called graphic database system of user's data corresponding to the current screen rendering, and cache the image data are transferred to the rendering the image reading object pointer points to; start a thread acquires the image data in the buffer and storage.

【技术实现步骤摘要】
截屏方法、装置、电子设备及可读存储介质
本专利技术涉及计算机
,具体而言,涉及一种截屏方法、装置、电子设备及可读存储介质。
技术介绍
目前安卓平台直播手游时,截取屏幕内容存在如下问题:在录屏过程中,由于录屏直播为对录屏数据按顺序逐帧进行渲染显示,直接拷贝录屏直播的显示数据以获取图片信息,会影响直播流畅度。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提供一种截屏方法、装置、电子设备及可读存储介质。本专利技术实施例提供的一种截屏方法,所述截屏方法包括:建立图像读取对象以实现初始化,该图像读取对象包括指向缓存区的指针对象;根据用户的截屏操作调用图形库系统接口将当前屏幕对应的数据渲染,并将渲染得到的图像数据传递至所述图像读取对象的指针对象指向的缓存区中;启动一线程获取所述缓存区中的图像数据并进行存储。本专利技术实施例还提供一种截屏装置,所述截屏装置包括:建立模块,用于建立图像读取对象以实现初始化,该图像读取对象包括一指向缓存区的指针对象;渲染模块,用于根据用户的截屏操作调用图形库系统接口将当前屏幕对应的数据渲染,并将渲染得到的图像数据传递至所述图像读取对象的指针对象指向的缓存区中;存储模块,用于启动一线程获取所述缓存区中的图像数据并进行存储。本专利技术实施例还提供一种电子设备,包括:存储器;处理器;安装/存储于所述存储器并由所述处理器执行的上述的截屏装置。本专利技术实施例还提供一种可读存储介质,其上存储有计算机程序,所述计算机程序在执行时实现上述的截屏方法。与现有技术相比,本专利技术实施例的截屏方法、装置、电子设备及可读存储介质,通过调用图形库系统接口直接渲染得到当前屏幕对应的数据,避免了直接读取或拷贝当前屏幕的原始数据信息,由于渲染动作由GPU操作,不会阻塞CPU,且可以新建线程中来获取缓存区中的图像数据,然后进行保存图片的相关操作,从而实现了不影响直播流畅度的后台截屏。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本专利技术较佳实施例提供的电子设备的方框示意图。图2为本专利技术较佳实施例提供的截屏方法的流程图。图3为本专利技术较佳实施例提供的截屏方法的步骤S101的详细流程图。图4为本专利技术较佳实施例提供的截屏方法的步骤S102的详细流程图。图5为本专利技术较佳实施例提供的截屏装置的功能模块示意图。图6为本专利技术较佳实施例提供的截屏装置的建立模块包括的功能单元示意图。图7为本专利技术较佳实施例提供的截屏装置的渲染模块包括的功能单元示意图。具体实施方式下面将结合本专利技术实施例中附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本专利技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本专利技术的实施例的详细描述并非旨在限制要求保护的本专利技术的范围,而是仅仅表示本专利技术的选定实施例。基于本专利技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本专利技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。如图1所示,是一电子设备100的方框示意图。所述电子设备100包括截屏装置110、存储器111、存储控制器112、处理器113、外设接口114、输入输出单元115、显示单元116。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对电子设备100的结构造成限定。例如,电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。本实施例所述的电子设备100可以是移动电子设备,所述移动电子设备中安装有Android系统。所述存储器111、存储控制器112、处理器113、外设接口114、输入输出单元115及显示单元116各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述截屏装置110包括至少一个可以软件或固件(Firmware)的形式存储于所述存储器111中或固化在所述电子设备100的操作系统(OperatingSystem,OS)中的软件功能模块。所述处理器113用于执行存储器中存储的可执行模块,例如所述截屏装置110包括的软件功能模块或计算机程序。其中,所述存储器111可以是,但不限于,随机存取存储器(RandomAccessMemory,RAM),只读存储器(ReadOnlyMemory,ROM),可编程只读存储器(ProgrammableRead-OnlyMemory,PROM),可擦除只读存储器(ErasableProgrammableRead-OnlyMemory,EPROM),电可擦除只读存储器(ElectricErasableProgrammableRead-OnlyMemory,EEPROM)等。其中,存储器111用于存储程序,所述处理器113在接收到执行指令后,执行所述程序,本专利技术实施例任一实施例揭示的过程定义的电子设备100所执行的方法可以应用于处理器113中,或者由处理器113实现。所述处理器113可能是一种集成电路芯片,具有信号的处理能力。上述的处理器113可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本专利技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。所述外设接口114将各种输入/输入装置耦合至处理器113以及存储器111。在一些实施例中,外设接口114,处理器113以及存储控制器112可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。所述输入输出单元115用于提供给用户输入数据。所述输入输出单元115可以是,但不限于,鼠标和键盘等。所述显示单元116在所述电子设备100与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据给用户参考。在本实施例中,所述显示单元可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器进行计算和处理。由于安卓平台限制,电子设备的应用层无法直接获取图形程序接口(openGL)中的图像原始数据,需要调用gl本文档来自技高网...
截屏方法、装置、电子设备及可读存储介质

【技术保护点】
一种截屏方法,其特征在于,所述截屏方法包括:建立图像读取对象以实现初始化,该图像读取对象包括指向缓存区的指针对象;根据用户的截屏操作调用图形库系统接口将当前屏幕对应的数据渲染,并将渲染得到的图像数据传递至所述图像读取对象的指针对象指向的缓存区中;启动一线程获取所述缓存区中的图像数据并进行存储。

【技术特征摘要】
1.一种截屏方法,其特征在于,所述截屏方法包括:建立图像读取对象以实现初始化,该图像读取对象包括指向缓存区的指针对象;根据用户的截屏操作调用图形库系统接口将当前屏幕对应的数据渲染,并将渲染得到的图像数据传递至所述图像读取对象的指针对象指向的缓存区中;启动一线程获取所述缓存区中的图像数据并进行存储。2.如权利要求1所述的截屏方法,其特征在于,该截屏方法应用于安装有Android系统的电子设备,所述建立图像读取对象以实现初始化,该图像读取对象包括指向缓存区的指针对象的步骤包括:a.基于Android系统创建ImageReader对象作为所述图像读取对象,所述ImageReader对象的格式包括第一格式和第二格式;b.将所述第一格式或第二格式设置为ImageReader对象的默认格式;c.调用setOnImageAvailableListener接口设置回调;d.创建环境对象WindowSurface;e.创建渲染工具,用于对截取的当前屏幕进行渲染;f.调用图形库系统接口的渲染工具渲染一帧数据到所述指针对象指向的缓存区中;g.获取缓存区中渲染得到的图像数据;h.判断所述渲染得到的图像数据的格式是否为所述默认格式;若不是默认格式,则重新执行步骤a-e,其中,步骤b为将不同于该默认格式的另一种格式重置为ImageReader对象的默认格式。3.如权利要求2所述的截屏方法,其特征在于,在启动一线程获取所述缓存区中的图像数据并进行存储的步骤之前,所述方法还包括:依次从所述指针对象指向的缓存区获取所述图像数据每个像素点的RGBA值,并转换为ARGB值。4.如权利要求2所述的截屏方法,其特征在于,所述根据用户的截屏操作调用图形库系统接口将当前屏幕对应的数据渲染,并将渲染得到的图像数据传递至所述图像读取对象的指针对象指向的缓存区中的步骤包括:调用一切换函数将所述图形库系统接口的上下文环境切换至创建的WindowSurface环境中,调用所述图形库系统接口将当前屏幕对应的数据渲染;调用所述图形库系统接口中的缓存交换函数将渲染得到的图像数据传递至所述图像读取对象的指针对象指向的缓存区中。5.一种截屏装置,其特征在于,所述截屏装置包括:建立模块,用于建立图像读取对象以实现初始化,该图像读取对象包括指向缓存...

【专利技术属性】
技术研发人员:黄伟陈少杰张文明
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北,42

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

1