一种截屏处理方法及系统与流程

文档序号:16065715发布日期:2018-11-24 12:38阅读:457来源:国知局

本申请涉及电视应用技术领域,尤其涉及一种截屏处理方法及系统。

背景技术

通常所谓的截屏,是屏幕上有什么就直接截取什么,类似于电脑上printscreen(截屏)键所对应的功能,也称为“屏幕快照”功能。随着智能电视的发展,智能电视也可以具备截屏功能,例如用户在看电视时,可以将屏幕截取成图片然后分享到自己的朋友圈中。

现有技术获取电视屏幕截图的做法是,当接收到截图指令时,同时对视频层和ui层进行截屏,再将两张图像合成,如果只有视频层有图像,不存在ui层,则只输出视频层图像。这种操作方法,可能会占用不必要的整机资源(每次截图都要同时去视频层和ui层进行截图,即使不存在ui层)。

也就是说,如果采用传统的方法直接截屏,当前界面无论有没有ui层都会去试着截一下,无论非全屏的视频窗口有没有内容都会截取视频层,而这两种情况都是非必要的,将额外占用系统资源、浪费时间、降低截屏效率。



技术实现要素:

本申请提供了一种截屏处理方法及系统,用于解决现有截屏方法浪费系统资源、浪费时间、截屏效率低的技术问题。

本申请实施例的第一方面提供一种截屏处理方法,应用于终端,包括如下步骤:

接收截屏指令;

判断所述终端当前显示界面是否有ui层,同时,获取所述终端的视频播放器的状态信息;

如果所述终端当前显示界面有ui层,则截取ui层图像;

判断所述状态信息,如果为true,则截取视频层图像;

将所述ui层图像与所述视频层图像叠加得到截屏图像。

进一步地,当判断所述终端当前显示界面没有ui层,且获取所述终端的视频播放器的状态信息为true时,将所述视频层图像作为所述截屏图像。

进一步地,当判断所述终端当前显示界面有ui层,且获取所述终端的视频播放器的状态信息为false时,将所述ui层图像作为所述截屏图像。

进一步地,所述将所述ui层图像与所述视频层图像相叠加作为截屏图像包括:若所述ui层图像有透明度通道,则将所述ui层图像和所述视频层图像进行对应像素点的像素值相加,得到所述截屏图像。

进一步地,所述将所述ui层图像与所述视频层图像相叠加作为截屏图像包括:若所述ui层图像无透明度通道,则将所述ui层图像作为所述截屏图像。

本申请实施例第二方面提供了一种截屏处理系统,包括:

命令接收单元,用于接收所述截屏指令;

第一判断单元,用于判断所述终端当前显示界面是否有ui层;

图像截取单元,用于截取所述ui层图像;

状态信息获取单元,用于获取所述终端的视频播放器的状态信息;

第二判断单元,用于判断所述状态信息是true还是false;

图像截取单元,还用于截取所述视频层图像;

图像叠加单元,用于将所述ui层图像与所述视频层图像叠加得到截屏图像。

进一步地,系统还包括:

第三判断单元,用于判断所述ui层图像是否有透明度通道。

本申请实施例第三方面提供了一种计算机设备,包括处理器和存储器;所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的计算机程序,实现第一方面任一种实现方式所述的截屏处理的方法步骤。

本申请实施例第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质内存

储有计算机程序,所述计算机程序被处理器执行时实现第一方面提供的任一种实现方式所述的截屏处理的方法步骤。

本申请实施例提供的截屏处理方法及系统,通过判断是否存在ui层以及视频播放器的播放状态,当视频播放器处于播放状态且同时存在ui层时,才获取视频层图像和ui层图像进行叠加,得到截屏图像。现有技术不管视频层和/或ui层是否存在图像,都需尝试去获取图像,由此会占用不必要的系统资源并且降低了截屏的效率,本发明当不存在ui层或视频播放器没有播放视频时,可以不进行对应窗口层的图像获取操作,由此可以减少占用的系统资源,提高了截屏效率。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。

附图说明

为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明所涉及的实施环境的示意图;

图2为本申请实施例提供的截屏处理方法的流程图;

图3为本申请实施例提供的一种既包含视频层又包含ui层所截取的截屏图像示意图;

图4为本申请实施例提供的另一种既包含视频层又包含ui层所截取的截屏图像示意图

图5为本申请实施例提供的一种仅包含ui层所截取的截屏图像示意图;

图6为本申请实施例提供的一种仅包含视频层所截取的截屏图像示意图;

