CN111338536B - 多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质 - Google Patents

多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质 Download PDF

Info

Publication number
CN111338536B
CN111338536B CN202010427952.7A CN202010427952A CN111338536B CN 111338536 B CN111338536 B CN 111338536B CN 202010427952 A CN202010427952 A CN 202010427952A CN 111338536 B CN111338536 B CN 111338536B
Authority
CN
China
Prior art keywords
screen
recording
instance
layer
extended
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010427952.7A
Other languages
English (en)
Other versions
CN111338536A (zh
Inventor
付凯鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Xiaomi Mobile Software Co Ltd
Original Assignee
Beijing Xiaomi Mobile Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Xiaomi Mobile Software Co Ltd filed Critical Beijing Xiaomi Mobile Software Co Ltd
Priority to CN202010427952.7A priority Critical patent/CN111338536B/zh
Publication of CN111338536A publication Critical patent/CN111338536A/zh
Application granted granted Critical
Publication of CN111338536B publication Critical patent/CN111338536B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording

Abstract

本公开是关于一种多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质。所述多屏电子设备的屏幕录制方法包括:检测到作用于所述多屏电子设备的屏幕录制操作为包含扩展屏的屏幕录制操作时,生成所述扩展屏的录制指令;响应于所述录制指令,为所述扩展屏创建录屏虚拟设备、图层传输接口、以及图层接口;将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备;触发所述录屏虚拟设备基于所述图层接口获取所述扩展屏的图层数据,将所述图层数据通过所述图层传输接口向多媒体模块发送;触发所述多媒体模块基于所述图层数据渲染合成所述扩展屏的录制视频。可以实现主屏和扩展屏的同时录制,也支持单独录制主屏或者扩展屏。

Description

多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储 介质
技术领域
本公开涉及电子设备处理技术,尤其涉及一种多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质。
背景技术
对于支持多屏的电子设备而言,常常需要在多块显示屏上分别显示不同的内容。当需要对多屏电子设备的屏幕进行录制时,通常默认对主屏进行屏幕录制,而对于扩展屏,却是不支持进行屏幕录制。而在实际应用中,如当主屏和扩展屏中显示相关性显示内容时,对主屏及扩展屏同时进行录制的需求的场景是比较多的,如利用主屏和扩展屏进行交互类的应用展示时,需要将扩展屏上的显示内容与主屏内容进行比较,以确定扩展屏相对于主屏显示内容的变化内容,基于该变化内容完成交互。另外,当扩展屏中展示有比较重要的内容时,用户在操作扩展屏时同样想要和主屏相同的屏幕录制功能,同时将主屏和扩展屏的内容录制下来,以便用户基于录制内容进行交互等操作,而目前的电子设备中仅支持主屏录制的模式,非常不便于用户对电子设备的多屏中的使用,大大制约了录屏技术的扩展应用。
发明内容
本公开提供一种多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质。
根据本公开实施例的第一方面,提供一种多屏电子设备的屏幕录制方法,包括:
检测到作用于所述多屏电子设备的屏幕录制操作为包含扩展屏的屏幕录制操作时,生成所述扩展屏的录制指令;
响应于所述录制指令,为所述扩展屏创建录屏虚拟设备、图层传输接口、以及图层接口;
将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备;
触发所述录屏虚拟设备基于所述图层接口获取所述扩展屏的图层数据,将所述图层数据通过所述图层传输接口向多媒体模块发送;
触发所述多媒体模块基于所述图层数据渲染合成所述扩展屏的录制视频。
可选的,所述为所述扩展屏创建录屏虚拟设备,包括:
调用MediaProjectionManagerService实例,通过所述MediaProjectionManagerService实例获取MediaProjection实例,调用所述MediaProjection实例中的createVirtualDisplay实例创建所述录屏虚拟设备。
可选的,所述为所述扩展屏创建图层接口,包括:
为所述扩展屏创建MediaRecorder实例,调用所述MediaProjection实例,创建用于将所述扩展屏的图层数据向多媒体模块传输的Surface实例,其中,所述Surface实例作为所述图层传输接口。
可选的,所述为所述扩展屏创建图层接口,包括:
启动DisplayManagerService实例,通过所述DisplayManagerService实例调用SurfaceFlinger实例,所述SurfaceFlinger实例用于获取所述扩展屏的图层数据而作为所述图层接口。
可选的,所述方法还包括:
配置所述录屏虚拟设备的宽、高与所述扩展屏的宽、高一致,配置所述录屏虚拟设备的layerStack与所述扩展屏的图层栈一致。
可选的,所述将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备,包括:
将所述Surface实例及所述SurfaceFlinger实例配置于所述录屏虚拟设备中,建立所述Surface实例与所述SurfaceFlinger实例之间的关联关系。
可选的,所述方法还包括:
将所述录屏虚拟设备的标记位设置为自动镜像标识,标示所述录屏虚拟设备无自身的显示内容,镜像待录制的显示屏的显示内容。
可选的,所述方法还包括:
确定待录制屏幕的数量为两个以上时,在两个以上屏幕中选择一屏幕进行音频录制,为所选择的屏幕的MediaRecorder实例设置音频录制标识,由设置音频录制标识的MediaRecorder实例采集所选择的屏幕的音频数据。
可选的,所述调用MediaProjectionManagerService实例之前,所述方法还包括:
响应于屏幕录制操作,输出调用所述MediaProjectionManagerService实例的授权提示信息,接收响应于所述提示信息的授权信息后,启动所述MediaProjectionManagerService实例。
根据本公开实施例的第二方面,提供一种多屏电子设备的屏幕录制装置,包括:
检测单元,用于检测作用于所述多屏电子设备的屏幕录制操作是否为包含扩展屏的屏幕录制操作,是时触发生成单元;
生成单元,用于生成所述扩展屏的录制指令;
创建单元,用于响应于所述录制指令,为所述扩展屏创建录屏虚拟设备、图层传输接口、以及图层接口;
第一配置单元,用于将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备;
第一触发单元,用于触发所述录屏虚拟设备基于所述图层接口获取所述扩展屏的图层数据,将所述图层数据通过所述图层传输接口向多媒体模块发送;
第二触发单元,用于触发所述多媒体模块基于所述图层数据渲染合成所述扩展屏的录制视频。
可选的,所述创建单元,还用于调用MediaProjectionManagerService实例,通过所述MediaProjectionManagerService实例获取MediaProjection实例,调用所述MediaProjection实例中的createVirtualDisplay实例创建所述录屏虚拟设备。
可选的,所述创建单元,还用于为所述扩展屏创建MediaRecorder实例,调用所述MediaProjection实例,创建用于将所述扩展屏的图层数据向多媒体模块传输的Surface实例,其中,所述Surface实例作为所述图层传输接口。
可选的,所述创建单元,还用于启动DisplayManagerService实例,通过所述DisplayManagerService实例调用SurfaceFlinger实例,所述SurfaceFlinger实例用于获取所述扩展屏的图层数据而作为所述图层接口。
可选的,所述装置还包括:
第二配置单元,用于配置所述录屏虚拟设备的宽、高与所述扩展屏的宽、高一致,以及,配置所述录屏虚拟设备的layerStack与所述扩展屏的图层栈一致。
可选的,所述第一配置单元,还用于将所述Surface实例及所述SurfaceFlinger实例配置于所述录屏虚拟设备中,建立所述Surface实例与所述SurfaceFlinger实例之间的关联关系。
可选的,所述装置还包括:
第一设置单元,用于将所述录屏虚拟设备的标记位设置为自动镜像标识,标示所述录屏虚拟设备无自身的内容,镜像待录制的显示屏的显示内容。
可选的,所述装置还包括:
确定单元,用于确定待录制屏幕的数量是否为两个以上,为两个以上时触发选择单元;
选择单元,用于在两个以上屏幕中选择一屏幕进行音频录制;
第二设置单元,用于为所选择的屏幕的MediaRecorder实例设置音频录制标识,由设置音频录制标识的MediaRecorder实例采集所选择的屏幕的音频数据。
可选的,所述装置还包括:
输出单元,响应于屏幕录制操作,输出调用所述MediaProjectionManagerService实例的授权提示信息;
接收单元,用于接收响应于所述提示信息的授权信息,启动所述MediaProjectionManagerService实例。
根据本公开实施例的第三方面,提供一种多屏电子设备,所述电子设备支持多屏输出,所述电子设备包括:处理器和用于存储处理器可执行指令的存储器,其中,所述处理器被配置为在调用存储器中的可执行指令时,能够执行如上述第一方面所述的多屏电子设备的屏幕录制方法。
根据本公开实施例的第四方面,提供一种存储介质,包括:
当所述存储介质中的指令由多屏电子设备的处理器执行时,使得多屏电子设备能够执行如上述第一方面所述的多屏电子设备的屏幕录制方法。
本公开的实施例提供的技术方案可以包括以下有益效果:
在本公开的实施例中,检测到用户的屏幕录制操作中包含扩展屏的屏幕录制操作时,为待录制的扩展屏创建录屏虚拟设备、图层传输接口以及图层接口,并将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备中,这样,录屏虚拟设备通过图层接口获取待录屏的扩展屏的图层数据,并通过图层传输接口将所录制的图层数据传递到Media中合成视频,从而完成扩展屏的屏幕录制。上述的录屏虚拟设备、图层传输接口以及图层接口的创建,通过对电子设备中的操作系统中的设备(Display)管理机制的设备管理服务(DisplayManagerService)类和图像渲染合成控制者(SurfaceFlinger)类的修改,使电子设备的操作系统能够支持扩展屏的录制,本公开实施例通过对上述实例进行扩展和功能加强,还可以实现主屏和扩展屏的同时录制,也支持单独录制主屏或者扩展屏。另外,由于本公开的实施例的技术手段主要涉及系统框架(Framework)纯软件层面的扩展,故无需考虑底层硬件的差异,具备一定的通用性,并能保证操作系统运行的稳定性,在不增加任何系统资源消耗的前提下,使电子设备的主屏和扩展屏可以同时执行屏幕录制。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本公开实施例示出的一种多屏电子设备的屏幕录制方法流程示意图一。
图2为本公开实施例示出的多屏电子设备实现多屏录制的框架示意图。
图3为本公开实施例示出的一种多屏电子设备的屏幕录制方法流程示意图二。
图4为本公开实施例示出的一种多屏电子设备的屏幕录制方法流程示意图三。
图5为本公开实施例示出的一种多屏电子设备的屏幕录制装置的组成结构示意图。
图6为本公开实施例示出的多屏电子设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1为本公开实施例示出的一种多屏电子设备的屏幕录制方法流程示意图,如图1所示,本公开实施例的多屏电子设备的屏幕录制方法包括以下步骤:
S11、检测到作用于所述多屏电子设备的屏幕录制操作为包含扩展屏的屏幕录制操作时,生成所述扩展屏的录制指令。
在本公开的实施例中,多屏电子设备可以是手机、游戏机、可穿戴式设备、虚拟现实设备、个人数字助理、笔记本电脑、平板电脑或电视终端等。
用户需要对多屏电子设备的屏幕进行录制时,通过调用电子设备操作系统中的屏幕录制功能,选定待录制的屏幕信息,将选定的待录制的屏幕信息通知多屏电子设备的操作系统。
多屏电子设备的操作系统检测用户针对多屏电子设备的相应操作,响应于用户的操作,生成相应的操作指令。这里的操作可以是多屏电子设备提供给用户的针对所设定的按键操作,如设置专门的录屏操作按键,或设置某些按键的组合作为开启录屏操作的启动操作,或者,通过设置录屏启动的接口,通过触屏操作图标向用户提供等。当多屏电子设备的操作系统检测到用户输入的录屏操作后,生成相应屏幕的录制指令。本公开实施例中,主要是针对扩展屏的屏幕录制操作检测,即多屏电子设备如何支持扩展屏的屏幕录制功能,这里,可以是主屏和扩展屏同时进行屏幕录制,或者,针对扩展屏中的一个或多个进行录制。
作为一种实现手段,屏幕录制的操作也可以是针对多屏电子设备的特定操作,如当多屏电子设备处于某种位姿时,作为屏幕录制的启动的操作,如当多屏电子设备以倾斜30至60度被上下摇晃两次,作为屏幕录制的启动的操作;或当多屏电子设备以倾斜30至60度作轨迹为8字的运动两次,作为屏幕录制的启动的操作。
S12、响应于所述录制指令,为所述扩展屏创建录屏虚拟设备、图层传输接口、以及图层接口。
在本公开的实施例中,当检测到针对扩展屏的屏幕录制指令后,需要为创建扩展屏创建录屏虚拟设备,通过该录屏虚拟设备,实现对待录制扩展屏的图层数据接收,并将所接收的图层数据向后端的图像处理单元如多媒体模块传输,以方便多媒体模块对图层数据进一步的合并、渲染等的处理。当为录屏虚拟设备创建图层传输接口以及图层接口后,将该图层传输接口以及图层接口配置于录屏虚拟设备中,并建立图层传输接口以及图层接口之间的关联关系。
S13、将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备。
在本公开的实施例中,通过将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备,实现所述录屏虚拟设备与图层传输接口以及图层接口之间的连接,从而,所述录屏虚拟设备可以基于图层接口获取待录制屏幕的待显示图像的图层数据,再将所获取的图层数据通过图层传输接口传输给后端的图像处理单元如多媒体模块,从而实现待录制的扩展屏的显示图像的录制,并形成相应的视频流。
S14、触发所述录屏虚拟设备基于所述图层接口获取所述扩展屏的图层数据,将所述图层数据通过所述图层传输接口向多媒体模块发送。
在本公开的实施例中,当为待录制的扩展屏创建完录屏虚拟设备、图层传输接口、以及图层接口后,即可通过所述录屏虚拟设备对待录制的扩展屏的显示图像进行录制,即通过所述图层接口获取待录制的所述扩展屏的图层数据,将所述图层数据通过所述图层传输接口向多媒体模块发送。
S15、触发所述多媒体模块基于所述图层数据渲染合成所述扩展屏的录制视频。
在本公开实施例中,当操作系统的多媒体模块接收到录制的扩展屏的图层数据后,对图层数据进行渲染、合并等处理,即将所述录屏虚拟设备对扩展屏录制的图像数据呈现为待显示图像,并生成录屏视频,从而可以通过指定的显示端口进行录屏视频展示,实现对待录制扩展屏的图像录制。
上述的录屏虚拟设备、图层传输接口以及图层接口的创建,通过对电子设备中的操作系统中的设备(Display)管理机制的设备管理服务(DisplayManagerService)类和图像渲染合成控制者(SurfaceFlinger)类的修改,使电子设备的操作系统能够支持扩展屏的录制,本公开实施例通过对上述实例进行扩展和功能加强,还可以实现主屏和扩展屏的同时录制,也支持单独录制主屏或者扩展屏。
以下,结合多屏电子设备的操作系统的运行环境,对本公开实施例的技术方案的具体实现方式进行阐明。
在本公开实施例中,在对多屏电子设备的屏幕进行录制时,一般需要获取多屏电子设备的用户的授权,无论是针对主屏的录制,还是针对扩展屏的录制,均需要事先获得多屏电子设备用户的授权,只有在获取多屏电子设备用户的授权之后,才能开启对多屏电子设备的主屏或扩展屏的录制功能。
获取多屏电子设备用户的授权,包括:响应于用户针对多屏电子设备的触屏、或虚拟按键或物理按扭等的屏幕录制操作,通过输出单元如显示屏等向用户输出调用所述MediaProjectionManagerService实例的授权提示信息,接收响应于所述提示信息的授权信息后,启动所述MediaProjectionManagerService实例。当然,本公开实施例中,在向用户输出提示信息时,可以是文字提示信息,如“是否开启XX屏幕的录制功能”,或以图标的形式向用户输出上述提示信息等。在获取到用户针对相应屏幕的授权后,操作系统才能启动所述MediaProjectionManagerService实例,从而才能开启本公开实施例的针对扩展屏、或扩展屏及主屏的录制。
在本公开实施例中,由于在对屏幕进行录制时,还涉及到音频媒体的录制,如当待录制的屏幕是用户进行直播的屏幕时,还需要录制直播过程中的音频,但由于音频接口只有一路输出,因此,在进行屏幕录制时,只能由一个屏幕的录屏虚拟设备进行音频录制。因此,当确定待录制屏幕的数量为两个以上时,在两个以上屏幕中选择一屏幕进行音频录制,为所选择的屏幕的MediaRecorder实例设置音频录制标识,由设置音频录制标识的MediaRecorder实例采集所选择的屏幕的音频数据。
在本公开实施例中,首先为所述扩展屏创建MediaRecorder实例,调用所述MediaProjection实例,创建用于将所述扩展屏的图层数据向多媒体模块传输的Surface实例,其中,所述Surface实例作为所述图层传输接口。接着,为扩展屏创建录屏虚拟设备,包括:启动并调用MediaProjectionManagerService实例,通过所述MediaProjectionManagerService实例获取MediaProjection实例,调用所述MediaProjection实例中的createVirtualDisplay实例创建所述录屏虚拟设备。为所述扩展屏创建图层接口,包括:启动DisplayManagerService实例,通过所述DisplayManagerService实例调用SurfaceFlinger实例,所述SurfaceFlinger实例用于获取所述扩展屏的图层数据而作为所述图层接口。
创建完录屏虚拟设备后,配置所述录屏虚拟设备的宽、高与所述扩展屏的宽、高一致,配置所述录屏虚拟设备的layerStack与所述扩展屏的图层栈一致。将所述Surface实例及所述SurfaceFlinger实例配置于所述录屏虚拟设备中,建立所述Surface实例与所述SurfaceFlinger实例之间的关联关系。
同样地,当需要对主屏进行录屏时,同样也需要完主屏创建录屏虚拟设备、图层传输接口、以及图层接口,并配置主屏的所述录屏虚拟设备的宽、高与主屏的宽、高一致,配置主屏的所述录屏虚拟设备的layerStack与主屏的图层栈一致。将主屏的Surface实例及主屏的SurfaceFlinger实例配置于主屏的录屏虚拟设备中,建立主屏的Surface实例与主屏的SurfaceFlinger实例之间的关联关系。也就是说,在本公开实施例中,针对用户所要录屏的屏幕的数量,可同时为待录屏的屏幕生成相应数量的录屏虚拟设备,并为这些录屏虚拟设备配置所述Surface实例及所述SurfaceFlinger实例,以实现对待录制屏幕的图层数据的采集,并通过多屏电子设备的多媒体模块对录屏虚拟设备采集的图层数据进行合并处理,从而完成相应屏幕的录制。
在本公开实施例中,在为待录制的屏幕设置完录屏虚拟设备后,还需要完创建的所述录屏虚拟设备的标记位设置为自动镜像标识,以标示所述录屏虚拟设备无自身的显示内容,需要镜像待录制的显示屏的显示内容。也就是说,需要将为待录制的屏幕创建的录屏虚拟设备设置相应的标识,以区别于实际屏幕中需要实时展示的图层数据的相应实例,避免误识别。
作为一种实现方式,在本公开实施例中,屏幕录制的请求也可以是来自远程的其他电子设备所发送的屏幕录制请求,如当多屏电子设备接收到来自其他电子设备发送的屏幕录制请求后,如果选择相应的录制授权,该多屏电子设备也可以对自身的屏幕进行录制,只是,录制后的录屏视频可以向其他电子设备发送,也可以仅是开启多屏电子设备自身的屏幕录制功能。
图2为本公开实施例示出的多屏电子设备实现多屏录制的框架示意图,如图2所示,在本公开实施例中,针对扩展屏的屏幕录制的主要框架就是物理设备、录屏虚拟设备、多媒体模块的相互协调处理录屏事件,将扩展屏上的图层数据映射到录屏虚拟设备Surface上,而录屏虚拟设备与多媒体模块存在相同的Surface,当录屏虚拟设备上的Surface的图层数据发生变化时,多媒体模块就会读取到发生变化的图层数据,进而合成视频数据,达到针对扩展屏的屏幕录制效果。
本公开实施例在于提供一种在多屏电子设备上实现多屏同时录制的方法,也可以单独对某一个屏幕进行录制,并且根据用户需求来进行录制屏幕。
本公开实施例的在多屏电子设备上实现多屏同时录制的方法,实现原理为利用操作系统中的MediaRecorder实例来设置录制音视频的格式保存视频位置,通过系统服务(MediaProjectionManagerService)实例获取MediaProjection实例,利用MediaProjection实例创建屏幕录制的录屏虚拟设备(VirtualDisplay),在创建录屏虚拟设备时将MediaRecorder实例中创建的Surface实例作为配置参数配置给所创建的录屏虚拟设备,通过设备管理服务(DisplayManagerService)实例调用SurfaceFlinger实例,并将SurfaceFlinger实例作为配置参数也配置给所创建的录屏虚拟设备。录屏虚拟设备利用该Surface获取待录制屏幕的图层数据,并通过SurfaceFlinger实例将待录制的屏幕的图层数据传递到多媒体模块(Media)中进行合成视频。并且,在创建完成录屏虚拟设备后在设备管理服务中对录屏虚拟设备显示的内容、显示区域、设备宽高等进行配置,即将录屏虚拟设备的显示区域、设备宽高与待录屏的屏幕的显示区域、设备宽高配置成完全一致。当录屏虚拟设备中映射的是扩展屏的所有显示内容,就将扩展屏的显示内容合成显示到录屏虚拟设备的Surface上,由于录屏虚拟设备的Surface与Media中创建的Surface是同步连接的,所以扩展屏的显示图层数据可以在Media中合成视频,最终输出扩展屏的屏幕录制视频,在录制主屏时只用将扩展屏的显示内容换成主屏的显示内容即可合成显示到录屏虚拟设备上。
图3为本公开实施例示出的一种多屏电子设备的屏幕录制方法流程示意图二,如图3所示,本示例中,针对的是多个屏幕的录制场景,尤其是针对主屏和至少一个扩展屏的屏幕录制场景,当然,也适合多个扩展屏的录制场景,或者是一个扩展屏的录制场景。本公开实施例示出的一种多屏电子设备的屏幕录制方法包括以下处理步骤:
1.用户对多屏电子设备进行操作,以开启屏幕的录制功能。
这里的操作可以是多屏电子设备提供给用户的针对所设定的按键操作,如设置专门的录屏操作按键,或设置某些按键的组合作为开启录屏操作的启动操作,或者,通过设置录屏启动的接口,通过触屏操作图标向用户提供等。当多屏电子设备的操作系统检测到用户输入的录屏操作后,生成相应屏幕的录制指令。本公开实施例中,主要是针对扩展屏的屏幕录制操作检测,即多屏电子设备如何支持扩展屏的屏幕录制功能,这里,可以是主屏和扩展屏同时进行屏幕录制,或者,针对扩展屏中的一个或多个进行录制。
作为一种实现手段,屏幕录制的操作也可以是针对多屏电子设备的特定操作,如当多屏电子设备处于某种位姿时,作为屏幕录制的启动的操作,如当多屏电子设备以倾斜30至60度被上下摇晃两次,作为屏幕录制的启动的操作;或当多屏电子设备以倾斜30至60度作轨迹为8字的运动两次,作为屏幕录制的启动的操作。
2.触发多屏电子设备的录屏功能。
多屏电子设备检测到用户针对多屏电子设备录屏功能操作后,生成录屏指令,开启多屏电子设备的录屏功能。
在公开实施例中,触发多屏电子设备的录屏功能的指令也可以来这其他电子设备,如与该多屏电子设备有无线或有线网络连接连接的其他电子设备提高网络向该多屏电子设备发送录屏功能的指令,从而触发多屏电子设备的录屏功能。
3.多屏电子设备开启录屏功能时,需要获取多屏电子设备用户的授权。
在本公开的实施例中,多屏电子设备欲开启录屏功能时,利用MediaProjectionManager实例提示用户需要获取屏幕录制授权的提示信息,用户授权后启动MediaProjectionManager实例,利用MediaProjectionManager实例获取MediaProjection实例。
不能获取用户授权时,结束当前的处理,针对多屏电子设备的录屏失败。
4.为待录屏的一个或多个屏幕创建一个或多个MediaRecorder实例,以便创建为待录屏的屏幕创建录屏虚拟设备及相应的图层处理接口。
5.为待录屏的一个或多个屏幕创建一个或多个图层接口。
创建多个MediaRecorder实例,作为用来录制扩展屏、主屏等的图层接口,并且为多个MediaRecorder实例中的每一个MediaRecorder设置视频的格式以及存放位置等信息,并且创建获取待录制屏幕的图层数据的Surface实例。
由于在屏幕录制时只能录制一个声音,所以在当录制请求是同时录制主屏和扩展屏时,对主屏的MediaRecorder实例设置音频、视频信息,即进行视频及音频的录制,对扩展屏的MediaRecorder实例只设置视频信息,不进行录音,因为在同时播放主屏、扩展屏录屏的视频时也只需要一个音频。当然,也可以将音频的录制功能设置给某一个扩展屏,由扩展屏的录制录屏虚拟设备对音频进行录制。
6.为待录屏的一个或多个屏幕创建一个或多个录屏虚拟设备。
利用之前获取的MediaProjection实例创建一个或多个录屏虚拟设备(VirtualDisplay),用来映射扩展屏、或扩展屏及主屏。并且将前述创建的Surface实例做为参数分别配置于相应的录屏虚拟设备。
在创建录屏虚拟设备时,为录屏虚拟设备设置的自动镜像的标识,如可以为创建录屏虚拟设备设置DisplayManager.VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR的标志位,表示该录屏虚拟设备没有自己的内容,需要自动镜像某一屏幕的内容到录屏虚拟设备中。而在Media创建的Surface实例是实现录屏虚拟设备上图层数据传递到Media中合成视频的主要通道。
7.设置物理设备数据到录屏虚拟设备。
在创建录屏虚拟设备过程中,首先在DisplayManagerService实例中创建一个Java层的图层传输接口,之后又通过底层调用到C++层在SurfaceFlinger实例中创建一个相应的C++层的图层接口,分别作为创建的录屏虚拟设备的接口。
在配置录屏虚拟设备时,设置待录制主屏的录屏虚拟设备的宽高、layerStac分别与主屏的宽高、图层栈一致。设置待录制扩展屏的录屏虚拟设备的宽高、layerStack分别与扩展屏的宽高、图层栈一致,并且和对应的Media中创建的Surface全部关联到C++层中的接口。在C++层的SurfaceFlinger中从主屏的layerStack中获取到当前的图层数据,渲染合成到主屏的录屏虚拟设备Surface上。从扩展屏的layerStack中获取到当前的图层数据,渲染合成到扩展屏的录屏虚拟设备Surface上。
8.SurfaceFlinger实例合成对物理设备可见图层到录制录屏虚拟设备。
当录屏虚拟设备创建完成后,在DisplayManagerService实例中配置创建好的录屏虚拟设备,在SurfaceFlinger中将对应的显示的图层合成在C++层录屏虚拟设备的Surface上。
9.Media完成图层数据处理,生成录制视频。
之后分别调用待录制屏幕的MediaRecorder的start函数开始录制屏幕; Media从对应的录屏虚拟设备Surface中读取图层数据,进行合成视频。
图4为本公开实施例示出的一种多屏电子设备的屏幕录制方法流程示意图三,如图4所示,本公开实施例是针对主屏和扩展屏同时录制的情形,本公开实施例的多屏电子设备的屏幕录制方法包括以下步骤:
通过MediaProjection创建两个录屏虚拟设备,分别根据录屏虚拟设备的Surface来保存主屏和扩展屏的图层信息,而录屏虚拟设备的Surface是通过MediaRecorder从底层C++层的Media进行获取,之后使用多个MediaRecorder分别来录制主屏和扩展屏。
创建好录屏虚拟设备后,配置录屏虚拟设备信息。根据该录屏虚拟设备是否设置了VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR标记位来判断该录屏虚拟设备有没有自己的内容,如果设置了VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR标记位,就需要映射其他屏幕的内容,从mLogicalDisplays实例中获取主屏或者扩展屏的图层数据来映射给对应的录屏虚拟设备。
在SurfaceFlinger中根据录屏虚拟设备设置的layerStack,从layerStack中获取可见的图层数据,将图层数据进行渲染合成到录屏虚拟设备,最终通过Surface到Media中合成视频。
本公开实施例在遵从系统标准的设备屏幕录制的前提下,也支持扩展屏的屏幕录制,并且能够实现多屏同时录制。本公开实施例通过对display管理机制的DisplayManagerService类和图像渲染合成控制者SurfaceFlinger类进行相应的扩展,从而实现多屏同时录屏的呈现效果和用户体验。
本公开实施例的多屏同时录屏的方法,可以应用于任何android系统的多屏电子设备上。
由于屏幕录制框架只支持默认录制主屏,对显示在扩展屏的应用不能满足屏幕录制需求。本公开实施例的多屏同时录屏的方法通过对系统中的相应实例进行扩展和调用,克服了这一缺陷。另外,由于系统录音过程中只能允许一个程序进行获取音频,如果主屏扩展屏同时录音会发生冲突,导致录屏失败。而同时播放两个录屏时也只需要一个音频,所以在同时录屏时只用录制一个音频。在本公开实施例中,通过对Android系统的相关实例进行扩展,使DisplayManagerService实例可以根据具体的设备id来获取对应的设备信息,通过请求录制哪个屏幕设备的信息,来通知SurfaceFlinger对应的录屏虚拟设备映射哪个设备。
图5为本公开实施例示出的一种多屏电子设备的屏幕录制装置的组成结构示意图,如图5所示,本公开实施例示出的多屏电子设备的屏幕录制装置包括:
检测单元51,用于检测作用于所述多屏电子设备的屏幕录制操作是否为包含扩展屏的屏幕录制操作,是时触发生成单元;
生成单元52,用于生成所述扩展屏的录制指令;
创建单元53,用于响应于所述录制指令,为所述扩展屏创建录屏虚拟设备、图层传输接口、以及图层接口;
第一配置单元54,用于将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备;
第一触发单元55,用于触发所述录屏虚拟设备基于所述图层接口获取所述扩展屏的图层数据,将所述图层数据通过所述图层传输接口向多媒体模块发送;
第二触发单元56,用于触发所述多媒体模块基于所述图层数据渲染合成所述扩展屏的录制视频。
可选的,所述创建单元53,还用于调用MediaProjectionManagerService实例,通过所述MediaProjectionManagerService实例获取MediaProjection实例,调用所述MediaProjection实例中的createVirtualDisplay实例创建所述录屏虚拟设备。
可选的,所述创建单元53,还用于为所述扩展屏创建MediaRecorder实例,调用所述MediaProjection实例,创建用于将所述扩展屏的图层数据向多媒体模块传输的Surface实例,其中,所述Surface实例作为所述图层传输接口。
可选的,所述创建单元53,还用于启动DisplayManagerService实例,通过所述DisplayManagerService实例调用SurfaceFlinger实例,所述SurfaceFlinger实例用于获取所述扩展屏的图层数据而作为所述图层接口。
可选的,在图5所示的多屏电子设备的屏幕录制装置的基础上,本公开实施例的多屏电子设备的屏幕录制装置还包括:
第二配置单元(图5中未示出),用于配置所述录屏虚拟设备的宽、高与所述扩展屏的宽、高一致,以及,配置所述录屏虚拟设备的layerStack与所述扩展屏的图层栈一致。
可选的,所述第一配置单元54,还用于将所述Surface实例及所述SurfaceFlinger实例配置于所述录屏虚拟设备中,建立所述Surface实例与所述SurfaceFlinger实例之间的关联关系。
可选的,在图5所示的多屏电子设备的屏幕录制装置的基础上,本公开实施例的多屏电子设备的屏幕录制装置还包括:
第一设置单元(图5中未示出),用于将所述录屏虚拟设备的标记位设置为自动镜像标识,标示所述录屏虚拟设备无自身的内容,镜像待录制的显示屏的显示内容。
可选的,在图5所示的多屏电子设备的屏幕录制装置的基础上,本公开实施例的多屏电子设备的屏幕录制装置还包括:
确定单元(图5中未示出),用于确定待录制屏幕的数量是否为两个以上,为两个以上时触发选择单元;
选择单元(图5中未示出),用于在两个以上屏幕中选择一屏幕进行音频录制;
第二设置单元(图5中未示出),用于为所选择的屏幕的MediaRecorder实例设置音频录制标识,由设置音频录制标识的MediaRecorder实例采集所选择的屏幕的音频数据。
可选的,在图5所示的多屏电子设备的屏幕录制装置的基础上,本公开实施例的多屏电子设备的屏幕录制装置还包括:
输出单元(图5中未示出),响应于屏幕录制操作,输出调用所述MediaProjectionManagerService实例的授权提示信息;
接收单元(图5中未示出),用于接收响应于所述提示信息的授权信息,启动所述MediaProjectionManagerService实例。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6为根据一示例性实施例示出的一种多屏电子设备800的框图,如图6所示,参照图6,多屏电子设备800支持多屏输出,多屏电子设备800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制多屏电子设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在多屏电子设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为多屏电子设备800的各种组件提供电力。电力组件806可以包括电源管理系统,一个或多个电源,及其他与为多屏电子设备800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述多屏电子设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当多屏电子设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为多屏电子设备800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为多屏电子设备800的显示器和小键盘,传感器组件814还可以检测多屏电子设备800或多屏电子设备800一个组件的位置改变,用户与多屏电子设备800接触的存在或不存在,多屏电子设备800方位或加速/减速和多屏电子设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于多屏电子设备800和其他设备之间有线或无线方式的通信。多屏电子设备800可以接入基于通信标准的无线网络,如Wi-Fi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,多屏电子设备800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例的多屏电子设备的屏幕录制方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由多屏电子设备800的处理器820执行以完成上述实施例的多屏电子设备的屏幕录制方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本公开实施例还记载了一种非临时性计算机可读存储介质,当所述存储介质中的指令由多屏电子设备的处理器执行时,使得多屏电子设备能够执行控制方法,所述方法包括:
检测到作用于所述多屏电子设备的屏幕录制操作为包含扩展屏的屏幕录制操作时,生成所述扩展屏的录制指令;
响应于所述录制指令,为所述扩展屏创建录屏虚拟设备、图层传输接口、以及图层接口;
将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备;
触发所述录屏虚拟设备基于所述图层接口获取所述扩展屏的图层数据,将所述图层数据通过所述图层传输接口向多媒体模块发送;
触发所述多媒体模块基于所述图层数据渲染合成所述扩展屏的录制视频。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (14)

1.一种多屏电子设备的屏幕录制方法,其特征在于,主屏和扩展屏同时进行屏幕录制,或者,针对扩展屏中的一个或多个进行录制;所述方法包括:
检测到作用于所述多屏电子设备的屏幕录制操作为包含扩展屏的屏幕录制操作时,生成所述扩展屏的录制指令;
响应于所述录制指令,为所述扩展屏创建录屏虚拟设备、图层传输接口、以及图层接口;其中,所述为所述扩展屏创建图层接口,包括:为所述扩展屏创建媒体录制MediaRecorder实例,调用MediaProjection实例,创建用于将所述扩展屏的图层数据向多媒体模块传输的Surface实例,其中,所述Surface实例作为所述图层传输接口;启动设备管理服务DisplayManagerService实例,通过所述DisplayManagerService实例调用图像渲染合成控制者SurfaceFlinger实例,所述SurfaceFlinger实例用于获取所述扩展屏的图层数据而作为所述图层接口;
将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备;
触发所述录屏虚拟设备基于所述图层接口获取所述扩展屏的图层数据,将所述图层数据通过所述图层传输接口向多媒体模块发送;
触发所述多媒体模块基于所述图层数据渲染合成所述扩展屏的录制视频;
将录屏虚拟设备的显示区域、设备宽高与待录屏的屏幕的显示区域、设备宽高配置成完全一致;当录屏虚拟设备中映射的是扩展屏的所有显示内容,将扩展屏的显示内容合成显示到录屏虚拟设备的Surface上,由于录屏虚拟设备的Surface与多媒体模块Media中创建的Surface是同步连接的,扩展屏的显示图层数据能够在Media中合成视频,最终输出扩展屏的屏幕录制视频,在录制主屏时只用将扩展屏的显示内容换成主屏的显示内容即可合成显示到录屏虚拟设备上。
2.根据权利要求1所述的方法,其特征在于,所述为所述扩展屏创建录屏虚拟设备,包括:
调用系统服务MediaProjectionManagerService实例,通过所述MediaProjectionManagerService实例获取媒体投影MediaProjection实例,调用所述MediaProjection实例中的创建录屏虚拟设备createVirtualDisplay实例创建所述录屏虚拟设备。
3.根据权利要求1所述的方法,其特征在于,所述将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备,包括:
将所述Surface实例及所述SurfaceFlinger实例配置于所述录屏虚拟设备中,建立所述Surface实例与所述SurfaceFlinger实例之间的关联关系。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述录屏虚拟设备的标记位设置为自动镜像标识,标示所述录屏虚拟设备无自身的显示内容,镜像待录制的显示屏的显示内容。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定待录制屏幕的数量为两个以上时,在两个以上屏幕中选择一屏幕进行音频录制,为所选择的屏幕的MediaRecorder实例设置音频录制标识,由设置音频录制标识的MediaRecorder实例采集所选择的屏幕的音频数据。
6.根据权利要求2所述的方法,其特征在于,所述调用MediaProjectionManagerService实例之前,所述方法还包括:
响应于屏幕录制操作,输出调用所述MediaProjectionManagerService实例的授权提示信息,接收响应于所述提示信息的授权信息后,启动所述MediaProjectionManagerService实例。
7.一种多屏电子设备的屏幕录制装置,其特征在于,所述电子设备的主屏和扩展屏同时进行屏幕录制,或者,针对扩展屏中的一个或多个进行录制;所述装置包括:
检测单元,用于检测作用于所述多屏电子设备的屏幕录制操作是否为包含扩展屏的屏幕录制操作,是时触发生成单元;
生成单元,用于生成所述扩展屏的录制指令;
创建单元,用于响应于所述录制指令,为所述扩展屏创建录屏虚拟设备、图层传输接口、以及图层接口;为所述扩展屏创建图层接口,包括:为所述扩展屏创建媒体录制MediaRecorder实例,调用MediaProjection实例,创建用于将所述扩展屏的图层数据向多媒体模块传输的Surface实例,其中,所述Surface实例作为所述图层传输接口;启动设备管理服务DisplayManagerService实例,通过所述DisplayManagerService实例调用图像渲染合成控制者SurfaceFlinger实例,所述SurfaceFlinger实例用于获取所述扩展屏的图层数据而作为所述图层接口;
第一配置单元,用于将所述图层接口的参数及所述图层传输接口的参数配置于所述录屏虚拟设备;
第一触发单元,用于触发所述录屏虚拟设备基于所述图层接口获取所述扩展屏的图层数据,将所述图层数据通过所述图层传输接口向多媒体模块发送;
第二触发单元,用于触发所述多媒体模块基于所述图层数据渲染合成所述扩展屏的录制视频;以及,将录屏虚拟设备的显示区域、设备宽高与待录屏的屏幕的显示区域、设备宽高配置成完全一致;当录屏虚拟设备中映射的是扩展屏的所有显示内容,将扩展屏的显示内容合成显示到录屏虚拟设备的Surface上,由于录屏虚拟设备的Surface与Media中创建的Surface是同步连接的,扩展屏的显示图层数据能够在Media中合成视频,最终输出扩展屏的屏幕录制视频,在录制主屏时只用将扩展屏的显示内容换成主屏的显示内容即可合成显示到录屏虚拟设备上。
8.根据权利要求7所述的装置,其特征在于,所述创建单元,还用于调用MediaProjectionManagerService实例,通过所述MediaProjectionManagerService实例获取MediaProjection实例,调用所述MediaProjection实例中的createVirtualDisplay实例创建所述录屏虚拟设备。
9.根据权利要求7所述的装置,其特征在于,所述第一配置单元,还用于将所述Surface实例及所述SurfaceFlinger实例配置于所述录屏虚拟设备中,建立所述Surface实例与所述SurfaceFlinger实例之间的关联关系。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第一设置单元,用于将所述录屏虚拟设备的标记位设置为自动镜像标识,标示所述录屏虚拟设备无自身的内容,镜像待录制的显示屏的显示内容。
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
确定单元,用于确定待录制屏幕的数量是否为两个以上,为两个以上时触发选择单元;
选择单元,用于在两个以上屏幕中选择一屏幕进行音频录制;
第二设置单元,用于为所选择的屏幕的MediaRecorder实例设置音频录制标识,由设置音频录制标识的MediaRecorder实例采集所选择的屏幕的音频数据。
12.根据权利要求8所述的装置,其特征在于,所述装置还包括:
输出单元,响应于屏幕录制操作,输出调用所述MediaProjectionManagerService实例的授权提示信息;
接收单元,用于接收响应于所述提示信息的授权信息,启动所述MediaProjectionManagerService实例。
13.一种多屏电子设备,所述电子设备支持多屏输出,其特征在于,所述电子设备包括:处理器和用于存储处理器可执行指令的存储器,其中,所述处理器被配置为在调用存储器中的可执行指令时,能够执行如权利要求1至7中任一项所述的多屏电子设备的屏幕录制方法。
14.一种非临时性计算机可读存储介质,当所述存储介质中的指令由多屏电子设备的处理器执行时,使得多屏电子设备能够执行如权利要求1至7中任一项所述的多屏电子设备的屏幕录制方法。
CN202010427952.7A 2020-05-20 2020-05-20 多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质 Active CN111338536B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010427952.7A CN111338536B (zh) 2020-05-20 2020-05-20 多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010427952.7A CN111338536B (zh) 2020-05-20 2020-05-20 多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质

Publications (2)

Publication Number Publication Date
CN111338536A CN111338536A (zh) 2020-06-26
CN111338536B true CN111338536B (zh) 2020-11-13

Family

ID=71182993

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010427952.7A Active CN111338536B (zh) 2020-05-20 2020-05-20 多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质

Country Status (1)

Country Link
CN (1) CN111338536B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111679772B (zh) * 2020-08-17 2020-11-24 深圳诚一信科技有限公司 一种屏幕录制方法、系统、多屏设备和可读存储介质
CN111913867A (zh) * 2020-09-07 2020-11-10 京东数字科技控股股份有限公司 故障反馈方法、装置、设备及存储介质
CN112954248B (zh) * 2021-02-21 2022-12-02 北京津发科技股份有限公司 多屏录制方法、装置、多屏设备及计算机可读存储介质
CN114615539A (zh) * 2022-03-29 2022-06-10 西安超越申泰信息科技有限公司 一种多显示器的录屏回放方法、计算机及可读介质
CN115243098A (zh) * 2022-07-19 2022-10-25 上海联影医疗科技股份有限公司 屏幕录制方法、装置、计算机设备和存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080252856A1 (en) * 2007-04-13 2008-10-16 Raytac Corp. Wireless presentation multi-proportion scaling method
CN102790921B (zh) * 2011-05-19 2015-06-24 上海贝尔股份有限公司 为多屏业务选择和录制部分屏幕区域的方法和设备
CN106375696B (zh) * 2016-09-30 2019-05-24 腾讯科技(深圳)有限公司 一种屏幕录像方法及装置
CN108984137B (zh) * 2017-06-01 2021-10-22 福建星网视易信息系统有限公司 双屏显示方法及其系统、计算机可读存储介质
CN110438222B (zh) * 2018-05-04 2023-08-18 中国科学院分子细胞科学卓越创新中心 一种用于侵袭性淋巴瘤的早期诊断检测试剂盒
CN110347305A (zh) * 2019-05-30 2019-10-18 华为技术有限公司 一种vr多屏显示方法及电子设备

Also Published As

Publication number Publication date
CN111338536A (zh) 2020-06-26

Similar Documents

Publication Publication Date Title
CN111338536B (zh) 多屏电子设备的屏幕录制方法及装置、多屏电子设备、存储介质
US11315336B2 (en) Method and device for editing virtual scene, and non-transitory computer-readable storage medium
CN107526494B (zh) 键盘显示方法、装置、终端及存储介质
US11183153B1 (en) Image display method and device, electronic device, and storage medium
JP6488375B2 (ja) デバイス制御方法及び装置
CN111314768A (zh) 投屏方法、投屏装置、电子设备以及计算机可读存储介质
WO2017219347A1 (zh) 直播显示方法、装置及系统
CN112019893B (zh) 终端的投屏方法和终端的投屏装置
US20160255521A1 (en) Method and apparatus for testing a smart device
EP3147802B1 (en) Method and apparatus for processing information
CN107526591B (zh) 切换直播间类型的方法和装置
CN112114765A (zh) 投屏方法、装置及存储介质
EP3462367B1 (en) Method and apparatus for displaying application interface
CN113365153B (zh) 数据分享方法、装置、存储介质及电子设备
CN106792024B (zh) 多媒体信息的分享方法及装置
CN107272896B (zh) Vr模式与非vr模式之间切换的方法及装置
CN108829473B (zh) 事件响应方法、装置及存储介质
CN106773750B (zh) 设备图像显示方法及装置
CN114647395A (zh) 投屏方法、装置、电子设备及存储介质
CN107918514B (zh) 展示方法及装置、电子设备、计算机可读存储介质
CN112269551A (zh) 一种跨设备显示信息的方法、装置及存储介质
CN111610899A (zh) 界面展示方法、界面展示装置及存储介质
CN110955328B (zh) 电子设备的控制方法、装置及存储介质
EP4209398A1 (en) Method and apparatus for synchronizing information, and storage medium
US20220291890A1 (en) Method for interaction between devices and medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant