CN114327312B - 投屏控制方法和装置 - Google Patents
投屏控制方法和装置 Download PDFInfo
- Publication number
- CN114327312B CN114327312B CN202011027392.2A CN202011027392A CN114327312B CN 114327312 B CN114327312 B CN 114327312B CN 202011027392 A CN202011027392 A CN 202011027392A CN 114327312 B CN114327312 B CN 114327312B
- Authority
- CN
- China
- Prior art keywords
- layer
- electronic device
- screen
- synthesized
- data
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/363—Graphics controllers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/762—Media network packet handling at the source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/01—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2352/00—Parallel handling of streams of display data
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2358/00—Arrangements for display data security
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/16—Use of wireless transmission of display information
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Controls And Circuits For Display Device (AREA)
- Telephone Function (AREA)
Abstract
本申请实施例提供一种投屏控制方法和装置,该投屏控制方法和装置可以应用于视频处理技术领域,其中,该方法应用于第一电子设备,第一电子设备包括图形处理器GPU和硬件混合渲染器HWC,该方法包括:在第一电子设备处于投屏状态时,确定待投屏显示的多媒体信息对应的待合成图层中是否包含视频安全图层;若不包含视频安全图层,则将待合成图层分别发送给GPU和HWC;通过GPU和HWC并行对待合成图层进行合成,并将GPU合成的第一图层发送给第二电子设备,以在第二电子设备上显示第一图层对应的多媒体信息;显示HWC合成的第二图层对应的多媒体信息。本申请实施例提供的投屏控制方法和装置可以提高图层合成的效率,进而提高多媒体信息投屏的效率。
Description
技术领域
本申请实施例涉及终端技术领域,尤其涉及一种投屏控制方法和装置。
背景技术
随着互联网技术的发展,投屏技术得到了广泛的应用。其中,投屏是指将设备A的多媒体文件投放至设备B中,使设备B也能够同步显示设备A的显示多媒体文件。通过投屏技术可以将显示屏较小的设备(例如手机、平板电脑)的多媒体文件,投射至大屏显示设备上(例如电视、车载多媒体显示屏),从而达到更好的观看效果,以及便于与多人分享多媒体文件。
现有技术中,通常采用屏幕镜像投屏的方式,即将设备A(即投屏设备)显示的多媒体文件的全部内容完整的投射至设备B(即显示设备)上,使设备B显示的内容与设备A显示的内容一致。具体的,设备A通过图形处理器(Graphics Processing Unit,GPU)合成在设备B上显示的数据,并发送给设备B后,再通过硬件混合渲染器(Hardware Composer,HWC)合成自身显示的数据,从而完成投屏。
然而,上述的投屏方式中,投屏的效率较低。
发明内容
本申请实施例提供一种投屏控制方法和装置,可以提高图层合成的效率,进而提高多媒体信息投屏的效率。
第一方面,本申请实施例提供一种投屏控制方法,应用于第一电子设备,所述第一电子设备包括图形处理器GPU和硬件混合渲染器HWC,所述方法包括:在所述第一电子设备处于投屏状态时,确定待投屏显示的多媒体信息对应的待合成图层中是否包含视频安全图层;若不包含所述视频安全图层,则将所述待合成图层分别发送给所述GPU和所述HWC;通过所述GPU和所述HWC并行对所述待合成图层进行合成,并将所述GPU合成的第一图层发送给第二电子设备,以在所述第二电子设备上显示所述第一图层对应的所述多媒体信息;显示所述HWC合成的第二图层对应的所述多媒体信息。
在本方案中,由于在待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,可以通过GPU和HWC并行对待合成图层进行合成,从而可以提高图层合成的效率,进而提高多媒体信息投屏的效率。
在一种可能的实现方式中,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
在本方案中,由于第一数据格式的数据的数据量小于RGBA8888的数据的数据量,因此,可以减小数据的传输量,提高数据的传输效率,而且可以优化存储效率,降低显示带宽。
在一种可能的实现方式中,所述第一数据格式为YUV420sp。
在本方案中,由于YUV420sp的数据的数据量小于RGBA8888的数据的数据量,因此,可以减小数据的传输量,从而提高数据的传输效率。
在一种可能的实现方式中,所述将所述GPU合成的第一图层发送给第二电子设备,包括:将所述第一图层进行编码,得到编码后的图层;根据实时传输协议RTP或RTP控制协议RTCP,将所述编码后的图层进行打包;将打包处理后的图层发送给所述第二电子设备。
在本方案中,由于第一电子设备会将第一图层进行编码压缩,并对编码后的图层进行RTP或RTCP打包处理,从而将打包处理后的图层发送给第二电子设备,由此不仅可以提高图层数据的安全性,而且可以减小数据的传输量,提高数据传输的效率。
在一种可能的实现方式中,所述将打包处理后的图层发送给所述第二电子设备,包括:通过传输控制协议TCP或用户数据报协议UDP,将所述打包处理后的图层发送给所述第二电子设备。
在一种可能的实现方式中,确定所述第一电子设备处于投屏状态,包括:确定是否调用了创建虚拟屏方法和创建编码器方法;若确定调用了所述创建虚拟屏方法和所述创建编码器方法,则确定所述第一电子设备处于投屏状态。
在本方案中,通过确定是否调用了创建虚拟屏方法和创建编码器方法,来确定第一电子设备是否处于投屏状态,由此可以提高确定投屏状态的效率和准确性。
第二方面,本申请实施例提供一种投屏控制方法,应用于第二电子设备,所述方法包括:接收第一电子设备发送的第一图层,所述第一图层为所述第一电子设备处于投屏状态时,在确定出待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,与第二图层并行合成得到的,所述第一图层为通过所述第一电子设备中的图形处理器GPU合成的,所述第二图层为通过所述第一电子设备中的硬件混合渲染器HWC合成的;对所述第一图层进行解析,得到所述多媒体信息;显示所述多媒体信息。
在本方案中,由于在待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,可以通过GPU和HWC并行对待合成图层进行合成,从而可以提高图层合成的效率,进而提高多媒体信息投屏的效率。
在一种可能的实现方式中,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
在本方案中,由于第一数据格式的数据的数据量小于RGBA8888的数据的数据量,因此,可以减小数据的传输量,提高数据的传输效率,而且可以优化存储效率,降低显示带宽。
在一种可能的实现方式中,所述第一数据格式为YUV420sp。
在本方案中,由于YUV420sp的数据的数据量小于RGBA8888的数据的数据量,因此,可以减小数据的传输量,从而提高数据的传输效率。
在一种可能的实现方式中,所述对所述第一图层进行解析,得到所述多媒体信息,包括:根据实时传输协议RTP或RTP控制协议RTCP,对所述第一图层进行解包;将解包处理后的图层进行解码;将解码后的图层的格式由所述第一数据格式转换为所述RGBA8888格式,得到多媒体信息。
在本方案中,第二电子设备将解码后的图层的格式由第一数据格式转换为RGBA8888格式,从而可以保证多媒体信息的正确显示。
在一种可能的实现方式中,所述接收第一电子设备发送的第一图层数据,包括:通过传输控制协议TCP或用户数据报协议UDP,接收所述第一图层数据。
第三方面,本申请实施例提供一种投屏控制装置,所述装置包括图形处理器GPU和硬件混合渲染器HWC,所述装置包括:处理单元,用于在所述投屏显示装置处于投屏状态时,确定待投屏显示的多媒体信息对应的待合成图层中是否包含视频安全图层;发送单元,用于在不包含所述视频安全图层时,将所述待合成图层分别发送给所述GPU和所述HWC;所述处理单元,还用于通过所述GPU和所述HWC并行对所述待合成图层进行合成;所述发送单元,还用于将所述GPU合成的第一图层发送给第二电子设备,以在所述第二电子设备上显示所述第一图层对应的所述多媒体信息;显示单元,用于显示所述HWC合成的第二图层对应的所述多媒体信息。
在一种可能的实现方式中,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
在一种可能的实现方式中,所述第一数据格式为YUV420sp。
在一种可能的实现方式中,所述发送单元,具体用于:将所述第一图层进行编码,得到编码后的图层;根据实时传输协议RTP或RTP控制协议RTCP,将所述编码后的图层进行打包;将打包处理后的图层发送给所述第二电子设备。
在一种可能的实现方式中,所述发送单元,具体用于:通过传输控制协议TCP或用户数据报协议UDP,将所述打包处理后的图层发送给所述第二电子设备。
在一种可能的实现方式中,所述处理单元,具体用于:确定是否调用了创建虚拟屏方法和创建编码器方法;若确定调用了所述创建虚拟屏方法和所述创建编码器方法,则确定所述第一电子设备处于投屏状态。
第四方面,本申请实施例提供一种投屏控制装置,包括:接收单元,用于接收第一电子设备发送的第一图层,所述第一图层为所述第一电子设备处于投屏状态时,在确定出待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,与第二图层并行合成得到的,所述第一图层为通过所述第一电子设备中的图形处理器GPU合成的,所述第二图层为通过所述第一电子设备中的硬件混合渲染器HWC合成的;处理单元,用于对所述第一图层进行解析,得到所述多媒体信息;显示单元,用于显示所述多媒体信息。
在一种可能的实现方式中,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
在一种可能的实现方式中,所述第一数据格式为YUV420sp。
在一种可能的实现方式中,所述处理单元,具体用于:根据实时传输协议RTP或RTP控制协议RTCP,对所述第一图层进行解包;将解包处理后的图层进行解码;将解码后的图层的格式由所述第一数据格式转换为所述RGBA8888格式,得到多媒体信息。
在一种可能的实现方式中,所述接收单元,具体用于:通过传输控制协议TCP或用户数据报协议UDP,接收所述第一图层数据。
第五方面,本申请实施例提供一种投屏控制装置,所述装置包括显示器、处理器和存储器,所述存储器中存储有计算机程序,所述处理器执行所述存储器中存储的计算机程序,以使所述装置执行如第一方面或第二方面所述的方法。
第六方面,本申请实施例提供一种通信装置,包括:处理器和接口电路;所述接口电路,用于接收代码指令并传输至所述处理器;所述处理器,用于运行所述代码指令以执行如第一方面或第二方面所述的方法。
本申请第三方面到第四方面提到的装置,可以是电子设备,也可以是电子设备内的芯片,电子设备或芯片具有实现上述各方面或其任意可能的设计中的投屏控制方法的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的单元。
电子设备包括:处理单元和收发单元,处理单元可以是处理器,收发单元可以是收发器,收发器包括射频电路,可选地,电子设备还包括存储单元,存储单元例如可以是存储器。当电子设备包括存储单元时,存储单元用于存储计算机执行指令,处理单元与存储单元连接,处理单元执行存储单元存储的计算机执行指令,以使电子设备执行上述各方面或其任意可能的设计中的投屏控制方法。
芯片包括:处理单元和收发单元,处理单元可以是处理器,收发单元可以是芯片上的输入/输出接口、管脚或电路等。处理单元可执行存储单元存储的计算机执行指令,以使芯片执行上述各方面或其任意可能的设计中的投屏控制方法。可选地,存储单元可以是芯片内的存储单元(例如,寄存器、缓存等),存储单元还可以是终端设备内的位于芯片外部的存储单元(例如,只读存储器(read-only memory,ROM))或可存储静态信息和指令的其他类型的静态存储设备(例如,随机存取存储器(random access memory,RAM))等。
上述提到的处理器可以是一个中央处理器(central processing unit,CPU)、微处理器或专用集成电路(application specific integrated circuit,ASIC),也可以是一个或多个用于控制上述各方面或其任意可能的设计的投屏控制方法的程序执行的集成电路。
第七方面,本申请实施例提供一种可读存储介质,用于存储有指令,当所述指令被执行时,使如第一方面或第二方面所述的方法被实现。
第八方面,本申请实施例提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本申请实施例的第一方面至第二方面任一方面提供的投屏控制方法。
本申请实施例提供的投屏控制方法和装置,该方法应用于第一电子设备,该第一电子设备包括GPU和HWC,在第一电子设备处于投屏状态时,确定待投屏显示的多媒体信息对应的待合成图层中是否包含视频安全图层,若不包含视频安全图层,则可以将待合成图层分别发送给GPU和HWC,然后通过GPU和HWC并行对待合成图层进行合成,并将GPU合成的第一图层发送给第二电子设备,以在第二电子设备上显示第一图层对应的多媒体信息,并显示HWC合成的第二图层对应的多媒体信息。由于在待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,可以通过GPU和HWC并行对待合成图层进行合成,从而可以提高图层合成的效率,进而提高多媒体信息投屏的效率。
附图说明
图1为本申请实施例提供的一种投屏控制方法的应用场景架构示意图;
图2为本申请实施例提供的一种投屏控制方法的另一应用场景架构示意图;
图3示出了一种电子设备的结构示意图;
图4为电子设备进行多媒体信息显示的示意图;
图5为现有技术中在投屏场景下电子设备进行多媒体信息显示的示意图;
图6为本申请实施例提供的一种投屏控制方法的信令图;
图7为本申请实施例提供的在投屏场景下电子设备进行多媒体信息显示的示意图;
图8为本申请实施例提供的一种投屏控制装置的结构示意图;
图9为本申请实施例提供的一种投屏控制装置的结构示意图;
图10为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
本申请说明书和权利要求书及附图说明中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍:
本申请实施例所涉及的投屏是指第一电子设备上的多媒体信息(如音频、视频、图片等)传输至第二电子设备上呈现,实现多个电子设备之间同步显示相同多媒体信息的效果。本申请所涉及的投屏可包括有线投屏和无线投屏,其中有线投屏可以通过高清多媒体接口(high definition multimedia interface,HDMI)建立多个电子设备之间的连接,并通过HDMI传输线传输多媒体信息。无线投屏可以通过Miracast协议建立多个电子设备之间的连接,并通过局域网(local area network,LAN)或广域网(wide area network,WAN)传输多媒体信息。
图1为本申请实施例提供的一种投屏控制方法的应用场景架构示意图,如图1所示,本申请下述各实施例提供的投屏控制方法,可应用于电子设备组200中,该电子设备组200内的各个电子设备100之间可以通过LAN或WAN互相通信。
例如,可将用户的手机、平板电脑、台式电脑、智能手表以及笔记本电脑作为电子设备组200,当用户使用同一个账号登录该手机、平板电脑、台式电脑、智能手表以及笔记本电脑时,该手机、平板电脑、台式电脑以及笔记本电脑之间可通过广域网互相通信。
又例如,可将用户的手机、平板电脑、台式电脑、智能手表以及笔记本电脑接入同一个路由器上。此时,上述手机、平板电脑、台式电脑、智能手表以及笔记本电脑可形成一个局域网,局域网内的各个设备之间可以路由器实现互相通信。
又例如,电子设备100之间也可以通过无线通信方式(例如,蓝牙,无线保真(wireless fidelity,WIFI)或ZigBee网络等)组成一个对等网络(也可称为P2P网络)。例如,用户可将手机、平板电脑、智能手表以及笔记本电脑均加入名称为“1234”的Wi-Fi网络。该Wi-Fi网络内的各个电子设备100形成了一个P2P网络,该P2P网络内的所有设备均为电子设备组200中的成员。
当然,电子设备组200内的各电子设备100之间还可以通过蜂窝网络互联,或者,各电子设备100之间还可以通过转接设备(例如,USB数据线或Dock设备)互联,从而实现电子设备组200内各个电子设备100之间的通信功能,本发明实施例对此不作任何限制。
在本申请实施例中,电子设备组200中一个或多个电子设备100可以作为源设备,同时,电子设备组200中一个或多个电子设备100可以作为目的设备。源设备可将其显示界面中的显示内容投射至目的设备中显示。
图2为本申请实施例提供的一种投屏控制方法的另一应用场景架构示意图,如图2所示,示例性的,以电子设备101为源设备举例,电子设备102和电子设备103均可作为电子设备101的目的设备。电子设备101可将其显示界面中的显示内容同时投射至电子设备102和电子设备103中显示。也就是说,一个源设备可以同时向多个目的设备进行投屏显示。
在一些实施例中,上述电子设备组200中各个电子设备的具体结构可以是相同的,也可以是不同的。
例如,上述各个电子设备具体可以是手机、平板电脑、智能电视、可穿戴电子设备、车机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、手持计算机、上网本、个人数字助理(personal digital assistant,PDA)、虚拟现实设备等,本申请实施例对此不做任何限制。
示例性的,图3示出了一种电子设备的结构示意图。如图3所示,电子设备101可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serialbus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本实施例示意的结构并不构成对电子设备101的具体限定。在另一些实施例中,电子设备101可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。例如,在本申请中,处理器110可以获取当前状态信息。
其中,控制器可以是电子设备101的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备101的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备101的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备101的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备101充电,也可以用于电子设备101与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端设备,例如AR设备等。
可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备101的结构限定。在本申请另一些实施例中,电子设备101也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备101的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备101的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备101中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备101上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备101上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理单元的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备101的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备101可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备101通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oled,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备101可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备101的显示屏194上可以显示一系列图形用户界面(graphical userinterface,GUI),这些GUI都是该电子设备101的主屏幕。一般来说,电子设备101的显示屏194的尺寸是固定的,只能在该电子设备101的显示屏194中显示有限的控件。控件是一种GUI元素,它是一种软件组件,包含在应用程序中,控制着该应用程序处理的所有数据以及关于这些数据的交互操作,用户可以通过直接操作(direct manipulation)来与控件交互,从而对应用程序的有关信息进行读取或者编辑。一般而言,控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。例如,在本申请实施例中,显示屏194可以显示虚拟按键(一键编排、开始编排、停止编排)。
电子设备101可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备101可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备101在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备101可以支持一种或多种视频编解码器。这样,电子设备101可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备101的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备101的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备101的各种功能应用以及数据处理。例如,在本实施例中,处理器110可以通过执行存储在内部存储器121中的指令,进行场景编排。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备101使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备101的各种功能应用以及数据处理。
电子设备101可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备101可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备101接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备101可以设置至少一个麦克风170C。在另一些实施例中,电子设备101可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备101还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动终端设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备101根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备101根据压力传感器180A检测所述触摸操作强度。电子设备101也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备101的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备101围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备101抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备101的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,电子设备101通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备101可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备101是翻盖机时,电子设备101可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测电子设备101在各个方向上(一般为三轴)加速度的大小。当电子设备101静止时可检测出重力的大小及方向。还可以用于识别终端设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备101可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备101可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备101通过发光二极管向外发射红外光。电子设备101使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备101附近有物体。当检测到不充分的反射光时,电子设备101可以确定电子设备101附近没有物体。电子设备101可以利用接近光传感器180G检测用户手持电子设备101贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。电子设备101可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备101是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备101可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,电子设备101利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备101执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备101对电池142加热,以避免低温导致电子设备101异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备101对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备101的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备101可以接收按键输入,产生与电子设备101的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备101的接触和分离。电子设备101可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备101通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备101采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备101中,不能和电子设备101分离。
另外,在上述部件之上,运行有操作系统。例如苹果公司所开发的iOS操作系统,谷歌公司所开发的Android开源操作系统,微软公司所开发的Windows操作系统等。在该操作系统上可以安装运行应用程序。
下面,以电子设备上运行Android开源操作系统为例说明投屏控制方法。
图4为电子设备进行多媒体信息显示的示意图,如图4所示,以多媒体信息为图片为例,电子设备在进行图片显示时,电子设备中的应用程序会先申请原生缓冲器的句柄(Surface),以确定出要显示的图形界面,如大小、位置和显示内容等,并将Surface数据发送到Surfaceflinger,其中,在Surfaceflinger中,Surface数据可以被理解为图层(layer)。Surfaceflinger再将待合成的上述图层(layer)数据中的关键信息发送给硬件混合渲染器(Hardware Composer,HWC),HWC根据GPU的性能和/或GPU是否处于空闲状态等信息,标记关键信息中的哪些待合成的图层(layer)数据需要使用GPU合成,哪些待合成的图层(layer)数据需要自己合成。在标记完成之后,Surfaceflinger将需要GPU合成的待合成的图层(layer)数据的完整信息发送给GPU,等待GPU完成合成之后,将合成之后得到的内容与需要HWC合成的待合成的图层(layer)数据的完整信息,一起发送给HWC,从而完成剩余图层(layer)数据的合成。HWC将所有合成之后的图层(layer)数据输出到帧缓存(FrameBuffer)中,从而输出到液晶显示器(liquid crystal display,LCD)进行显示,或者,HWC将所有合成之后的图层(layer)数据直接输出到LCD进行显示。
下面,以一个投屏发起设备,也即源设备,一个被投屏设备,也即目的设备为例,说明现有技术中进行多媒体信息显示的过程。当存在多个被投屏设备时,与只有一个被投屏设备时多媒体信息的显示过程和原理类似,此处不再赘述。图5为现有技术中在投屏场景下电子设备进行多媒体信息显示的示意图,如图5所示,假设电子设备A为源设备,电子设备B为目的设备,也就是说,电子设备A可将其显示界面中的显示内容同时投射至电子设备B中进行显示。其中,电子设备A除了要完成自身的界面显示之外,还需要合成在电子设备B上进行显示的显示内容。
具体的,在开始投屏时,电子设备A中的Surfaceflinger会创建一个虚拟屏,该虚拟屏用于通过网络发送屏幕信息,其中,屏幕信息可以理解为电子设备A的显示屏中当前需要显示的多媒体信息。Surfaceflinger在获取到在电子设备A进行显示的多媒体信息对应的待合成的图层后,将该待合成的图层发送给电子设备A中的HWC,另外,还需要将在虚拟屏进行显示的多媒体信息对应的待合成的图层发送给电子设备A中的GPU。可以理解的是,在电子设备A进行显示的多媒体信息对应的待合成的图层与在虚拟屏进行显示的多媒体信息对应的待合成的图层是相同的。
电子设备A中的GPU完成图层的合成之后,将输出RGBA8888格式的待编码数据,并将该待编码数据发送给编码器,由编码器进行编码压缩之后,再根据实时传输协议(real-time transport protocol,RTP)或RTP控制协议(RTP control protocol,RTCP),对编码压缩后的数据进行打包处理,然后通过传输控制协议(transmission control protocol,TCP)或用户数据报协议(user datagram protocol,UDP),将打包处理后的数据发送给电子设备B。例如可以通过WIFI网络将打包处理后的数据发送给电子设备B。
电子设备B在接收到电子设备A发送的打包处理后的数据之后,会根据RTP或RTCP对接收到的数据进行解包处理,并将解包后得到的数据发送到解码器,以进行解码处理,从而可以得到解码后的内容,也即得到多媒体信息,电子设备B将得到的多媒体信息发送到显示系统,以通过LCD进行多媒体信息的显示。
电子设备A中的GPU完成图层的合成之后,HWC再进行本地的图层合成,并将合成之后的图层数据发送到LCD,以供电子设备A显示合成之后的图层数据对应的多媒体信息。
在上述投屏场景中,一方面,HWC进行图层合成的过程与GPU进行图层合成的过程是串行执行的,也就是说,HWC要等待GPU完成图层的合成之后,再进行图层合成,因此,该执行过程效率较低,从而导致多媒体信息的投屏显示过程效率较低。另一方面,GPU在完成图层的合成之后,会固定输出RGBA8888格式的数据给编码器进行编码。由于RGBA8888格式中包括红色通道、绿色通道、蓝色通道和alpha(透明度)通道,每个通道占8位。这种格式的数据占用空间内存较大,例如:1024*1024的图片,占用空间为1024*1024*4,也即占用4M,2048*2048的图片,占用空间为2048*2048*32/8/1000/1000,也即16M,OpenGL ES生成纹理在生成纹理时占用空间大小会自动扩展成2的幂次方。例如:85*121的图片,生成纹理后,占用内存为64k。其中,整个场景背景图片或者大量渐变色的图片,通常使用RGBA8888格式。由上述可知,RGBA8888格式的图片通常数据量较大,且占用较大的内存空间,造成数据的传输效率不高,也会导致多媒体信息的投屏显示过程效率较低。
本申请中考虑到上述问题,提出了一种投屏控制方法,该方法应用于第一电子设备,该第一电子设备包括GPU和HWC,在第一电子设备处于投屏状态时,确定待投屏显示的多媒体信息对应的待合成图层中是否包含视频安全图层,若不包含视频安全图层,则可以将待合成图层分别发送给GPU和HWC,然后通过GPU和HWC并行对待合成图层进行合成,并将GPU合成的第一图层发送给第二电子设备,以在第二电子设备上显示第一图层对应的多媒体信息,并显示HWC合成的第二图层对应的多媒体信息。由于在待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,可以通过GPU和HWC并行对待合成图层进行合成,从而可以提高图层合成的效率,进而提高多媒体信息投屏的效率。另外,可以将GPU合成的第一图层的数据格式设置为第一数据格式,例如设置为YUV420sp,由于第一数据格式的数据的数据量小于RGBA8888的数据的数据量,因此,可以提高数据的传输效率,从而进一步提高多媒体信息的投屏效率。
下面,通过详细的实施例对本申请提供的投屏控制方法的技术方案进行详细地描述。可以理解的是,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图6为本申请实施例提供的一种投屏控制方法的信令图,需要说明的是,虽然在本申请的实施例中,以特定顺序呈现了方法的各个步骤,但是可以在不同的实施例中改变步骤的顺序,并且在一些实施例中,可以同时执行在本说明书中按顺序示出的一个或多个步骤。如图6所示,该方法包括:
步骤601:在第一电子设备处于投屏状态时,第一电子设备确定待投屏显示的多媒体信息对应的待合成图层中是否包含视频安全图层。
在本步骤中,多媒体信息包括图片、视频或音频等。多媒体信息对应的待合成图层用于表示要显示的图形界面,包括界面的大小、位置以及在界面中显示的内容等。其中,待合成图层的数量可以为一个,也可以为多个。
第一电子设备在进行多媒体信息的显示时,需要进行显示状态的识别,也即识别当前第一电子设备是处于投屏状态,还是处于本端显示的状态。在一种可能的实现方式中,可以通过判断是否调用了创建虚拟屏方法和创建编码器方法,若确定调用了创建虚拟屏方法和创建编码器方法,则可以确定出第一电子设备处于投屏状态,否则,可以确定出第一电子设备处于本端显示的状态。
具体的,若第一电子设备的系统进入投屏状态时,第一电子设备默认会创建虚拟屏和编码器,其中,虚拟屏用于准备需要发送的数据,该需要发送的数据可以理解为多媒体信息的数据,其用于第二电子设备显示多媒体信息。编码器用于压缩数据。本领域技术人员可以理解,第一电子设备在创建虚拟屏时,通常会调用创建虚拟屏方法(create virtualdisplay),在创建编码器时,通常会调用创建编码器方法(MediaCodec.create)。当第一电子设备在确定出上述两个方法被调用时,将会确定出其进入了投屏状态,此时会初始化投屏的状态位,如设置投屏CastScreenTag为True。
若第一电子设备在确定出上述两个方法未被调用时,则可以确定出第一电子设备处于本端显示的状态,也即只在本地显示多媒体信息即可。
在确定出第一电子设备处于投屏状态后,第一电子设备会初始化分布式图层合成模块,也即创建分布式图层合成模块。第一电子设备将通过分布式图层合成模块将需要投屏显示的多媒体信息对应的待合成图层提交到surfacefligner中,对待合成图层的属性进行分析,以确定该待合成图层中是否包含视频安全图层。其中,视频安全图层对应的缓冲区是由安全内存分配器分配的内存,其不允许截屏显示。
具体的,若待合成图层的属性中,存在某个图层的eSecure属性为True,则可以确定该图层为视频安全图层。若所有待合成图层的属性中,均不存在eSecure属性为True的图层,则可以确定待合成图层中不包含视频安全图层。
步骤602:若不包含视频安全图层,第一电子设备将待合成图层分别发送给GPU和HWC。
在本步骤中,若第一电子设备确定出待合成图层中不包含视频安全图层,会将待合成图层同时发送给GPU和HWC,以对待合成图层进行合成。
本领域技术人员可以理解,为了保证信息的安全性,若待投屏显示的多媒体信息对应的待合成图层中包括视频安全图层,则该视频安全图层对应的内容将只能在本地进行显示,并不能发送到被投屏设备进行投屏显示。因此,第一电子设备在进行投屏时,需要先判断待合成图层中是否包含视频安全图层,并在判断出不包含视频安全图层时,再将待合成图层同时发送给GPU和HWC。
步骤603:第一电子设备通过GPU和HWC并行对待合成图层进行合成。
图7为本申请实施例提供的在投屏场景下电子设备进行多媒体信息显示的示意图,如图7所示,surfacefligner将待合成图层分别发送给GPU和HWC之后,第一电子设备将通过GPU和HWC并行对待合成图层进行合成,也可以理解为,GPU和HWC将同时对接收到的待合成图层进行合成。由于GPU和HWC可以并行的对待合成图层进行合成,从而可以提高图层合成的效率。
示例性的,为了减小数据的传输量,在本申请实施例中,可以将GPU合成的第一图层的数据格式设置为第一数据格式,其中,第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
在本实施例中,由于第一数据格式的数据的数据量小于RGBA8888的数据的数据量,因此,可以减小数据的传输量,提高数据的传输效率,而且可以优化存储效率,降低显示带宽。
示例性的,该第一数据格式可以为YUV420sp。
具体的,当YUV420采样格式叠加上planar储存格式后,可以产生出YUV420P格式和YUV420sp格式。其中,YUV420P是Y之后U之后V来储存,相当于RGB中的chw了,又可以细分为I420(又叫YU12)和YV12格式;而YUV420SP是Y之后UV交替...,又可以细分为NV12和NV21格式。这四种细分格式如下所示:
(1)NV12,FourCC为0x3231564E,1个像素12bit,8-bit Y plane,Y通道平面结束后是交叉进行的U/V通道平面,U/V使用2x2的采样率(各是Y的四分之一)。
(2)NV21,FourCC为0x3132564E,1个像素12bit,和NV12一样——除了U/V交叉的时候是先V再U,也就是U/V和V/U的区别;其中,目前Android系统中摄像头图像的标准即为此格式;
(3)I420(也叫YU12),FourCC为0x30323449,1个像素12bit,8bit Y通道平面结束后,是U通道平面,最后是V通道平面;
(4)YV12,FourCC为0x32315659,1个像素12bit,8bit Y通道平面结束后,是V通道平面,最后是U通道平面。
在本实施例中,由于YUV420sp的数据的数据量小于RGBA8888的数据的数据量,因此,可以减小数据的传输量,从而提高数据的传输效率。
步骤604:第一电子设备将GPU合成的第一图层发送给第二电子设备。
GPU对待合成图层进行合成,得到第一图层之后,可以将该第一图层发送给第二电子设备,以供第二电子设备显示对应的多媒体信息。
示例性的,第一电子设备在发送第一图层时,可以将第一图层进行编码,得到编码后的图层,并根据RTP或RTCP将编码后的图层进行打包,然后将打包处理后的图层发送给第二电子设备。
具体的,继续参照图7所示,GPU在合成第一图层后,会将该第一图层发送到编码器,以对第一图层进行编码及压缩,从而得到编码后的图层。之后,第一电子设备会对得到的编码后的图层进行RTP或RTCP打包,然后通过TCP或UDP,将打包处理后的图层通过WIFI网络发送给第二电子设备。
在本实施例中,由于第一电子设备会将第一图层进行编码压缩,并对编码后的图层进行RTP或RTCP打包处理,从而将打包处理后的图层发送给第二电子设备,由此不仅可以提高图层数据的安全性,而且可以减小数据的传输量,提高数据传输的效率。
步骤605:第一电子设备显示HWC合成的第二图层对应的多媒体信息。
在本步骤中,继续参照图7所示,第一电子设备在通过HWC对待合成图层进行合成,得到第二图层之后,会将该第二图层发送到LCD,以在LCD显示该第二图层对应的多媒体信息。其中,第二图层对应的多媒体信息,也即为需要投屏显示的多媒体信息。
步骤606:第二电子设备对第一图层进行解析,得到多媒体信息。
在本步骤中,第二电子设备在接收到第一电子设备发送的第一图层之后,可以对该第一图层进行解析,从而得到需要显示的多媒体信息。示例性的,可以根据RTP或RTCP,对第一图层进行解包,并将解包处理后的图层进行解码,然后将解码后的图层的格式由第一数据格式转换为RGBA8888格式,得到多媒体信息。
具体的,若第一电子设备采用RTP对编码后的图层进行打包处理,相应的,第二电子设备将采用RTP对接收到的第一图层进行解包,若第一电子设备采用RTCP对编码后的图层进行打包处理,相应的,第二电子设备将采用RTCP对接收到的第一图层进行解包。之后,将解包处理后的图层发送到解码器,以对解包处理后的图层进行解码。
另外,目前,在通过LCD显示多媒体信息时,通常都要求多媒体信息的格式为RGBA8888格式,由于第一电子设备的GPU合成的第一图层的格式为第一数据格式,因此,第二电子设备还需要将解码后的图层的格式由第一数据格式转换为RGBA8888格式,从而得到多媒体信息。
在本实施例中,第二电子设备将解码后的图层的格式由第一数据格式转换为RGBA8888格式,从而可以保证多媒体信息的正确显示。
可以理解的是,可以先执行步骤604,再执行步骤605,也可以先执行步骤605,再执行步骤604,当然,还可以同时执行步骤604和步骤605。
步骤607:第二电子设备显示多媒体信息。
在本步骤中,第二电子设备可以将得到的多媒体信息发送到显示系统中,从而通过LCD进行显示。其中,第二电子设备上显示的多媒体信息和第一电子设备上显示的多媒体信息相同。
本申请实施例提供的投屏控制方法,该方法应用于第一电子设备,该第一电子设备包括GPU和HWC,在第一电子设备处于投屏状态时,确定待投屏显示的多媒体信息对应的待合成图层中是否包含视频安全图层,若不包含视频安全图层,则可以将待合成图层分别发送给GPU和HWC,然后通过GPU和HWC并行对待合成图层进行合成,并将GPU合成的第一图层发送给第二电子设备,以在第二电子设备上显示第一图层对应的多媒体信息,并显示HWC合成的第二图层对应的多媒体信息。由于在待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,可以通过GPU和HWC并行对待合成图层进行合成,从而可以提高图层合成的效率,进而提高多媒体信息投屏的效率。另外,可以将GPU合成的第一图层的数据格式设置为第一数据格式,例如设置为YUV420sp,由于第一数据格式的数据的数据量小于RGBA8888的数据的数据量,因此,可以提高数据的传输效率,从而进一步提高多媒体信息的投屏效率。
图8为本申请实施例提供的一种投屏控制装置80的结构示意图,该装置包括图形处理器GPU和硬件混合渲染器HWC,请参见图8所示,该投屏控制装置80可以包括:
处理单元801,用于在所述投屏控制装置处于投屏状态时,确定待投屏控制的多媒体信息对应的待合成图层中是否包含视频安全图层;
发送单元802,用于在不包含所述视频安全图层时,将所述待合成图层分别发送给所述GPU和所述HWC;
所述处理单元801,还用于通过所述GPU和所述HWC并行对所述待合成图层进行合成;
所述发送单元802,还用于将所述GPU合成的第一图层发送给第二电子设备,以在所述第二电子设备上显示所述第一图层对应的所述多媒体信息;
显示单元803,用于显示所述HWC合成的第二图层对应的所述多媒体信息。
可选地,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
可选地,所述第一数据格式为YUV420sp。
可选地,所述发送单元802,具体用于:
将所述第一图层进行编码,得到编码后的图层;
根据实时传输协议RTP或RTP控制协议RTCP,将所述编码后的图层进行打包;
将打包处理后的图层发送给所述第二电子设备。
可选地,所述发送单元802,具体用于:
通过传输控制协议TCP或用户数据报协议UDP,将所述打包处理后的图层发送给所述第二电子设备。
可选地,所述处理单元801,具体用于:
确定是否调用了创建虚拟屏方法和创建编码器方法;
若确定调用了所述创建虚拟屏方法和所述创建编码器方法,则确定所述第一电子设备处于投屏状态。
本申请实施例所示的投屏控制装置80,可以执行上述任一项实施例所示的投屏控制方法的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
需要说明的是,应理解以上装置的各个单元的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些单元可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分单元通过软件通过处理元件调用的形式实现,部分单元通过硬件的形式实现。例如,发送单元可以为单独设立的处理元件,也可以集成在该反馈资源的确定装置的某一个芯片中实现,此外,也可以以程序的形式存储于反馈资源的确定装置的存储器中,由该反馈资源的确定装置的某一个处理元件调用并执行该发送单元的功能。其它单元的实现与之类似。此外这些单元全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个单元可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。此外,以上发送单元是一种控制发送的单元,可以通过该反馈资源的确定装置的发送装置,例如天线和射频装置发送信息。
以上这些单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digital singnal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)等。再如,当以上某个单元通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processingunit,CPU)或其它可以调用程序的处理器。再如,这些单元可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
图9为本申请实施例提供的一种投屏控制装置90的结构示意图,请参见图9所示,该投屏控制装置90可以包括:
接收单元901,用于接收第一电子设备发送的第一图层,所述第一图层为所述第一电子设备处于投屏状态时,在确定出待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,与第二图层并行合成得到的,所述第一图层为通过所述第一电子设备中的图形处理器GPU合成的,所述第二图层为通过所述第一电子设备中的硬件混合渲染器HWC合成的;
处理单元902,用于对所述第一图层进行解析,得到所述多媒体信息;
显示单元903,用于显示所述多媒体信息。
可选地,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
可选地,所述第一数据格式为YUV420sp。
可选地,所述处理单元902,具体用于:根据实时传输协议RTP或RTP控制协议RTCP,对所述第一图层进行解包;将解包处理后的图层进行解码;将解码后的图层的格式由所述第一数据格式转换为所述RGBA8888格式,得到多媒体信息。
可选地,所述接收单元901,具体用于:通过传输控制协议TCP或用户数据报协议UDP,接收所述第一图层数据。
本申请实施例所示的投屏控制装置,可以执行上述任一项实施例所示的资源的确定方法的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
需要说明的是,应理解以上装置的各个单元的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些单元可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分单元通过软件通过处理元件调用的形式实现,部分单元通过硬件的形式实现。例如,发送单元可以为单独设立的处理元件,也可以集成在该反馈资源的确定装置的某一个芯片中实现,此外,也可以以程序的形式存储于反馈资源的确定装置的存储器中,由该反馈资源的确定装置的某一个处理元件调用并执行该发送单元的功能。其它单元的实现与之类似。此外这些单元全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个单元可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。此外,以上发送单元是一种控制发送的单元,可以通过该反馈资源的确定装置的发送装置,例如天线和射频装置发送信息。
以上这些单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digital singnal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)等。再如,当以上某个单元通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processingunit,CPU)或其它可以调用程序的处理器。再如,这些单元可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。.
图10为本申请实施例提供的一种电子设备的结构示意图。如图10所示,该电子设备包括:处理器1001、存储器1002、收发装置1003。收发装置1003可以与天线连接。在下行方向上,收发装置1003通过天线接收基站发送的信息,并将信息发送给处理器1001进行处理。在上行方向上,处理器1001对终端的数据进行处理,并通过收发装置1003发送给基站。
该存储器1002用于存储实现以上方法实施例,或者图8或图9所示实施例各个单元的程序,处理器1001调用该程序,执行以上方法实施例的操作,以实现图8或图9所示的各个单元。
或者,以上各个单元的部分或全部也可以通过集成电路的形式内嵌于该电子设备的某一个芯片上来实现。且它们可以单独实现,也可以集成在一起。即以上这些单元可以被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digitalsingnal processor,DSP),或,一个或者多个现场可编程门阵列(field programmablegate array,FPGA)等。
本申请实施例还提供了一种芯片,所述芯片包括可编程逻辑电路和输入接口,所述输入接口用于获取待处理的数据,所述逻辑电路用于对待处理的数据执行上述任一实施例所示的投屏控制方法,其实现原理以及有益效果与投屏控制方法的实现原理及有益效果类似,此处不再进行赘述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在电子设备上运行时,使得所述电子设备执行上述任一实施例所示的投屏控制方法,其实现原理以及有益效果与投屏控制方法的实现原理及有益效果类似,此处不再进行赘述。
本申请实施例还提供了一种计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行上述任一实施例所示的投屏控制方法,其实现原理以及有益效果与投屏控制方法的实现原理及有益效果类似,此处不再进行赘述。
上述各个实施例中处理器可以是通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read-only memory,ROM)、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的指令,结合其硬件完成上述方法的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
Claims (25)
1.一种投屏控制方法,其特征在于,应用于第一电子设备,所述第一电子设备包括图形处理器GPU和硬件混合渲染器HWC,所述方法包括:
在所述第一电子设备处于投屏状态时,确定待投屏显示的多媒体信息对应的待合成图层中是否包含视频安全图层;
若不包含所述视频安全图层,则将所述待合成图层分别发送给所述GPU和所述HWC;
通过所述GPU和所述HWC并行对所述待合成图层进行合成,并将所述GPU合成的第一图层发送给第二电子设备,以在所述第二电子设备上显示所述第一图层对应的所述多媒体信息;
显示所述HWC合成的第二图层对应的所述多媒体信息。
2.根据权利要求1所述的方法,其特征在于,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
3.根据权利要求2所述的方法,其特征在于,所述第一数据格式为YUV420sp。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述将所述GPU合成的第一图层发送给第二电子设备,包括:
将所述第一图层进行编码,得到编码后的图层;
根据实时传输协议RTP或RTP控制协议RTCP,将所述编码后的图层进行打包;
将打包处理后的图层发送给所述第二电子设备。
5.根据权利要求4所述的方法,其特征在于,所述将打包处理后的图层发送给所述第二电子设备,包括:
通过传输控制协议TCP或用户数据报协议UDP,将所述打包处理后的图层发送给所述第二电子设备。
6.根据权利要求1-5任一项所述的方法,其特征在于,确定所述第一电子设备处于投屏状态,包括:
确定是否调用了创建虚拟屏方法和创建编码器方法;
若确定调用了所述创建虚拟屏方法和所述创建编码器方法,则确定所述第一电子设备处于投屏状态。
7.一种投屏控制方法,其特征在于,应用于第二电子设备,所述方法包括:
接收第一电子设备发送的第一图层,所述第一图层为所述第一电子设备处于投屏状态时,在确定出待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,与第二图层并行合成得到的,所述第一图层为通过所述第一电子设备中的图形处理器GPU合成的,所述第二图层为通过所述第一电子设备中的硬件混合渲染器HWC合成的;
对所述第一图层进行解析,得到所述多媒体信息;
显示所述多媒体信息。
8.根据权利要求7所述的方法,其特征在于,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
9.根据权利要求8所述的方法,其特征在于,所述第一数据格式为YUV420sp。
10.根据权利要求8或9所述的方法,其特征在于,所述对所述第一图层进行解析,得到所述多媒体信息,包括:
根据实时传输协议RTP或RTP控制协议RTCP,对所述第一图层进行解包;
将解包处理后的图层进行解码;
将解码后的图层的格式由所述第一数据格式转换为所述RGBA8888格式,得到多媒体信息。
11.根据权利要求7-10任一项所述的方法,其特征在于,所述接收第一电子设备发送的第一图层数据,包括:
通过传输控制协议TCP或用户数据报协议UDP,接收所述第一图层数据。
12.一种投屏控制装置,其特征在于,所述装置包括图形处理器GPU和硬件混合渲染器HWC,所述装置包括:
处理单元,用于在所述投屏显示装置处于投屏状态时,确定待投屏显示的多媒体信息对应的待合成图层中是否包含视频安全图层;
发送单元,用于在不包含所述视频安全图层时,将所述待合成图层分别发送给所述GPU和所述HWC;
所述处理单元,还用于通过所述GPU和所述HWC并行对所述待合成图层进行合成;
所述发送单元,还用于将所述GPU合成的第一图层发送给第二电子设备,以在所述第二电子设备上显示所述第一图层对应的所述多媒体信息;
显示单元,用于显示所述HWC合成的第二图层对应的所述多媒体信息。
13.根据权利要求12所述的装置,其特征在于,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
14.根据权利要求13所述的装置,其特征在于,所述第一数据格式为YUV420sp。
15.根据权利要求12-14任一项所述的装置,其特征在于,所述发送单元,具体用于:
将所述第一图层进行编码,得到编码后的图层;
根据实时传输协议RTP或RTP控制协议RTCP,将所述编码后的图层进行打包;
将打包处理后的图层发送给所述第二电子设备。
16.根据权利要求15所述的装置,其特征在于,所述发送单元,具体用于:
通过传输控制协议TCP或用户数据报协议UDP,将所述打包处理后的图层发送给所述第二电子设备。
17.根据权利要求12-16任一项所述的装置,其特征在于,所述处理单元,具体用于:
确定是否调用了创建虚拟屏方法和创建编码器方法;
若确定调用了所述创建虚拟屏方法和所述创建编码器方法,则确定所述投屏显示装置处于投屏状态。
18.一种投屏控制装置,其特征在于,包括:
接收单元,用于接收第一电子设备发送的第一图层,所述第一图层为所述第一电子设备处于投屏状态时,在确定出待投屏显示的多媒体信息对应的待合成图层中不包含视频安全图层时,与第二图层并行合成得到的,所述第一图层为通过所述第一电子设备中的图形处理器GPU合成的,所述第二图层为通过所述第一电子设备中的硬件混合渲染器HWC合成的;
处理单元,用于对所述第一图层进行解析,得到所述多媒体信息;
显示单元,用于显示所述多媒体信息。
19.根据权利要求18所述的装置,其特征在于,所述第一图层的格式为第一数据格式,所述第一数据格式的数据的数据量小于RGBA8888的数据的数据量。
20.根据权利要求19所述的装置,其特征在于,所述第一数据格式为YUV420sp。
21.根据权利要求19或20所述的装置,其特征在于,所述处理单元,具体用于:
根据实时传输协议RTP或RTP控制协议RTCP,对所述第一图层进行解包;
将解包处理后的图层进行解码;
将解码后的图层的格式由所述第一数据格式转换为所述RGBA8888格式,得到多媒体信息。
22.根据权利要求18-21任一项所述的装置,其特征在于,所述接收单元,具体用于:
通过传输控制协议TCP或用户数据报协议UDP,接收所述第一图层数据。
23.一种投屏控制装置,其特征在于,所述装置包括显示器、处理器和存储器,所述存储器中存储有计算机程序,所述处理器执行所述存储器中存储的计算机程序,以使所述装置执行如权利要求1至11任一项所述的方法。
24.一种通信装置,其特征在于,包括:处理器和接口电路;
所述接口电路,用于接收代码指令并传输至所述处理器;
所述处理器,用于运行所述代码指令以执行如权利要求1至11中任一项所述的方法。
25.一种可读存储介质,用于存储有指令,当所述指令被执行时,使如权利要求1至11中任一项所述的方法被实现。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011027392.2A CN114327312B (zh) | 2020-09-25 | 2020-09-25 | 投屏控制方法和装置 |
PCT/CN2021/114438 WO2022062809A1 (zh) | 2020-09-25 | 2021-08-25 | 投屏控制方法和装置 |
EP21871182.8A EP4209889A4 (en) | 2020-09-25 | 2021-08-25 | METHOD AND DEVICE FOR SCREEN PROJECTION CONTROL |
US18/188,876 US20230230196A1 (en) | 2020-09-25 | 2023-03-23 | Casting Control Method and Apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011027392.2A CN114327312B (zh) | 2020-09-25 | 2020-09-25 | 投屏控制方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114327312A CN114327312A (zh) | 2022-04-12 |
CN114327312B true CN114327312B (zh) | 2023-10-20 |
Family
ID=80846213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011027392.2A Active CN114327312B (zh) | 2020-09-25 | 2020-09-25 | 投屏控制方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230230196A1 (zh) |
EP (1) | EP4209889A4 (zh) |
CN (1) | CN114327312B (zh) |
WO (1) | WO2022062809A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115052186B (zh) * | 2022-07-12 | 2023-09-15 | 北京字跳网络技术有限公司 | 投屏方法及相关设备 |
CN116089057B (zh) * | 2022-08-26 | 2023-10-20 | 荣耀终端有限公司 | 资源调度方法、设备、存储介质和程序产品 |
CN117714759B (zh) * | 2022-09-06 | 2025-03-14 | 华为技术有限公司 | 一种投屏显示的方法、系统以及电子设备 |
CN116737097B (zh) * | 2022-09-30 | 2024-05-17 | 荣耀终端有限公司 | 一种投屏图像处理方法及电子设备 |
CN119668392A (zh) * | 2023-09-13 | 2025-03-21 | 荣耀终端股份有限公司 | 图层合成方法、终端设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103778082A (zh) * | 2008-05-13 | 2014-05-07 | 苹果公司 | 将用户界面推到远程设备 |
CN108282677A (zh) * | 2018-01-24 | 2018-07-13 | 上海哇嗨网络科技有限公司 | 通过客户端实现内容投屏的方法、投屏装置及系统 |
CN109508162A (zh) * | 2018-10-12 | 2019-03-22 | 福建星网视易信息系统有限公司 | 一种投屏显示方法、系统及存储介质 |
WO2019103215A1 (ko) * | 2017-11-22 | 2019-05-31 | 한국전기연구원 | 레티넥스 내시경 영상 처리 시스템, 방법, 및 상기 방법을 실행시키기 위한 컴퓨터 판독 가능한 프로그램을 기록한 기록 매체 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120272280A1 (en) * | 2011-04-22 | 2012-10-25 | Kabushiki Kaisha Toshiba | Video processor and video processing method |
CN103488449B (zh) * | 2012-06-08 | 2016-06-01 | 旺玖科技股份有限公司 | 可动态设定传输组态的传输系统及其控制方法 |
JP5830496B2 (ja) * | 2013-06-07 | 2015-12-09 | 株式会社ソニー・コンピュータエンタテインメント | ディスプレイコントローラおよび画面転送装置 |
CN103402100B (zh) * | 2013-08-23 | 2017-02-15 | 北京奇艺世纪科技有限公司 | 一种视频处理方法及移动终端 |
US20160188279A1 (en) * | 2014-12-27 | 2016-06-30 | Intel Corporation | Mode-switch protocol and mechanism for hybrid wireless display system with screencasting and native graphics throwing |
KR20160092363A (ko) * | 2015-01-27 | 2016-08-04 | 엘지전자 주식회사 | 이동단말기 및 그 제어방법 |
US10255021B2 (en) * | 2015-05-28 | 2019-04-09 | Qualcomm Incorporated | Low latency screen mirroring |
US11036458B2 (en) * | 2015-10-14 | 2021-06-15 | Google Llc | User interface for screencast applications |
US20180247554A1 (en) * | 2017-02-27 | 2018-08-30 | Speech Kingdom Llc | System and method for treatment of individuals on the autism spectrum by using interactive multimedia |
CN109660842B (zh) * | 2018-11-14 | 2021-06-15 | 华为技术有限公司 | 一种播放多媒体数据的方法及电子设备 |
CN110362186B (zh) * | 2019-07-17 | 2021-02-02 | Oppo广东移动通信有限公司 | 图层处理方法、装置、电子设备及计算机可读介质 |
CN110377263B (zh) * | 2019-07-17 | 2021-08-17 | Oppo广东移动通信有限公司 | 图像合成方法、装置、电子设备及存储介质 |
-
2020
- 2020-09-25 CN CN202011027392.2A patent/CN114327312B/zh active Active
-
2021
- 2021-08-25 WO PCT/CN2021/114438 patent/WO2022062809A1/zh unknown
- 2021-08-25 EP EP21871182.8A patent/EP4209889A4/en active Pending
-
2023
- 2023-03-23 US US18/188,876 patent/US20230230196A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103778082A (zh) * | 2008-05-13 | 2014-05-07 | 苹果公司 | 将用户界面推到远程设备 |
WO2019103215A1 (ko) * | 2017-11-22 | 2019-05-31 | 한국전기연구원 | 레티넥스 내시경 영상 처리 시스템, 방법, 및 상기 방법을 실행시키기 위한 컴퓨터 판독 가능한 프로그램을 기록한 기록 매체 |
CN108282677A (zh) * | 2018-01-24 | 2018-07-13 | 上海哇嗨网络科技有限公司 | 通过客户端实现内容投屏的方法、投屏装置及系统 |
CN109508162A (zh) * | 2018-10-12 | 2019-03-22 | 福建星网视易信息系统有限公司 | 一种投屏显示方法、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022062809A1 (zh) | 2022-03-31 |
EP4209889A1 (en) | 2023-07-12 |
CN114327312A (zh) | 2022-04-12 |
US20230230196A1 (en) | 2023-07-20 |
EP4209889A4 (en) | 2024-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114327312B (zh) | 投屏控制方法和装置 | |
WO2020093988A1 (zh) | 一种图像处理方法及电子设备 | |
CN113448382B (zh) | 多屏幕显示电子设备和电子设备的多屏幕显示方法 | |
CN111371849A (zh) | 数据处理的方法和电子设备 | |
CN113129202B (zh) | 数据传输方法、装置及数据处理系统、存储介质 | |
CN113126948B (zh) | 一种音频播放方法及相关设备 | |
CN113838490A (zh) | 视频合成方法、装置、电子设备及存储介质 | |
CN114880251B (zh) | 存储单元的访问方法、访问装置和终端设备 | |
US20240098354A1 (en) | Connection establishment method and electronic device | |
US20230350629A1 (en) | Double-Channel Screen Mirroring Method and Electronic Device | |
CN113973398A (zh) | 无线网络连接方法、电子设备及芯片系统 | |
CN114915747B (zh) | 视频通话的方法、电子设备及可读存储介质 | |
CN114466238B (zh) | 帧解复用方法、电子设备及存储介质 | |
CN112956240B (zh) | 天线切换方法及装置 | |
CN114205336A (zh) | 跨设备音频播放方法、移动终端、电子设备及存储介质 | |
CN113901485B (zh) | 应用程序加载方法、电子设备及存储介质 | |
CN114827098B (zh) | 合拍的方法、装置、电子设备和可读存储介质 | |
EP4529187A1 (en) | Screen projection display method and system, and electronic device | |
CN110806994B (zh) | 一种信号传输方法及装置 | |
CN113473216A (zh) | 数据传输方法、芯片系统及相关装置 | |
CN116048769A (zh) | 内存回收方法、装置和终端设备 | |
CN115019803B (zh) | 音频处理方法、电子设备以及存储介质 | |
CN117692693B (zh) | 多屏显示方法、设备、程序产品以及存储介质 | |
CN114125805B (zh) | 蓝牙回连方法及终端设备 | |
WO2024067432A1 (zh) | 一种音频传输方法、系统以及相关装置 |
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 |