图7为本发明一示例性实施例示出的截屏处理方法的完整流程图;

图8为根据一示例性实施例示出的一种截屏处理系统的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1是根据一示例性实施例示出的本发明所涉及的实施环境示意图。本发明所涉及的实施环境包括智能显示设备110。智能显示设备110可以采用本发明提供的截屏处理方法,获得当前界面的截屏图像。

根据需要,该实施环境还可以包括服务器120。服务器120可以接收智能显示设备110上传的截屏图像,并搜索出与截屏图像相关的信息返回至智能显示设备110。

应当说明的是,本发明截屏处理方法,不限于在智能显示设备110中部署相应的处理逻辑,其也可以是部署于其它机器中的处理逻辑。例如,在具备计算能力的终端设备中部署截屏处理方法的处理逻辑等。

实施例1

请参阅图2,本申请实施例示例一提供的截屏处理方法的流程图。一种截屏处理方法,应用于终端,所述方法包括如下步骤:

步骤s201:接收截屏指令。

终端包括但不限于智能电视、手机、平板电脑、笔记本电脑、台式电脑等具有截屏功能的网络设备。在本实施例中终端以智能电视为例进行说明。截屏指令可以为语音指令,在实际应用中,智能电视可以集成有语音识别相关功能模块或应用程序,在识别到用户的语音输入即触发截屏指令,以执行截屏操作。或者,带有语音识别功能的模块或程序集成于遥控设备中,由遥控设备在识别到语音输入向智能电视发送截屏控制信号,以使智能电视执行截屏操作。上述的遥控设备可为与智能电视建立通信连接的智能手机、平板电脑、摇控器等;截屏指令也可以为按键截屏指令,针对快速进行图像识别的功能可在智能电视配套的遥控设备上设置功能键,用户在操作该功能键或某些功能键组合时,遥控设备向智能电视发送截屏指令,本申请对此不进行限制。

步骤s202:判断所述终端当前显示界面是否有ui层,同时,获取所述终端的视频播放器的状态信息。

当前界面是指终端的显示界面,在本实施例中智能电视或智能电视机顶盒的显示界面。智能电视接收到遥控器等控制设备发出的截屏指令,执行后续截屏操作,获取当前正在显示的画面内容。判断所述当前显示界面是否有ui(userinterface用户界面)层,在判断的同时,获取所述终端的视频播放器的状态信息,其中,所述视频播放器是指能播放以数字信号形式存储的视频的软件,所述ui层是指智能设备和用户之间进行交互和信息交换的媒介,用于将数据呈现给用户或处理用户输入的窗口层。

步骤s203:如果所述终端当前显示界面有ui层,则截取ui层图像。

如果所述终端的当前显示界面中有ui层,则所述终端截取此时ui层的图像,从而得到ui层图像。

步骤s204:判断所述状态信息,如果为true,则截取视频层图像。

终端设备根据视频播放器器的状态信息,判断视频播放器是否处于播放状态,如果状态信息是ture,表示当前界面正在播放内容,处于播放状态;如果播放状态时false,表示当前界面没有在播放内容。当视频播放器的状态信息为true时,截取正在播放的视频图像,从而得到视频层图像。

步骤s205:将所述ui层图像与所述视频层图像叠加得到截屏图像。

需要说明的是,视频层和ui层获取的图像是尺寸相同的两张图片。叠加是指将两张同样尺寸的图片中的对应像素点进行压合。例如将两张图片对应像素点的rgba值进行相加,得到截屏图像。截屏图像可以认为是当前界面正在显示的画面内容。

在将所述ui层图像与所述视频层图像进行叠加前,首先判断所述ui层图像是否有透明度通道,其中,透明度通道是指除了rgb(红绿蓝)颜色通道外还具有透明度(alpha)信息。

具体的,当终端设备判断出视频播放器处于播放状态时,获取视频层的图像,当终端设备判断出存在ui层时,获取ui层图像。如果所述ui层获取的图像具有透明度通道,则将视频层图像各像素点的像素值与ui层图像各像素点的rgba(rgba是代表red(红色)green(绿色)blue(蓝色)和alpha的色彩空间,也就是透明度/不透明度)像素值相加,得到截屏图像各像素点的像素值。

若所述ui层图像无透明度通道,则将所述ui层图像作为截屏图像。

其中,无透明度通道是指ui层获取的图像是不透明的。换句话说,会对视频层图像造成遮挡。由此,视频层图像与ui层图像的叠加,可以直接将ui层图像的像素值作为叠加图像的像素值,即将所述ui层图像作为截屏图像。

图3所示为终端当前显示界面有ui层,且视频播放器的状态信息为ture时,截取ui层图像和视频层图像后叠加得到的截屏图像的示例图。其中,该当前显示界面的左上方为视频播放器窗口,用于播放视频信息,当判断视频播放器的状态信息为ture时,截取所述视频层图像,同时判断当前显示界面是否有ui层,当判断有ui层后,截取所述ui层图像,在图3中,除所述视频播放器窗口之外的其他部分为截取的ui层图像,最后,将视频层图像和ui层图像叠加后得到如图3所述的截屏图像。

图4所示为终端当前显示界面有ui层,且视频播放器的状态信息为ture时,截取ui层图像和视频层图像后叠加得到的截屏图像的另一示例图。在用户观看视频时,弹出一个消息提示框以推送新闻头条,终端接收到截屏指令时,截取当前显示界面中的ui层图像和视频层图像,并将二者叠加后得到如图4所示的截屏图像。

现有技术不管视频层和ui层是否存在图像,都需尝试去截取图像,由此会占用不必要的系统资源并且降低了截屏的效率,本发明上述示例性实施例提供的技术方案,通过判断是否存在ui层以及视频播放器的播放状态,当视频播放器处于播放状态且同时存在ui层时,才获取视频层图像和ui层图像进行叠加,得到截屏图像。即当不存在ui层或视频播放器不播放视频时,可以不进行对应层的图像获取操作,由此减少占用的系统资源,提高截屏效率。

实施例2

本申请实施例提供的一种截屏处理方法的流程图。所述方法包括如下步骤:

步骤s201:接收截屏指令。

步骤s202:判断所述终端当前显示界面是否有ui层,同时,获取所述终端的视频播放器的状态信息。

步骤s203:如果所述终端当前显示界面有ui层,则截取ui层图像。

关于步骤s201、步骤s202,步骤s203,具体参见本申请实施例1示出的内容,本申请在此将不再赘述。

步骤s204’:判断所述状态信息,如果为false,则不执行视频层的图像截取操作。

视频播放器的状态信息为false时,表示当前界面没有在播放内容,所以不执行视频层的图像截取操作,由此减少占用的系统资源,提高截屏效率。

步骤s206:将所述ui层图像作为截屏图像。

因为当前界面没有播放视频内容,就不需要执行视频层的图像截取操作,直接将截取的ui层图像作为截屏图像。

如图5所示为终端的当前显示界面仅有ui层,而视频播放器状态为false时得到的截屏图像,在这种情况下,不需要执行视频曾的图像截取操作,直接将截取的ui层图像作为截屏图像。

综上所述,本申请实施例2提供的截屏处理方法,通过判断是否存在ui层以及视频播放器的播放状态,当当前显示界面存在ui层但是视频播放器处于非播放状态时,仅获取ui层图像进,将ui层图像作为截屏图像。即当视频播放器不播放视频时,可以不进行视频层的图像获取操作,由此减少占用的系统资源,提高截屏效率。

实施例3

本申请实施例提供的一种截屏处理方法的流程图。所述方法包括如下步骤:

步骤s201:接收截屏指令。

步骤s202:判断所述终端当前显示界面是否有ui层,同时,获取所述终端的视频播放器的状态信息。

关于步骤s201、步骤s202,具体参见本申请实施例1示出的内容,本申请在此将不再赘述。

步骤s203’:如果所述终端当前显示界面没有ui层,则不执行ui层的图像截取操作。

终端设备判断当前显示界面是否有ui层,如果当前显示界面没有ui层,则就不再执行ui层的图像截取操作,由此减少占用的系统资源,提高截屏效率

步骤s204:判断所述状态信息,如果为true,则截取视频层图像。

终端设备根据视频播放器的状态信息,判断视频播放器是否处于播放状态,如果状态信息是ture,表示当前界面正在播放内容,处于播放状态,截取正在播放的视频图像,从而得到视频层图像。

步骤s207:将所述视频层图像作为截屏图像。

因为当前界面没有ui层,就不需要执行所述ui层的图像截取操作,直接将截取的视频层图像作为截屏图像。

如图6所示,为终端当前显示界面没有ui层,视频播放器状态信息为ture的情况下,截取视频层图像作为截屏图像的示例。在这种情况下,不需要执行所述ui层的图像截取操作,直接将截取的视频层图像作为截屏图像。

综上所述,本申请实施例3提供的截屏处理方法,通过判断是否存在ui层以及视频播放器的播放状态,当当前显示界面不存在ui层但是视频播放器处于播放状态时,仅获取视频层图像,将视频层图像作为截屏图像。即当不存在ui层时,可以不进行ui层的图像获取操作,由此减少占用的系统资源,提高截屏效率。

图7是本发明一示例性实施例示出的截屏处理方法的完整流程图。接收截屏指令后,同时判断当前显示界面是否有ui层以及获取视频播放器的状态信息,并判断状态信息是否为true,通过判断分三种情况进行处理得到截屏图像,这三种情况分别为:一、当前显示界面有ui层,且视频播放器的状态信息为ture,则截取ui层图像和视频层图像,并将二者相叠加得到截屏图像;二、当前显示界面有ui层,但视频播放器的状态信息为false,此时,仅截取ui层图像,并不执行视频层图像的截取操作,将截取的ui层图像作为截屏图像;三、当前显示界面无ui层,但视频播放器的状态信息为ture,此时,仅截取视频层图像,并不执行ui层图像的截取操作,将截取的视频层图像作为截屏图像。

当获知视频播放器处于播放状态且同时存在所述ui层时,若所述ui层的图像有透明度通道,则将所述视频层截取的图像和所述ui层截取的图像进行对应像素点像素值的相加,得到所述截屏图像。

其中,透明度通道是指除了rgb(红绿蓝)颜色通道外还具有透明度(alpha)信息。具体的,当终端设备判断出视频播放器处于播放状态时,截取视频层的图像,当终端设备判断出存在ui层时,获取ui层的图像。如果ui层获取的图像具有透明度通道,则将视频层所获取图像各像素点的像素值与ui层所获取图像各像素点的rgba像素值进行相加,得到截屏图像各像素点的像素值。

获知视频播放器处于播放状态且同时存在所述ui层时,若所述ui层的图像无透明度通道,则将所述ui层获取的图像作为所述视频层所获取图像和ui层所获取图像相叠加得到的截屏图像。

其中,无透明度通道是指ui层获取的图像是不透明的。换句话说,会对视频层的图像造成遮挡。由此,视频层所获取图像与ui层所获取图像的叠加,可以直接将ui层所获取图像的像素值作为叠加图像的像素值,即将ui层图像作为截屏图像。

实施例4

本申请实施例提供一种截屏处理系统,用于执行本申请实施例1或实施例2或实施例3示出的方法,如图8所示,所述系统包括:

命令接收单元,用于接收所述截屏指令;

第一判断单元,用于判断所述终端当前显示界面是否有ui层;

图像截取单元,用于截取所述ui层图像;

状态信息获取单元,用于获取所述终端的视频播放器的状态信息;

第二判断单元,用于判断所述状态信息是true还是false;

图像截取单元,还用于截取所述视频层图像;

图像叠加单元,用于将所述ui层图像与所述视频层图像叠加得到截屏图像。

进一步地,系统还包括:

第三判断单元,用于判断所述ui层图像是否有透明度通道。当所述ui层图像有透明度通道时,将所述视频层截取的图像和所述ui层截取的图像进行对应像素点像素值的相加,得到所述截屏图像。当所述ui层图像无透明度通道时,将所述ui层获取的图像作为所述视频层所获取图像和ui层所获取图像相叠加得到的截屏图像。

可选的,本发明还提供一种电子设备,该电子设备可以用于图1所示实施环境的智能显示设备110中,执行图2、图7任一所示的截屏处理方法的全部或者部分步骤。所述电子设备包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行上述示例性实施例所述的截屏处理方法。

该实施例中电子设备的处理器执行操作的具体方式已经在有关该截屏处理方法的实施例中执行了详细描述,此处将不做详细阐述说明。

在示例性实施例中,还提供了一种存储介质,该存储介质为计算机可读存储介质,例如可以为包括指令的临时性和非临时性计算机可读存储介质。该存储介质存储有计算机程序,以完成上述截屏处理方法。

本申请实施例提供的信息搜索方法及系统,该方法包括:接收截屏指令;判断所述终端

当前显示界面是否有ui层,同时,获取所述终端的视频播放器的状态信息;如果所述终端当前显示界面有ui层,则截取ui层图像;判断所述状态信息,如果为true,则截取视频层图像;将所述ui层图像与所述视频层图像叠加得到截屏图像。本发明提供的技术方案,减少了占用的系统资源,提高了截屏效率。

以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

应当理解的是,本申请并不局限于上面已经描述的内容,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1