CN114040238B - 一种显示多个窗口的方法及电子设备 - Google Patents

一种显示多个窗口的方法及电子设备 Download PDF

Info

Publication number
CN114040238B
CN114040238B CN202010707799.3A CN202010707799A CN114040238B CN 114040238 B CN114040238 B CN 114040238B CN 202010707799 A CN202010707799 A CN 202010707799A CN 114040238 B CN114040238 B CN 114040238B
Authority
CN
China
Prior art keywords
window
data
windows
bandwidth
display
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
CN202010707799.3A
Other languages
English (en)
Other versions
CN114040238A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202010707799.3A priority Critical patent/CN114040238B/zh
Priority to CN202310022651.XA priority patent/CN116055786B/zh
Priority to PCT/CN2021/105616 priority patent/WO2022017205A1/zh
Priority to EP21846980.7A priority patent/EP4178213A4/en
Priority to US18/006,301 priority patent/US20230305864A1/en
Publication of CN114040238A publication Critical patent/CN114040238A/zh
Application granted granted Critical
Publication of CN114040238B publication Critical patent/CN114040238B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • 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
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4438Window management, e.g. event handling following interaction with the user interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/485End-user interface for client configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • G09G2340/0435Change or adaptation of the frame rate of the video stream
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00Solving problems of bandwidth in display systems
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/10Use of a protocol of communication by packets in interfaces along the display data pipeline
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本申请提供了一种显示多个窗口的方法及电子设备,该电子设备可以是手机、平板电脑、可穿戴设备等,该方法可以根据不同的场景自动切换不同的窗口显示的方案。具体地,根据显示屏上待显示的多个窗口的刷新率、窗口数量、窗口大小、位置等的至少一项,对多个窗口进行分组,并为分组后的每一组窗口分配用于传输窗口数据的通道Lane,使得每一组窗口的窗口数据可以按照各自所需的刷新率分别刷新、绘制渲染和送显,无需将所有窗口按照最高的刷新率进行送显,该方法可以在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,降低了电子设备的功耗,提高了用户体验。

Description

一种显示多个窗口的方法及电子设备
技术领域
本申请涉及终端领域和电子技术领域,尤其涉及一种显示多个窗口的方法及电子设备。
背景技术
电子设备可以包括视频模式(video mode)的显示屏和命令模式(command mode)的显示屏。其中,命令模式的显示屏内部设置有随机存取存储器(random access memory,RAM),RAM可以缓存电子设备发给显示屏的待显示的屏幕数据,因此,命令模式的显示屏可以利用屏内部的RAM存储的待显示的屏幕数据刷新显示屏显示的内容。视频模式的显示屏内部没有设置RAM,无法存储待显示的屏幕数据,电子设备可以通过移动产业处理器接口(mobile industry processor interface,MIPI)实时给显示屏传送屏幕数据,从而刷新显示屏显示的内容。
目前电子设备可以在显示屏上显示多个窗口,例如电子设备的显示屏分区域显示不同的界面,或者在显示屏的界面上悬浮一个或者多个窗口用于显示不同的界面。不同的窗口显示不同的界面时,可能对应不同的刷新率,示例性的,视频类应用的界面的刷新率可以是60Hz帧率,社交类应用的界面或新闻类应用的界面的刷新率可以是90Hz或120Hz,以保证界面内容滚动时更加流畅。因此,电子设备的多个窗口可能要求不同的刷新率。
对于视频模式(video mode)的显示屏,电子设备必须实时不断传送屏幕数据,如果不同的窗口以不同的刷新率显示,在显示屏显示过程中,电子设备会按照不同的多个窗口中刷新率最高的窗口的刷新率,统一进行刷新。对于低刷新率的窗口,即使窗口显示的内容没有变化,也需要通过MIPI实时的传送同样的屏幕数据,以持续该窗口的内容显示。该过程增加了电子设备的系统功耗和性能负载。
发明内容
本申请提供一种显示多个窗口的方法及电子设备,该方法可以在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,降低了电子设备的功耗,提高了用户体验。
第一方面提供了一种显示多个窗口的方法,应用于包括显示屏的电子设备,该方法包括:该显示屏上显示多个窗口,该多个窗口包括第一窗口和第二窗口,该第一窗口对应的第一刷新率大于该第二窗口对应的第二刷新率;获取待传输的该第一窗口的窗口数据和该第二窗口的窗口数据;根据待传输的该第一窗口的窗口数据,从多个传输通道中确定第一通道集合,以及根据待传输的该第二窗口的窗口数据,从多个传输通道中确定第二通道集合,该第一通道集合和该第二通道集合分别包括不同的传输通道;当该第一通道集合中的传输通道的带宽满足该第一窗口的窗口数据的传输要求,且该第二通道集合中的传输通道的带宽满足该第二窗口的窗口数据的传输要求时,通过该第一通道集合向该显示屏传输该第一窗口的窗口数据,以及通过该第二通道集合向该显示屏传输该第二窗口的窗口数据;该显示屏基于该第一刷新率绘制并显示该第一窗口,以及基于该第二刷新率绘制并显示该第二窗口。
应理解,本申请实施例提供的显示多个窗口的方法可以应用于视频模式(videomode)的显示屏。视频模式(video mode)的显示屏在显示界面的过程中,必须实时不断传送或者接收屏幕数据,以持续该界面的内容显示。
还应理解,本申请实施例提供的显示的多个窗口可以是分屏显示多个窗口,或者以窗口叠加的画中画(picture-in-picture,PIP)的方式显示。
本申请实施例中,以显示屏显示两个窗口(例如第一窗口和第二窗口)为例,进行介绍,其他显示更多个窗口的方法也落入本申请保护范围之内,此处不再赘述。或者,第一窗口还可以代表一类窗口,该一类窗口对应第一刷新率;第二窗口也可以代表另一类窗口,该另一类窗口对应第二刷新率,本申请实施例对此不作限定。
还应理解,这里第一窗口对应第一刷新率,第二窗口对应第二刷新率。换言之,第一窗口以第一刷新率进行窗口数据的刷新、图层合成、绘制渲染和送显,第二窗口以第二刷新率进行窗口数据的刷新、图层合成、绘制渲染和送显。
通过以上方法,介绍了不同的多个窗口可以按照各自所需的刷新率分别刷新、绘制渲染和送显过程。在该过程中,所有窗口可以按照自身对应的刷新率进行窗口数据的刷新、图层合成、绘制渲染和送显过程,无需将所有窗口按照最高的刷新率进行送显,进而降低了系统的功耗,节省了系统性能。此外,在以上介绍的窗口显示过程中,可以实现多个Lane的自动组合、分配以及并发传输过程,无需用户的参与,在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,降低了系统的功耗,提高了用户体验。
结合第一方面,在第一方面的某些实现方式中,当该第一通道集合中的传输通道的带宽小于传输该第一窗口的窗口数据的带宽,和/或该第二通道集合中的传输通道的带宽小于传输该第二窗口的窗口数据的带宽时,该方法还包括:合并该第一窗口的窗口数据和该第二窗口的窗口数据,通过该多个传输通道向该显示屏传输合并后的窗口数据;该显示屏基于该第一刷新率和该合并后的窗口数据,绘制并显示该第一窗口和该第二窗口。
具体地,当确定Lane资源不能满足按组分配以使得不同的窗口组独立传送窗口数据时,可以将多个窗口统一为较高的刷新率,合并多个窗口为整屏画面,以较高的刷新率进行窗口数据的刷新、图层合成、绘制渲染和送显。
结合第一方面和上述实现方式,在第一方面的某些实现方式中,当该第一通道集合中的传输通道的带宽小于传输该第一窗口的窗口数据的带宽,且传输该第一窗口的窗口数据的带宽和该第一通道集合中的传输通道的带宽之间的差值小于或等于第一阈值时,该方法还包括:在预设的调整范围内,缩小该第一窗口的大小,使得该第一通道集合中的传输通道的带宽大于或等于传输该第一窗口的窗口数据的带宽;和/或,当该第二通道集合中的传输通道的带宽小于传输该第二窗口的窗口数据的带宽,且传输该第二窗口的窗口数据的带宽和该第二通道集合中的传输通道的带宽之间的差值小于或等于该第一阈值时,该方法还包括:在预设的调整范围内,缩小该第二窗口的大小,使得该第二通道集合中的传输通道的带宽大于或等于传输该第二窗口的窗口数据的带宽。
一种可能的实现方式中,如果在预设范围内自动调整窗口大小的方式和/或调整Lane的分组方式,都无法满足所有分组窗口传输窗口数据的需求时,即任何一种Lane分配方式,部分窗口的带宽仍然无法满足要求时,此时不进行本申请实施例提供过的Lane资源的分组操作,而按照现有的显示过程,将所有分屏后的第一窗口和第二窗口进行合并成全屏画面后,再按照多组Lane统一进行窗口数据的传输。
通过上述方法,当Lane资源不能满足按组分配以使得不同的窗口组独立传送窗口数据的情况下,系统可以自动切换为将所有分屏后的窗口进行合并成全屏画面后,多组Lane统一传输整屏画面的窗口数据的实现过程,为窗口显示过程提供了多种可能的实现方案,以适应不同场景中的多窗口显示需求,而且该切换过程无需用户的参与,在用户无感知的情况下保证多个窗口的正常显示,提高了用户体验。
另一种可能的实现方式中,系统可以判断待显示的多个窗口的刷新率是否相同。当刷新率相同时,系统可以自动切换为将所有分屏后的窗口进行合并成全屏画面后,多组Lane统一传输整屏画面的窗口数据的实现过程,为窗口显示过程提供了多种可能的实现方案。
结合第一方面和上述实现方式,在第一方面的某些实现方式中,缩小该第一窗口的大小,或者缩小该第二窗口的大小,包括:自动缩小该第一窗口或该第二窗口的大小;或者检测到用户的第一操作,响应于该第一操作,缩小该第一窗口或该第二窗口的大小。
通过以上方法,可以实现动态自动调整分屏显示的窗口的大小,或者根据用户的手动操作调整分屏显示的窗口的大小。进一步地,将该窗口的大小调整限定在预设范围内,以满足窗口数据的传输带宽要求且不会影响用户的视觉体验,进而可以根据本申请实施例提供的方法分组独立传输不同刷新率的窗口数据,系统可以分别按照各个窗口的刷新率进行窗口数据的刷新、图层合成、绘制渲染和送显过程,进而降低了系统的功耗,节省了系统性能。
结合第一方面和上述实现方式,在第一方面的某些实现方式中,第一窗口和第二窗口没有重叠区域;或者第一窗口和第二窗口具有重叠区域。
应理解,这里显示多个窗口可以是既包括分屏显示,分屏显示的第一窗口和第二窗口没有重叠区域;或者,还包括PIP叠加显示的场景,PIP显示的第一窗口和第二窗口具有重叠区域。
结合第一方面和上述实现方式,在第一方面的某些实现方式中,当该第一窗口和该第二窗口具有重叠区域时,该方法还包括:获取该第一窗口和该第二窗口的显示层级的信息;当该第二窗口在该第一窗口的上一层显示时,确定该第一窗口中除去该重叠区域之外的区域所包括的待传输数据;根据该待传输数据,从多个传输通道中确定该第一通道集合;或者当该第一窗口在该第二窗口的上一层显示时,确定该第二窗口中除去该重叠区域之外的区域所包括的待传输数据;根据该待传输数据,从多个传输通道中确定该第二通道集合。
应理解,这里“显示层级”可以理解为用户看见的窗口叠加显示的顺序,示例性的,微信应用的窗口上显示了视频应用的窗口,那么视频应用的窗口就为上一层的显示,微信应用的窗口就为下一层的显示。此外,用户可以通过点击选中操作更换窗口的显示层级,本申请实施例不再赘述。
结合第一方面和上述实现方式,在第一方面的某些实现方式中,第一窗口和第二窗口是同一个应用的不同界面;或者第一窗口和第二窗口是不同应用的不同界面。
应理解,在本申请实施例中,对于同一款应用,不同的显示界面可以对应相同的刷新率,或者对应不同的刷新率。例如,微信应用的任意一个界面都可以对应90Hz的刷新率,视频应用的显示剧集菜单的主界面可以对应30Hz的刷新率,某视频片段的播放界面可以对应60Hz的刷新率。本申请实施例对不同应用的不同界面的刷新率、同一应用的不同界面的刷新率不作限定。
结合第一方面和上述实现方式,在第一方面的某些实现方式中,第一通道集合传输该第一窗口的窗口数据的速率不同于该第二通道集合传输该第二窗口的窗口数据的速率;和/或该第一窗口的窗口数据的压缩方式不同于该第二窗口的窗口数据的压缩方式。
综上所述,当电子设备显示多个窗口时,本申请实施例针对不同的场景,提供了多种不同的窗口显示的方案,系统可以根据当前的场景自动切换不同的窗口显示的方案,以满足不同场景中的多窗口显示需求。
具体地,第一种情况中,当多个窗口对应的刷新率不相同时,按照不同的刷新率对多个窗口进行分组,并对Lane模块包括的多个Lane进行自动组合、分配,使得每一组的Lane可以传输一组窗口的窗口数据,进而实现不同的多个窗口可以按照各自所需的刷新率分别刷新、绘制渲染和送显过程,在该过程中,所有窗口可以按照自身对应的刷新率进行送显,无需将所有窗口按照最高的刷新率进行送显,进而降低了系统的功耗,节省了系统性能。
第二种情况中,如果Lane资源不能满足按组分配以使得不同的窗口组独立传送窗口数据,或者当待显示的多个窗口的刷新率都相同时,可以将所有分屏后的窗口进行合并成全屏画面后,多组Lane统一传输整屏画面的窗口数据的实现过程。以上方案针对不同场景为窗口显示过程提供了多种可能的实现方案,可以实现无需用户的参与,在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,降低了系统的功耗,提高了用户体验。
第二方面提供了一种电子设备,包括:显示屏;一个或多个处理器;一个或多个存储器;安装有多个应用程序的模块;所述存储器存储有一个或多个程序,所述一个或多个程序包括指令,当所述指令被所述电子设备执行时,使得所述电子设备执行以下步骤:显示屏上显示多个窗口,该多个窗口包括第一窗口和第二窗口,该第一窗口对应的第一刷新率大于该第二窗口对应的第二刷新率;获取待传输的该第一窗口的窗口数据和该第二窗口的窗口数据;根据待传输的该第一窗口的窗口数据,从多个传输通道中确定第一通道集合,以及根据待传输的该第二窗口的窗口数据,从多个传输通道中确定第二通道集合,该第一通道集合和该第二通道集合分别包括不同的传输通道;当该第一通道集合中的传输通道的带宽满足该第一窗口的窗口数据的传输要求,且该第二通道集合中的传输通道的带宽满足该第二窗口的窗口数据的传输要求时,通过该第一通道集合向该显示屏传输该第一窗口的窗口数据,以及通过该第二通道集合向该显示屏传输该第二窗口的窗口数据;该显示屏基于该第一刷新率绘制并显示该第一窗口,以及基于该第二刷新率绘制并显示该第二窗口。
结合第二方面,在第二方面的某些实现方式中,当该第一通道集合中的传输通道的带宽小于传输该第一窗口的窗口数据的带宽,和/或该第二通道集合中的传输通道的带宽小于传输该第二窗口的窗口数据的带宽时,所述电子设备还用于执行以下步骤:合并该第一窗口的窗口数据和该第二窗口的窗口数据,通过该多个传输通道向该显示屏传输合并后的窗口数据;该显示屏基于该第一刷新率和该合并后的窗口数据,绘制并显示该第一窗口和该第二窗口。
结合第二方面和上述实现方式,在第二方面的某些实现方式中,当该第一通道集合中的传输通道的带宽小于传输该第一窗口的窗口数据的带宽,且传输该第一窗口的窗口数据的带宽和该第一通道集合中的传输通道的带宽之间的差值小于或等于第一阈值时,所述电子设备还用于执行以下步骤:在预设的调整范围内,缩小该第一窗口的大小,使得该第一通道集合中的传输通道的带宽大于或等于传输该第一窗口的窗口数据的带宽;和/或,当该第二通道集合中的传输通道的带宽小于传输该第二窗口的窗口数据的带宽,且传输该第二窗口的窗口数据的带宽和该第二通道集合中的传输通道的带宽之间的差值小于或等于该第一阈值时,所述电子设备还用于执行以下步骤:在预设的调整范围内,缩小该第二窗口的大小,使得该第二通道集合中的传输通道的带宽大于或等于传输该第二窗口的窗口数据的带宽。
结合第二方面和上述实现方式,在第二方面的某些实现方式中,所述电子设备还用于执行以下步骤:自动缩小该第一窗口或该第二窗口的大小;或者检测到用户的第一操作,响应于该第一操作,缩小该第一窗口或该第二窗口的大小。
结合第二方面和上述实现方式,在第二方面的某些实现方式中,第一窗口和该第二窗口没有重叠区域;或者该第一窗口和该第二窗口具有重叠区域。
结合第二方面和上述实现方式,在第二方面的某些实现方式中,当该第一窗口和该第二窗口具有重叠区域时,所述电子设备还用于执行以下步骤:获取该第一窗口和该第二窗口的显示层级的信息;当该第二窗口在该第一窗口的上一层显示时,确定该第一窗口中除去该重叠区域之外的区域所包括的待传输数据;根据该待传输数据,从多个传输通道中确定该第一通道集合;或者当该第一窗口在该第二窗口的上一层显示时,确定该第二窗口中除去该重叠区域之外的区域所包括的待传输数据;根据该待传输数据,从多个传输通道中确定该第二通道集合。
结合第二方面和上述实现方式,在第二方面的某些实现方式中,该第一窗口和该第二窗口是同一个应用的不同界面;或者该第一窗口和该第二窗口是不同应用的不同界面。
结合第二方面和上述实现方式,在第二方面的某些实现方式中,该第一通道集合传输该第一窗口的窗口数据的速率不同于该第二通道集合传输该第二窗口的窗口数据的速率;和/或该第一窗口的窗口数据的压缩方式不同于该第二窗口的窗口数据的压缩方式。
第三方面提供了一种电子设备上的图形用户界面,该电子设备具有显示屏、存储器、以及一个或多个处理器,该一个或多个处理器用于执行存储在该存储器中的一个或多个计算机程序,该图形用户界面包括该电子设备执行上述任一方面任一项可能的实现中的显示多个窗口的方法时显示的图形用户界面。
第四方面提供了一种装置,该装置包含在电子设备中,该装置具有实现上述第一方面及上述第一方面的可能实现方式中电子设备行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块或单元。例如,显示模块或单元、检测模块或单元、处理模块或单元等。
第五方面提供了一种计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述第一方面任一项可能的显示多个窗口的方法。
第六方面提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述第一方面或者第一方面的任意一种可能的显示多个窗口的方法。
附图说明
图1是本申请实施例提供的一例电子设备的结构示意图。
图2是本申请实施例的电子设备的软件结构框图。
图3是本申请实施例提供的一例手机分屏显示过程的图形用户界面示意图。
图4是本申请实施例提供的一例窗口显示过程的数据传送示意图。
图5是本申请实施例提供的一例窗口显示过程的示意图。
图6是本申请实施例提供的一例窗口显示过程的示意性流程图。
图7是本申请实施例提供的又一例窗口显示过程的示意图。
图8是本申请实施例提供的又一例窗口显示过程的示意图。
图9是本申请实施例提供的又一例窗口显示过程的示意性流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者多个该特征。例如,本申请实施例中用“第一组”和“第二组”表示不同的窗口组,或者表示不同的传输通道组。
本申请实施例提供的显示多个窗口的方法可以应用于手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等电子设备上,本申请实施例对电子设备的具体类型不作任何限制。
示例性的,图1示出了电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,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等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器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 dataline,SDA)和一根串行时钟线(derail clock line,SCL)。I2S接口可以用于音频通信。PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。
在本申请实施例中,MIPI接口可以用于传输界面的显示数据,例如传输窗口数据等到显示屏模块,显示屏模块根据传输的窗口数据显示不同的窗口,在后续实施例中有详细的描述,此处先不做赘述。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。电源管理模块141用于连接电池142,充电管理模块140与处理器110。电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wireless local areanetworks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
电子设备100通过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)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过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等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。陀螺仪传感器180B可以用于确定电子设备100的运动姿态。气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。磁传感器180D包括霍尔传感器。加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。骨传导传感器180M可以获取振动信号。按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口195用于连接SIM卡。
以上介绍了电子设备100可能具有的硬件结构,可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图2是本申请实施例的电子设备100的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层、应用程序框架层、安卓运行时(Android runtime)和系统库、硬件抽象层(hardware abstraction layer,HAL)、内核层以及物理层等。
应用程序层可以包括一系列应用程序包。如图2所示,应用程序包可以包括微信、视频、设置、音乐等应用程序,本申请实施例不再一一列举。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统等。其中,窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断当前显示屏的屏幕是否显示有状态栏,并执行锁定屏幕,截取屏幕等操作。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频数据、图像数据、音频数据、电话簿数据等。视图系统包括可视的控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,显示界面可以包括应用图标、显示文字的视图以及显示图片的视图等。
Android runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理等操作,以及垃圾回收等。
系统库可以包括多个功能模块。例如:表面管理器(surface manager或者surfaceflinger),媒体库(media libraries),三维图形处理库(例如:OpenGL ES),二维图形引擎(例如:SGL),媒体库,图像处理库等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了二维图层和三维图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。二维图形引擎是二维绘图的绘图引擎。图像处理库可以提供针对各种图像数据的分析以及提供多种图像处理算法等,例如可以提供图像切割、图像融合、图像模糊、图像锐化等处理,此处不再赘述。
HAL层是位于操作系统内核层与硬件电路之上的接口层,其目的在于即将硬件抽象化。HAL层可以包括硬件合成器(hardware composer,HWC)等,HWC可以利用硬件完成图像数据组合并显示的过程,从而为上层提供服务支持。
在本申请实施例介绍的显示屏的窗口显示过程中,HWC可以和应用程序层的窗口管理器、系统库的表面管理器、三维图形处理库、二维图形引擎等多层的多个模块协同合作,完成图像数据组合并显示的过程。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
内核层之下可以包括物理层(physic,PHY),物理层可以为设备内部、或者设备之间的数据通信提供传输媒体及互连通道,为数据传输提供可靠的环境。物理层可以理解为提供"信号和介质"的传输层。
示例性的,在本申请实施例介绍的显示屏的窗口显示过程中,窗口数据的刷新可以按照移动行业处理器接口(Mobile Industry Processor Interface,MIPI)协议进行传输,MIPI协议规定了多种窗口数据的传输规范。例如,MIPI协议定义了处理器和显示模组之间的高速串行接口(Display Serial Interface)、移动应用的传输物理媒介C-PHY、D-PHY等、输入/输出电路和时钟信号机制、发送和收集数据的通道(Lane)以及组帧和解析帧等相关规范。其中,D-PHY配置了多个数据通道(Lane),Lane用于传输窗口数据,在本申请实施例中,可以将多个数据通道称为“Lane模块”。本申请实施例对MIPI协议的规范不再赘述。
具体地,结合本申请实施例介绍的显示屏的窗口显示过程,表面管理器可以从应用程序层的不同应用程序获取数据,该数据可以包括用于显示窗口内容的多种不同类型的数据,例如图像数据、窗口位置坐标数据等,本申请实施例中统一称为“窗口数据”。表面管理器还可以提供图层(layer)合成的服务,三维图形处理库、二维图形引擎等可以将合成的图层进行绘制和渲染,渲染完成后送到显示屏进行显示。对于显示屏上显示的每个应用的窗口,可以将该应用的窗口的显示内容进行数据刷新、图层合成、绘制渲染和送显过程,此外,该应用的窗口的显示内容进行数据刷新时,可以对应的一定的刷新率进行数据刷新,以保持窗口的显示内容的实时更新。
以上介绍的数据刷新、图层合成、渲染和送显过程可以由HWC控制软件模块和硬件的协同参与完成,后续描述中该过程统一描述为HWC来执行,应理解,可以是HWC控制表面管理器、三维图形处理库、二维图形引擎、物理层等多层的一个或多个模块协同合作执行,此处不再赘述。
为了便于理解,本申请以下实施例将以具有图1和图2所示结构的手机为例,结合附图和应用场景,对本申请实施例提供的显示多个窗口的方法进行具体阐述。
图3是本申请实施例提供的一例手机分屏显示过程的图形用户界面(graphicaluser interface,GUI)的示意图。其中,如图3中的(a)图所示,手机的显示屏显示了当前输出的界面,该界面包括微信应用窗口10和视频应用窗口20。具体地,该微信应用窗口10用于显示微信应用的界面,不限于微信应用的主界面或者和好友的聊天界面等;该视频应用窗口20用于显示视频应用的界面,不限于视频应用的主界面或者某视频片段的播放界面等。
当手机的显示屏显示多个窗口(或者称为“子窗口”)时,不同的窗口可能对应不同的刷新率。示例性的,以图3中的(a)图为例,微信应用窗口10显示微信应用的主界面时,窗口内容的刷新率可以是90Hz;视频应用窗口20显示某视频片段的播放界面时,窗口内容的刷新率可以是60Hz。其中,微信应用窗口10对应较高的刷新率可以保证微信应用相关的窗口数据的及时更新,消息的实时显示。在本申请实施例中,窗口内容的刷新率可以理解为上层应用的应用绘制渲染图层的帧率,例如1000毫秒内绘制渲染几帧显示画面,后续不再赘述。
应理解,在本申请实施例中,对于同一款应用,不同的显示界面可以对应相同的刷新率,或者对应不同的刷新率。例如,微信应用的任意一个界面都可以对应90Hz的刷新率,视频应用的显示剧集菜单的主界面可以对应30Hz的刷新率,某视频片段的播放界面可以对应60Hz的刷新率。在后续实施例中,如图3中的(b)图所示,将以微信应用窗口10对应90Hz的刷新率、视频应用窗口20显示某视频片段的播放界面时对应60Hz的刷新率为例进行介绍,本申请对不同应用的不同界面的刷新率、同一应用的不同界面的刷新率不作限定。
还应理解,本申请实施例将重点介绍手机的显示屏上不同应用的窗口的显示,手机的显示屏的显示区域还包括顶端的状态栏或者底端的导航栏等,示例性的,如图3中的(a)图至(c)图所示的示意图,状态栏可以显示运营商图标、无线网络图标、电池容量信息以及时间信息等,该状态栏的显示可以独立显示,也可以和微信应用窗口10或者视频应用窗口20组合进行显示,本申请实施例对应用窗口之外的区域的显示过程不作限定。
如果不同的窗口对应不同的刷新率,现有的多个窗口的显示过程中,在图层合成阶段,HWC可以将多个窗口的图层合并成一个整屏画面,进行渲染和送显,因此,在窗口数据的刷新过程中,当多个窗口具有不同的刷新率时,系统会按照高刷新率模式进行工作。例如,图3中的(c)图所示,将微信应用窗口10和视频应用窗口20的刷新率统一为高刷新率90Hz,进行窗口数据的刷新、图层合成、绘制渲染和送显过程。
如图2中的介绍,D-PHY配置了多个数据通道(Lane),Lane用于传输窗口数据,可以将多个数据通道称为“Lane模块”。下面简单介绍D-PHY的Lane模块,该Lane模块具有多个Lane,具体参数特征可以包括:
(1)每条Lane具有不同的刷新率,或者多条Lane具有相同的刷新率。示例性的,假设该Lane模块具有4条通道,分别记作Lane 0、Lane 1、Lane 2和Lane 3,其中Lane 0、Lane1、Lane 2和Lane 3可以支持一种或者多种刷新率。如Lane 0、Lane 1、Lane 2和Lane 3支持的最大刷新率为180Hz,那么,结合不同场景下的传输需求,Lane 0、Lane 1、Lane 2和Lane3可以分别支持小于或等于180Hz的任意一种刷新率。
(2)每条Lane具有不同的MIPI传输速率,或者多条Lane具有相同的MIPI传输速率,MIPI传输速率可以理解为Lane的工作速率。其中,每一个Lane的最大MIPI传输速率即该Lane的带宽。
示例性的,Lane 0、Lane 1、Lane 2和Lane 3支持的最大MIPI传输速率为30字节每毫秒,那么,根据不同场景下的工作模式或者传输需求,Lane 0、Lane 1、Lane 2和Lane 3可以支持小于或等于30字节每毫秒的传输速率。应理解,如果每条Lane处于最高速率的工作模式,则对应的最大MIPI传输速率(即带宽)也是可以确定的。
(3)每条Lane具有不同的显示流压缩(display stream compression,DSC)率,或者多条Lane具有相同的DSC压缩率。示例性的,根据不同场景下的工作模式或者传输需求,Lane 0、Lane 1、Lane 2和Lane 3可以支持小于或等于30字节每毫秒的传输速率。
应理解,以上介绍的Lane模块的刷新率、MIPI传输速率、DSC率等参数,可以针对每一个不同的Lane分别设置,例如Lane 0和Lane 1的刷新率、MIPI传输速率及DSC率分开设置为相同或者不同,本申请实施例对此不作限定。
根据以上介绍的窗口数据的传输过程,结合图3列举的微信应用窗口10和视频应用窗口20,以手机显示屏的分辨率为2400×1080的Video屏为例,基于4个Lane的D-PHY的窗口数据的传送过程可以如图4所示。
图4是本申请实施例提供的一例窗口显示过程的数据传送示意图,如图4中的(a)图所示,手机的显示屏显示了微信应用窗口10和视频应用窗口20,且微信应用窗口10和视频应用窗口20的刷新率被统一为较高的90Hz的刷新率,基于90Hz的刷新率HWC将微信应用窗口10和视频应用窗口20的图层合并成一个整屏画面。具体地,在窗口数据的传输过程中,可以将两个窗口的区域按照网格进行区域分割。应理解,该区域分割过程可以根据显示驱动集成电路(display driver integrated circuit,DDIC)的通道(slice)数量、支持的区域大小范围进行分割。
示例性的,假设显示流压缩(display stream compression,DSC)为双切层(dualslice)技术,对于2400×1080(单位:像素)的视频模式(video mode)的显示屏,将整屏画面按照60×540大小的区域进行分割,将微信应用窗口10和视频应用窗口20进行区域分割,分割出来的区域可以如图4中的(b)图所示。微信应用窗口10和视频应用窗口20进行区域分割后,微信应用窗口10包括区域1-区域38,视频应用窗口20包括区域39-区域72。
每个区域的窗口数据进行压缩后,然后将压缩后的窗口数据包按照图4中的(c)图所示的Lane 0-Lane 4进行传输。每一个Lane包括起始符号(start of transmission,SOT)和终止符号(end of transmission,EOT)。应理解,现有的传输窗口数据包按照多个Lane协同并发传送,针对每个窗口数据包,都会按照字节数,依次并发在4组Lane进行协同传送。如图4中的(c)图所示,区域1的窗口数据包先通过Lane 0的Byte 0承载一部分,再按照箭头所示的方向,剩余部分依次由Lane 1的Byte 1、Lane 2的Byte2、Lane 3的Byte 3、Lane 0的Byte 4…等承载,直到传输完区域1的窗口数据包所包括的全部字节。同理,对微信应用窗口10包括区域1-区域38、视频应用窗口20包括区域39-区域72的所有窗口数据包进行传输。
应理解,每个区域对应的窗口数据可以进行压缩,压缩后将整屏内容可以按照一定的图像顺序通过Lane模块传送给显示屏进行显示。可选地,例如从显示屏的左上角的区域1的窗口数据作为起始带传输的窗口数据,每块区域从左到右,从上到下,按照区域2-区域3-区域4-…-区域72的顺序依次进行传输,本申请实施例对此不作限定。
还应理解,窗口数据的压缩过程(DSC技术)可以参照视频电子标准协会(VideoElectronics Standards Association,VESA)的规范执行,本申请实施例对此不作限定。
当窗口数据包传输到DDIC侧后,再将接收的所有窗口数据包按照顺序组合还原,还原之后再利用DSC解码还原图像信息,最终将还原后的图像信息更新给显示屏,例如由显示屏的面板液晶或OLED的发光二极管进行显示画面内容刷新和显示。
在上述实现过程中,显示屏上的所有窗口如果对应不同刷新率,那么整体合并后的画面的刷新率将按照所有窗口对应的刷新率中最高的刷新率进行窗口数据刷新和同步。对于那些低刷新率的窗口,如果采用高刷新率的窗口数据刷新和同步过程,只是把显示的内容做一些帧的重复刷新,该过程增加了系统的负载和功耗,影响了系统的性能。特别是在播放视频或者展示游戏的动态效果的场景中,低刷新率已经可以满足当前的显示需求,如果按照高刷新率进行窗口数据的刷新和同步,同样的显示画面不断地进行重复刷新,增加了系统的负载和功耗,造成电子设备的卡顿以及发热等,影响了用户体验。
因此,本申请实施例将提供一种显示多个窗口的方法,可以满足多个窗口的显示需求,同时降低电子设备的系统负载和功耗。
下面,将针对不同的场景,以微信应用窗口10和视屏应用窗口20的显示过程为例,介绍本申请实施例提供的窗口显示过程。
图5是本申请实施例提供的一例窗口显示过程的示意图,如图5中的(a)图所示,手机的显示屏显示了微信应用窗口10和视频应用窗口20。在本申请实施例中,如图5中的(b)图所示,微信应用窗口10对应90Hz的刷新率,视频应用窗口20对应60Hz的刷新率。与图4中介绍的窗口显示过程不同的是,本申请实施例中微信应用窗口10和视频应用窗口20不需要统一为高刷新率90Hz,合并图层成整屏画面进行显示,该过程可以基于两个窗口分别对应不同的刷新率,分别进行窗口数据的刷新、绘制渲染和送显过程。
具体地,在传输窗口数据的过程中,将Lane模块的多个Lane进行分组,分别用于传输不同窗口包含的窗口数据。换言之,将Lane模块的多个Lane进行分组,一个组的Lane独立传输微信应用窗口10包含的窗口数据,另一个组的Lane独立传输视频应用窗口20包含的窗口数据。
示例性的,如图5中的(c)图所示,将Lane 0、Lane 1、Lane 2和Lane 3划分为两个组,其中Lane 0和Lane 1为第一组通道,用于传输微信应用窗口10的窗口数据;Lane2和Lane 3为第二组通道,用于传输视频应用窗口20的窗口数据。其中,每个窗口可以按照图4中介绍的区域分割方式进行分割,例如,将按照60×540大小的区域进行分割,则Lane 0和Lane 1用于传输区域1-区域38的窗口数据,Lane 2和Lane 3用于传输区域39-区域72的窗口数据。
一种可能的实现方式中,Lane模块的多个Lane的分组可以包括多种方式,例如可以根据当前显示屏显示的窗口数量和每个窗口包含的窗口数据所需要的传输带宽进行分组。应理解,Lane分组的结果要使得该组的Lane的传送带宽满足当前窗口数据的传输需求。
示例性的,结合图5中的(c)图,当Lane 0和Lane 1作为第一组Lane,Lane 0和Lane1的带宽可以传输微信应用窗口10的区域1-区域38的所有窗口数据,且Lane 2和Lane 3作为第二组Lane,Lane 2和Lane 3的带宽可以传输视频应用窗口20的区域39-区域72的所有窗口数据时,当前可以按照该分组方式传输微信应用窗口10和视频应用窗口20的窗口数据。
一种可能的情况中,当Lane 0和Lane 1的带宽无法传输微信应用窗口10的区域1-区域38的所有窗口数据时,可以将Lane 0、Lane 1和Lane 2作为第一组Lane,传输微信应用窗口10的区域1-区域38的所有窗口数据。如果Lane 0、Lane 1和Lane 2可以传输微信应用窗口10的区域1-区域38的所有窗口数据,且Lane 3的带宽可以传输视频应用窗口20的区域39-区域72的所有窗口数据时,当前可以按照Lane 0、Lane 1和Lane 2作为第一组Lane,Lane 3作为第二组Lane的方式传输窗口数据。
另一种可能的情况中,当Lane 0、Lane 1和Lane 2作为第一组Lane,无法传输微信应用窗口10的区域1-区域38的所有窗口数据时,如果当前只有4个Lane可用,那么可以按照图4中介绍的方法,基于90Hz的刷新率将微信应用窗口10和视频应用窗口20的图层合并成一个整屏画面后,再将整屏画面的每个区域的窗口数据压缩后按照图4中的(c)图所示的Lane 0-Lane 4进行传输,以实现当前多窗口的显示需求。
另一种可能的实现方式中,每一个应用窗口中区域分割的方式也可以包括多种方式,例如可以根据当前窗口分配的Lane的数量和传送带宽的要求进行区域分割,本申请实施例对此不作限定。
图6是本申请实施例提供的一例窗口显示过程的示意性流程图,基于上述图5介绍的窗口显示过程,下面结合图6介绍具体实现流程。应理解,该方法可以在如图1所示具有触摸屏的硬件结构、图2所示软件架构的电子设备(例如手机、平板电脑等)中实现。如图6所示,该方法600可以由手机的处理器控制HWC、窗口管理器、三维图形处理库、显示屏模块等多个软硬件模块协同执行,该方法600包括:
601,开始。
602,开启显示屏显示多个窗口的功能。
应理解,这里显示多个窗口可以是分屏显示,或者窗口叠加的画中画(picture-in-picture,PIP)显示,在图5和图6的场景中,以分屏显示为例介绍窗口显示过程,对于窗口叠加的PIP的场景将在后续实施例中进行介绍。
可选地,该步骤602可以是用户通过一定的操作开启手机的分屏功能,例如用户在设置中开启了手机的分屏功能,或者用户通过快捷手势启动了手机的分屏功能等,本申请实施例对此不作限定。
603,确定待显示的窗口的刷新率是否一致。
604,当待显示的窗口的刷新率存在不同时,根据刷新率对待显示的窗口进行分组。
示例性的,对于图5中显示的微信应用窗口10和视频应用窗口20,微信应用窗口10对应90Hz的刷新率,视频应用窗口20对应60Hz的刷新率,两个窗口对应的刷新率不同,可以将微信应用窗口10记作第一组窗口,视频应用窗口20记作第二组窗口。
一种可能的实现方式中,手机分屏显示的窗口可以大于或者等于3个,以3个窗口分屏显示且3个窗口没有重叠部分为例,如果有2个窗口对应90Hz的刷新率,1个窗口对应60Hz的刷新率,那么2个刷新率为90Hz的窗口可以合并为一个组,记作第一组窗口;另外1个刷新率为60Hz的窗口为另一个组,记作第二组窗口。
应理解,本申请实施例还可以包括更多的分屏显示窗口或者更多的窗口组数,此处不再赘述。
605,为每个窗口组分配Lane资源,以实现均衡各组的Lane数量和带宽。
606,确定Lane资源是否可以满足按组分配,以使得不同的窗口组独立传送窗口数据。
步骤605中均衡各组的Lane数量和带宽目的在于保证每一组Lane可以满足某一组窗口的所有窗口数据的传输要求,例如传输带宽和传输速率。具体地,当手机接收到显示多个窗口的指令时,可以对分屏显示的窗口位置进行识别,计算当前分屏显示的窗口一共有多少个,并计算每个应用窗口的尺寸大小、每个应用窗口刷新率以及所需的MIPI传输速率、Lane的数量数等。进一步对Lane模块的多个Lane进行分组,如第一组窗口和第二组窗口,第一组Lane和第二组Lane;并判断当前的分屏显示的窗口中,第一组窗口的所有窗口数据是否都能够通过第一组Lane传送完,以及第二组窗口的所有窗口数据是否都能够通过第二组Lane传送完。
示例性的,如图5中的(c)图所示,以Lane模块包括4个Lane为例,Lane 0和Lane 1作为第一组Lane,传输微信应用窗口10的区域1-区域38的所有窗口数据,Lane 2和Lane 3作为第二组Lane,传输视频应用窗口20的区域39-区域72的所有窗口数据。
一种可能的实现方式中,如果第一组窗口中有个别窗口的区域较大,导致第一组Lane的带宽不满足传输要求,且和满足要求的带宽之间的差值在一定范围内,例如该差值小于或等于第一阈值时,可以自动调整该窗口的大小,例如按照预设的调整范围缩小该窗口的大小,使得当前第一组Lane的带宽可以满足第一组窗口的传输要求。
通过以上方法,可以实现动态自动调整分屏显示的窗口的大小,并将该窗口的大小调整限定在预设范围内,以满足窗口数据的传输带宽要求且不会影响用户的视觉体验,进而可以根据本申请实施例提供的方法分组独立传输不同刷新率的窗口数据,系统可以分别按照各个窗口的刷新率进行窗口数据的刷新、图层合成、绘制渲染和送显过程,进而降低了系统的功耗,节省了系统性能。
另一种可能的实现方式中,如果第一组窗口中有个别窗口的区域较大,导致第一组Lane的带宽不满足传输要求,且和满足要求的带宽之间的差值大于该第一阈值时,此时按照预设的调整范围缩小该窗口的大小也不能满足第一组窗口的传输要求,可以调整Lane的分组方式直到Lane资源可以满足所有分组窗口的,例如Lane 0、Lane 1和Lane 2作为第一组Lane,传输第一组窗口的窗口数据,Lane 3作为第二组Lane,传输第二组窗口的窗口数据。
应理解,在DSC技术中,涉及压缩和解压缩图像块的过程,考虑DSC的slice通道数,对各窗口大小的调整可以兼顾压缩图像块大小,例如向压缩图像块的大小对齐。此外,每个窗口内的图像大小要满足slice通道传送的对齐要求,例如高度是4的倍数等。如果某个窗口尺寸大小不满足这个压缩块尺寸大小要求,可以对该窗口的大小进行窗口尺寸的自动调整,此处不再赘述。
上述介绍了在预设范围内自动调整窗口大小的方式以及调整Lane的分组方式,以满足所有分组窗口传输窗口数据的需求。应理解,以上方式可以单独使用,或者结合使用,本申请实施例对此不作限定。
607,当Lane资源可以满足不同的窗口组独立传送窗口数据时,设置显示屏的DDIC接收窗口数据的分组传送先后顺序、每组窗口位置区域、窗口大小、压缩方式、MIPI传输速率等。
可选地,例如可以根据每一组窗口的窗口大小、对应的刷新率、每一组Lane的数量、最大MIPI传输速率等因素确定上述参数,应理解,本申请实施例对设置上述参数的方式不作限定。
608,显示屏的DDIC按照分组窗口传送的先后顺序接收各组窗口数据,并按不同的分组独立进行刷新、图层合成、绘制渲染和显示过程,以在显示屏上显示多个窗口。
609,结束。
以上步骤601-步骤609以分屏显示多个窗口为例,介绍了不同的多个窗口可以按照各自所需的刷新率分别刷新、绘制渲染和送显过程,在该过程中,所有窗口可以按照自身对应的刷新率进行送显,无需将所有窗口按照最高的刷新率进行送显,进而降低了系统的功耗,节省了系统性能。此外,在以上介绍的窗口显示过程中,可以实现多个Lane的自动组合、分配以及并发传输过程,无需用户的参与,在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,降低了系统的功耗,提高了用户体验。
对于上述步骤606,当确定Lane资源不能满足按组分配以使得不同的窗口组独立传送窗口数据,进入以下步骤610-步骤612的过程。
610,将多个窗口统一为较高的刷新率,合并多个窗口为整屏画面。示例性的,按照图3和图4中介绍的过程,将微信应用窗口10和视频应用窗口20统一为较高的90 Hz刷新率,合并为整屏画面。
611,多组Lane资源协同传送整屏画面的图像数据。
612,显示屏的DDIC接收该整屏图层的图像数据后,整屏刷新、绘制渲染和显示。
一种可能的实现方式中,如果在预设范围内自动调整窗口大小的方式和/或调整Lane的分组方式,都无法满足所有分组窗口传输窗口数据的需求时,即任何一种Lane分配方式,部分窗口的带宽仍然无法满足要求时,此时不进行本申请实施例提供过的Lane资源的分组操作,而按照图4中介绍的方法,保持现有的模式,将所有分屏后的窗口进行合并成全屏画面后,再按照图4中的(c)图所示的方法多组Lane统一进行窗口数据的传输。
以上步骤610-步骤612的过程,介绍了当Lane资源不能满足按组分配以使得不同的窗口组独立传送窗口数据的情况下,系统可以自动切换为将所有分屏后的窗口进行合并成全屏画面后,多组Lane统一传输整屏画面的窗口数据的实现过程,为窗口显示过程提供了多种可能的实现方案,以适应不同场景中的多窗口显示需求,而且该切换过程无需用户的参与,在用户无感知的情况下保证多个窗口的正常显示,提高了用户体验。
对于上述步骤602,当待显示的多个窗口的刷新率相同时,也可以按照步骤610-步骤612的过程进行窗口显示。具体地,系统判断待显示的多个窗口的刷新率相同,可以自动切换为将所有分屏后的窗口进行合并成全屏画面后,多组Lane统一传输整屏画面的窗口数据的实现过程,为窗口显示过程提供了多种可能的实现方案。
综上所述,当电子设备分屏显示多个窗口时,本申请实施例针对不同的场景,提供了多种不同的窗口显示的方案,系统可以根据当前的场景自动切换不同的窗口显示的方案,以满足不同场景中的多窗口显示需求。具体地,第一种情况中,当多个窗口对应的刷新率不相同时,按照不同的刷新率对多个窗口进行分组,并对Lane模块包括的多个Lane进行自动组合、分配,使得每一组的Lane可以传输一组窗口的窗口数据,进而实现不同的多个窗口可以按照各自所需的刷新率分别刷新、绘制渲染和送显过程,在该过程中,所有窗口可以按照自身对应的刷新率进行送显,无需将所有窗口按照最高的刷新率进行送显,进而降低了系统的功耗,节省了系统性能。第二种情况中,如果Lane资源不能满足按组分配以使得不同的窗口组独立传送窗口数据,或者当待显示的多个窗口的刷新率都相同时,可以将所有分屏后的窗口进行合并成全屏画面后,多组Lane统一传输整屏画面的窗口数据的实现过程。以上方案针对不同场景为窗口显示过程提供了多种可能的实现方案,可以实现无需用户的参与,在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,降低了系统的功耗,提高了用户体验。
图7是本申请实施例提供的又一例窗口显示过程的示意图,图3至图6介绍了当手机分屏显示不同的窗口的过程,多窗口显示还可以包括窗口叠加的画中画(picture-in-picture,PIP)的显示场景,下面通过图7至图9介绍PIP的多窗口显示过程。
如图7中的(a)图所示,手机的显示屏的主界面显示了微信应用窗口10,视频应用窗口20悬浮显示在微信应用窗口10上。在本申请实施例中,如图7中的(b)图所示,微信应用窗口10对应90Hz的刷新率,视频应用窗口20对应60Hz的刷新率。在该种场景中,微信应用窗口10和视频应用窗口20也可以基于两个窗口分别对应的不同刷新率,分别进行窗口数据的刷新、绘制渲染和送显过程。
示例性的,如图7中的(c)图所示,将Lane 0、Lane 1、Lane 2和Lane 3划分为两个组,其中Lane 0、Lane 1和Lane 2为第一组通道,用于传输微信应用窗口10的窗口数据;Lane 3为第二组通道,用于传输视频应用窗口20的窗口数据。其中,每个窗口可以按照图4中介绍的区域分割方式进行分割,例如,对微信应用窗口10按照60×540大小分割为包括区域1-区域60;视频应用窗口20所占的尺寸为900×960(单位:像素),按照100×960大小分割为包括区域61-区域69。
一种可能的实现方式中,当两个窗口有遮挡关系,产生重叠部分时,在显示过程中,可以将被遮挡的区域扣掉,示例性的,如图7中的(c)图所示,视频应用窗口20所在的区域遮挡了微信应用窗口10的部分区域。在窗口显示过程中,视频应用窗口20可以正常传输窗口数据,而被遮挡的微信应用窗口10可以将视频应用窗口20所在区域的窗口数据丢弃,即图中的区域31-区域42所在部分不包括被视频应用窗口遮挡的区域。通过第一组Lane传输微信应用窗口10的窗口数据,第二组Lane传输视频应用窗口20的窗口数据,该方式减少了微信应用窗口10的窗口数据量,可以缓解数据传输压力。
特别地,当第一组Lane传输微信应用窗口10的窗口数据时,如果带宽不足,通过上述介绍的方法,将被遮挡的区域所包含的窗口数据丢弃,可以满足微信应用窗口10的带宽需求,且支持了微信应用窗口10和视频应用窗口20按照自身对应的刷新率进行送显,无需将所有窗口按照最高的刷新率进行送显,进而降低了系统的功耗,节省了系统性能。
图8是本申请实施例提供的又一例窗口显示过程的示意图,如图8中的(a)图所示,手机的显示屏的主界面先分屏显示了微信应用窗口10和相册窗口30,又在微信应用窗口10和相册窗口30的之上悬浮显示了视频应用窗口20,且视频应用窗口20和微信应用窗口10、相册窗口30都有部分重叠区域。其中,如图7中的(b)图所示,微信应用窗口10对应90Hz的刷新率,视频应用窗口20对应60Hz的刷新率,相册窗口30对应30Hz的刷新率。
一种可能的实现方式中,可以将有遮挡关系的窗口先合并,最后形成无遮挡的合并区域,再对合并后的无包含关系合并区域的窗口数据,分配Lane并行传输窗口数据。
示例性的,如图8中的(c)图所示,可以将微信应用窗口10和视频应用窗口20先合并,得到无遮挡的合并区域40,并通过第一组Lane传输该合并区域40所包含的窗口数据。将相册窗口30的窗口数据独立通过第二组Lane传输。
可选地,当Lane带宽满足需求时,相册窗口30的窗口数据可以包括虚线框示出的被视频应用窗口20遮挡的区域;相册窗口30的窗口数据也可以不包括该虚线框示出的被视频应用窗口20遮挡的区域,可以减轻数据传输量,提高系统性能。
另一种可能的实现方式中,微信应用窗口10、视频应用窗口20和相册窗口30也可以按照图5和图6中介绍的方法,分别基于三个窗口各自对应的不同刷新率,进行窗口数据的刷新、绘制渲染和送显过程,此处不再赘述。
又一种可能的实现方式中,在显示多个窗口的过程中,当用户拖动某一个窗口导致该窗口的位置发生变化之后,系统可以根据新的窗口位置,以及多个窗口新的位置关系、重叠关系等重新按照图7、图8中介绍的方案,重新划分窗口区域以及自动分配不同的Lane,并根据新的传输方案对每个区域的窗口数据进行刷新、绘制渲染和送显,无需用户的参与,在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,提高了用户体验。
或者,当用户通过拖动窗口边框等操作调整了某个窗口的大小时,系统可以根据新的窗口大小,以及多个窗口新的位置关系、重叠关系等重新按照图7、图8中介绍的方案,重新划分窗口区域以及自动分配不同的Lane,或者自动合并多个窗口为整屏画面并协同多Lane送显,即根据新的传输方案对每个区域的窗口数据进行刷新、绘制渲染和送显,无需用户的参与,在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,提高了用户体验。
又或者,系统可以自动调整某个窗口的大小,例如按照预设的调整范围缩小该窗口的大小,使得Lane模块的带宽可以满足当前多个窗口数据的传输需求。示例性的,如果第一组窗口中有个别窗口的区域较大,导致第一组Lane的带宽不满足传输需求,且和满足要求的带宽之间的差值在一定范围内,例如该差值小于或等于第一阈值时,可以自动该个别窗口的大小,使得第一组Lane的带宽可以满足第一组窗口数据的传输需求。在该种情况下,可以自动调整某个别窗口的大小,系统根据调整后的窗口,对窗口数据进行刷新、绘制渲染和送显,无需用户的参与,在用户无感知的情况下可以为用户显示多个窗口,且以更低的功耗显示窗口,提高了用户体验。
图9是本申请实施例提供的又一例窗口显示过程的示意性流程图,基于上述介绍的图7和图8的窗口显示过程,下面结合图9介绍具体实现流程。如图9所示,该方法900可以由手机的处理器控制HWC、窗口管理器、三维图形处理库、显示屏模块等多个软硬件模块协同执行,该方法900包括:
901,开始。
902,开启显示屏显示多个窗口的功能。
应理解,在该图8和图9介绍的实施例中,这里显示多个窗口可以是既包括分屏显示、又包括PIP叠加显示的场景。对于既包括分屏显示、又包括PIP叠加显示的场景,可以按照图5和图6中介绍方法显示多个窗口,也可以按照图8和图9介绍的方法显示,本申请实施例对此不作限定。
903,确定待显示的窗口的刷新率是否一致。
904,当待显示的窗口的刷新率存在不同时,根据窗口的刷新率、窗口数量、窗口大小、位置等因素合并部分窗口,对多个窗口进行分组。
应理解,该过程不同于图6中介绍的步骤604,步骤604可以是针对窗口没有重叠区域的分屏显示场景中,按照刷新率是否相同对多个窗口进行分组,同一组内的窗口刷新率相同。在步骤904中,窗口的分组方式除了根据窗口的刷新率之外,还考虑窗口数量、窗口大小、显示位置等多种因素。
示例性的,如图7中显示的2个窗口,窗口数量较少,且Lane可以满足2个窗口单独传输窗口数据的要求,可以不合并窗口,划分为两个组,为每个组分配Lane数量,分别独立传输各自的窗口数据。
或者,示例性的,如图8中显示的3个窗口,其中视频应用窗口20和相册窗口30、微信应用窗口10都有重叠区域,且三个窗口的刷新率都不相同。如果将3个窗口划分为3个组,4个Lane不论如何分配都无法满足独立传输3个窗口的带宽需求时,可以将两个窗口进行合并,再对合并后的窗口进行分组。考虑到视频应用窗口20和微信应用窗口10的重叠区域较多,可以将视频应用窗口20和微信应用窗口10合并,得到合并区域40,将合并区域40作为第一组窗口,对应的是较高的刷新率90Hz;相册窗口30作为第二组窗口,对应的刷新率为30Hz。
可选地,对多个窗口的分组过程,可以优先考虑窗口的刷新率和窗口的尺寸大小。如果相同刷新率的窗口中每个窗口所包括的窗口数据都没满足某组Lane的传送带宽上限,可以将这些窗口分在一组,公用该组Lane传输窗口数据。对于不同刷新率的窗口,按照刷新率不同,尽量将不同刷新率的窗口分开在不同的组,并通过不同的Lane传输窗口数据,以实现不同的窗口组的不同的MIPI传输速率,以更满足不同场景的需求。
通过上述合并部分窗口的方式,可以保证刷新率低的窗口(例如相册窗口30)仍然保持自身较低的刷新率,无需将所有窗口合并为整屏画面进行刷新、绘制渲染和送显,一定程度上也可以降低系统的功耗,节省系统的性能。
905,为各组分配Lane带宽。
906,确定Lane资源是否可以满足按组分配,以使得不同的窗口组独立传送窗口数据。
907,当Lane资源可以满足不同的窗口组独立传送窗口数据时,设置显示屏的DDIC接收窗口数据的分组传送先后顺序、每组窗口位置区域、窗口大小、压缩方式、MIPI传输速率等。
908,显示屏的DDIC按照分组窗口传送的先后顺序接收各组窗口数据,并按不同的分组独立进行刷新、图层合成、绘制渲染和显示过程,以在显示屏上显示多个窗口。
909,结束。
应理解,以上相同的执行过程可以参考方法600中的详细描述,此处不再赘述。
还应理解,以上步骤901-步骤909以多个窗口具有重叠显示区域为例,介绍了不同的多个窗口的分组方法,继而对于不同的组,可以按照一定的刷新率分别刷新、绘制渲染和送显过程,该过程可以节省系统的性能。此外,在以上介绍的窗口显示过程中,可以实现多个Lane的自动组合、分配以及并发传输过程,无需用户的参与,在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,降低了系统的功耗,提高了用户体验。
对于上述步骤906,当合并部分窗口之后,Lane资源依然不能满足按组分配以使得不同的窗口组独立传送窗口数据,进入以下步骤910-步骤912的过程。
910,将多个窗口统一为较高的刷新率,合并多个窗口为整屏画面。
示例性的,按照图3和图4中介绍的过程,将微信应用窗口10、视频应用窗口20和相册窗口30全部统一为较高的90Hz刷新率,HWC将视频应用窗口20和相册窗口30合并为整屏画面后,再通过多组Lanes资源传输整屏画面的图像数据给显示屏。
911,多组Lane资源协同传送整屏画面的图像数据。
912,显示屏DDIC接收该整屏图层的图像数据后,整屏刷新、绘制渲染和显示。
以上步骤910-步骤912的过程,介绍了当合并部分窗口之后,Lane资源依然不能满足按组分配以使得不同的窗口组独立传送窗口数据的情况下,系统可以自动切换为将所有分屏后的窗口进行合并成全屏画面后,多组Lane统一传输整屏画面的窗口数据的实现过程,为窗口显示过程提供了多种可能的实现方案,以适应不同场景中的多窗口显示需求,而且该切换过程无需用户的参与,在用户无感知的情况下保证多个窗口的正常显示,提高了用户体验。
同样地,对于上述步骤902,当待显示的多个具有重叠区域的窗口的刷新率都相同时,也可以按照步骤910-步骤912的过程进行窗口显示。具体地,系统判断待显示的多个窗口的刷新率相同,可以自动切换为将所有分屏后的窗口进行合并成全屏画面后,多组Lane统一传输整屏画面的窗口数据的实现过程,为窗口显示过程提供了多种可能的实现方案。
综上所述,当电子设备分屏显示多个窗口且多个窗口具有重叠区域时,本申请实施例针对不同的场景,提供了多种不同的窗口显示的方案,系统可以根据当前的场景自动切换不同的窗口显示的方案,以满足不同场景中的多窗口显示需求。具体地,可以根据多个窗口的刷新率、窗口数量、窗口大小、位置等因素考虑合并部分窗口,再合并后的窗口进行分组。并对Lane模块包括的多个Lane进行自动组合、分配,使得每一组的Lane可以传输一组窗口的窗口数据,进而在一定程度上是的部分窗口可以保持较低的刷新率进行送显,无需将所有窗口按照最高的刷新率进行送显,进而降低了系统的功耗,节省了系统性能。
以上方案针对不同场景为窗口显示过程提供了多种可能的实现方案,可以实现无需用户的参与,在用户无感知的情况下以更低的功耗显示多个窗口,简化了窗口显示流程,降低了系统的功耗,提高了用户体验。
可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本实施例可以根据上述方法示例对电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,该电子设备可以包括:显示单元、检测单元和处理单元。需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本实施例提供的电子设备,用于执行上述视频播放的方法,因此可以达到与上述实现方法相同的效果。
在采用集成的单元的情况下,电子设备可以包括处理模块、存储模块和通信模块。其中,处理模块可以用于对电子设备的动作进行控制管理,例如,可以用于支持电子设备执行显示单元、检测单元和处理单元执行的步骤。存储模块可以用于支持电子设备执行存储程序代码和数据等。通信模块,可以用于支持电子设备与其他设备的通信。
其中,处理模块可以是处理器或控制器。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processing,DSP)和微处理器的组合等等。存储模块可以是存储器。通信模块具体可以为射频电路、蓝牙芯片、Wi-Fi芯片等与其他电子设备交互的设备。
在一个实施例中,当处理模块为处理器,存储模块为存储器时,本实施例所涉及的电子设备可以为具有图1所示结构的设备。
本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的显示多个窗口的方法。
本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的显示多个窗口的方法。
另外,本申请的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的显示多个窗口的方法。
其中,本实施例提供的电子设备、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (13)

1.一种显示多个窗口的方法,其特征在于,应用于包括显示屏的电子设备,所述方法包括:
所述显示屏上显示多个窗口,所述多个窗口包括第一窗口和第二窗口,所述第一窗口对应的第一刷新率大于所述第二窗口对应的第二刷新率;
获取待传输的所述第一窗口的窗口数据和所述第二窗口的窗口数据;
根据待传输的所述第一窗口的窗口数据,从多个传输通道中确定第一通道集合,以及根据待传输的所述第二窗口的窗口数据,从多个传输通道中确定第二通道集合,所述第一通道集合和所述第二通道集合分别包括不同的传输通道;
当所述第一通道集合中的传输通道的带宽满足所述第一窗口的窗口数据的传输要求,且所述第二通道集合中的传输通道的带宽满足所述第二窗口的窗口数据的传输要求时,通过所述第一通道集合向所述显示屏传输所述第一窗口的窗口数据,以及通过所述第二通道集合向所述显示屏传输所述第二窗口的窗口数据;
所述显示屏基于所述第一刷新率绘制并显示所述第一窗口,以及基于所述第二刷新率绘制并显示所述第二窗口。
2.根据权利要求1所述的方法,其特征在于,当所述第一通道集合中的传输通道的带宽小于传输所述第一窗口的窗口数据的带宽,和/或所述第二通道集合中的传输通道的带宽小于传输所述第二窗口的窗口数据的带宽时,所述方法还包括:
合并所述第一窗口的窗口数据和所述第二窗口的窗口数据,通过所述多个传输通道向所述显示屏传输合并后的窗口数据;
所述显示屏基于所述第一刷新率和所述合并后的窗口数据,绘制并显示所述第一窗口和所述第二窗口。
3.根据权利要求1所述的方法,其特征在于,
当所述第一通道集合中的传输通道的带宽小于传输所述第一窗口的窗口数据的带宽,且传输所述第一窗口的窗口数据的带宽和所述第一通道集合中的传输通道的带宽之间的差值小于或等于第一阈值时,所述方法还包括:
在预设的调整范围内,缩小所述第一窗口的大小,使得所述第一通道集合中的传输通道的带宽大于或等于传输所述第一窗口的窗口数据的带宽;
和/或,
当所述第二通道集合中的传输通道的带宽小于传输所述第二窗口的窗口数据的带宽,且传输所述第二窗口的窗口数据的带宽和所述第二通道集合中的传输通道的带宽之间的差值小于或等于所述第一阈值时,所述方法还包括:
在预设的调整范围内,缩小所述第二窗口的大小,使得所述第二通道集合中的传输通道的带宽大于或等于传输所述第二窗口的窗口数据的带宽。
4.根据权利要求3所述的方法,其特征在于,所述缩小所述第一窗口的大小,或者缩小所述第二窗口的大小,包括:
自动缩小所述第一窗口或所述第二窗口的大小;或者
检测到用户的第一操作,响应于所述第一操作,缩小所述第一窗口或所述第二窗口的大小。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述第一窗口和所述第二窗口没有重叠区域;或者
所述第一窗口和所述第二窗口具有重叠区域。
6.根据权利要求5所述的方法,其特征在于,当所述第一窗口和所述第二窗口具有重叠区域时,所述方法还包括:
获取所述第一窗口和所述第二窗口的显示层级的信息;
当所述第二窗口在所述第一窗口的上一层显示时,确定所述第一窗口中除去所述重叠区域之外的区域所包括的待传输数据;
根据所述待传输数据,从多个传输通道中确定所述第一通道集合;或者
当所述第一窗口在所述第二窗口的上一层显示时,确定所述第二窗口中除去所述重叠区域之外的区域所包括的待传输数据;
根据所述待传输数据,从多个传输通道中确定所述第二通道集合。
7.根据权利要求1至4、6中任一项所述的方法,其特征在于,所述第一窗口和所述第二窗口是同一个应用的不同界面;或者
所述第一窗口和所述第二窗口是不同应用的不同界面。
8.根据权利要求5所述的方法,其特征在于,所述第一窗口和所述第二窗口是同一个应用的不同界面;或者
所述第一窗口和所述第二窗口是不同应用的不同界面。
9.根据权利要求1至4、6、8中任一项所述的方法,其特征在于,
所述第一通道集合传输所述第一窗口的窗口数据的速率不同于所述第二通道集合传输所述第二窗口的窗口数据的速率;和/或
所述第一窗口的窗口数据的压缩方式不同于所述第二窗口的窗口数据的压缩方式。
10.根据权利要求5所述的方法,其特征在于,
所述第一通道集合传输所述第一窗口的窗口数据的速率不同于所述第二通道集合传输所述第二窗口的窗口数据的速率;和/或
所述第一窗口的窗口数据的压缩方式不同于所述第二窗口的窗口数据的压缩方式。
11.根据权利要求7所述的方法,其特征在于,
所述第一通道集合传输所述第一窗口的窗口数据的速率不同于所述第二通道集合传输所述第二窗口的窗口数据的速率;和/或
所述第一窗口的窗口数据的压缩方式不同于所述第二窗口的窗口数据的压缩方式。
12.一种电子设备,其特征在于,包括:
显示屏;
一个或多个处理器;
一个或多个存储器;
安装有多个应用程序的模块;
所述存储器存储有一个或多个程序,所述一个或多个程序包括指令,当所述指令被所述电子设备执行时,使得所述电子设备执行如权利要求1至11中任一项所述的显示多个窗口的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1至11中任一项所述的显示多个窗口的方法。
CN202010707799.3A 2020-07-21 2020-07-21 一种显示多个窗口的方法及电子设备 Active CN114040238B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202010707799.3A CN114040238B (zh) 2020-07-21 2020-07-21 一种显示多个窗口的方法及电子设备
CN202310022651.XA CN116055786B (zh) 2020-07-21 2020-07-21 一种显示多个窗口的方法及电子设备
PCT/CN2021/105616 WO2022017205A1 (zh) 2020-07-21 2021-07-09 一种显示多个窗口的方法及电子设备
EP21846980.7A EP4178213A4 (en) 2020-07-21 2021-07-09 MULTIPLE WINDOW DISPLAY METHOD AND ELECTRONIC DEVICE
US18/006,301 US20230305864A1 (en) 2020-07-21 2021-07-09 Method for Displaying Plurality of Windows and Electronic Device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010707799.3A CN114040238B (zh) 2020-07-21 2020-07-21 一种显示多个窗口的方法及电子设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202310022651.XA Division CN116055786B (zh) 2020-07-21 2020-07-21 一种显示多个窗口的方法及电子设备

Publications (2)

Publication Number Publication Date
CN114040238A CN114040238A (zh) 2022-02-11
CN114040238B true CN114040238B (zh) 2023-01-06

Family

ID=79728477

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202310022651.XA Active CN116055786B (zh) 2020-07-21 2020-07-21 一种显示多个窗口的方法及电子设备
CN202010707799.3A Active CN114040238B (zh) 2020-07-21 2020-07-21 一种显示多个窗口的方法及电子设备

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202310022651.XA Active CN116055786B (zh) 2020-07-21 2020-07-21 一种显示多个窗口的方法及电子设备

Country Status (4)

Country Link
US (1) US20230305864A1 (zh)
EP (1) EP4178213A4 (zh)
CN (2) CN116055786B (zh)
WO (1) WO2022017205A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113012263A (zh) * 2021-03-16 2021-06-22 维沃移动通信有限公司 图层合成方式的配置方法和电子设备
CN114610424A (zh) * 2022-02-11 2022-06-10 阿里巴巴(中国)有限公司 数据处理方法、云端应用的窗口显示方法和存储介质
CN114648951B (zh) * 2022-02-28 2023-05-12 荣耀终端有限公司 控制屏幕刷新率动态变化的方法及电子设备
CN116932102A (zh) * 2022-03-31 2023-10-24 华为技术有限公司 电子设备及其应用显示方法和介质
CN115482789B (zh) * 2022-09-29 2023-05-30 广州文石信息科技有限公司 基于多通道的画面显示方法、装置、终端设备和存储介质
CN116523729B (zh) * 2023-06-27 2023-09-15 深流微智能科技(深圳)有限公司 一种图形处理设备、图形渲染管线分配方法及相关装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101523481A (zh) * 2006-10-13 2009-09-02 飞思卡尔半导体公司 用于使显示具有不同帧速率的视频数据的窗口迭加的图像处理设备
CN103505230A (zh) * 2012-06-25 2014-01-15 通用电气公司 图像显示方法
CN110580125A (zh) * 2018-06-07 2019-12-17 广州视源电子科技股份有限公司 显示界面的局部刷新方法、装置、设备及介质
CN111341286A (zh) * 2020-02-25 2020-06-26 惠州Tcl移动通信有限公司 屏幕显示控制方法、装置、存储介质及终端

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8607158B2 (en) * 2010-12-09 2013-12-10 International Business Machines Corporation Content presentation in remote monitoring sessions for information technology systems
US9141264B2 (en) * 2011-12-14 2015-09-22 International Business Machines Corporation Variable refresh rates for portions of shared screens
CN103473051B (zh) * 2013-09-02 2017-03-15 小米科技有限责任公司 一种节省终端功耗的方法和装置
US9653029B2 (en) * 2014-08-05 2017-05-16 Apple Inc. Concurrently refreshing multiple areas of a display device using multiple different refresh rates
US9905199B2 (en) * 2014-09-17 2018-02-27 Mediatek Inc. Processor for use in dynamic refresh rate switching and related electronic device and method
WO2016046589A1 (en) * 2014-09-26 2016-03-31 Intel Corporation Techniques for enhancing user experience in video conferencing
WO2016203288A1 (en) * 2015-06-15 2016-12-22 B-K Medical Aps Display of imaging data in a moving viewport
CN106933526B (zh) * 2017-03-10 2019-03-15 Oppo广东移动通信有限公司 一种动态调节屏幕刷新率的方法、装置及移动终端
US11054886B2 (en) * 2017-04-01 2021-07-06 Intel Corporation Supporting multiple refresh rates in different regions of panel display
CN109345992A (zh) * 2017-08-01 2019-02-15 富泰华工业(深圳)有限公司 电子装置及屏幕刷新频率的调整方法
US20190057647A1 (en) * 2017-08-18 2019-02-21 Universal Display Corporation Low latency low video bandwidth oled display architecture
US20190156785A1 (en) * 2017-11-20 2019-05-23 Qualcomm Incorporated Method and apparatus for refresh rate regions on video-mode display panels
US10475405B2 (en) * 2017-12-07 2019-11-12 Qualcomm Incorporated Dynamic control of display refresh rate based on user interface activity
CN109445736A (zh) * 2018-10-26 2019-03-08 维沃移动通信有限公司 一种分屏显示方法及移动终端
CN111131622A (zh) * 2019-12-31 2020-05-08 联想(北京)有限公司 刷新频率调整方法、装置、电子设备及可读存储介质
US11726801B2 (en) * 2021-04-05 2023-08-15 Microsoft Technology Licensing, Llc Management of user interface elements based on historical configuration data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101523481A (zh) * 2006-10-13 2009-09-02 飞思卡尔半导体公司 用于使显示具有不同帧速率的视频数据的窗口迭加的图像处理设备
CN103505230A (zh) * 2012-06-25 2014-01-15 通用电气公司 图像显示方法
CN110580125A (zh) * 2018-06-07 2019-12-17 广州视源电子科技股份有限公司 显示界面的局部刷新方法、装置、设备及介质
CN111341286A (zh) * 2020-02-25 2020-06-26 惠州Tcl移动通信有限公司 屏幕显示控制方法、装置、存储介质及终端

Also Published As

Publication number Publication date
EP4178213A4 (en) 2023-12-27
US20230305864A1 (en) 2023-09-28
WO2022017205A1 (zh) 2022-01-27
CN116055786B (zh) 2023-09-29
EP4178213A1 (en) 2023-05-10
CN116055786A (zh) 2023-05-02
CN114040238A (zh) 2022-02-11

Similar Documents

Publication Publication Date Title
CN114040238B (zh) 一种显示多个窗口的方法及电子设备
EP3955104A1 (en) Screen projection method and system and related apparatus
CN115473957B (zh) 一种图像处理方法和电子设备
WO2020093988A1 (zh) 一种图像处理方法及电子设备
WO2022105445A1 (zh) 基于浏览器的应用投屏方法及相关装置
WO2022262313A1 (zh) 基于画中画的图像处理方法、设备、存储介质和程序产品
CN110636554B (zh) 数据传输方法及装置
CN113254120A (zh) 数据处理方法和相关装置
CN114040242A (zh) 投屏方法和电子设备
CN113935898A (zh) 图像处理方法、系统、电子设备及计算机可读存储介质
CN113722030A (zh) 一种显示方法、电子设备及计算机存储介质
CN115048012A (zh) 数据处理方法和相关装置
US20230335081A1 (en) Display Synchronization Method, Electronic Device, and Readable Storage Medium
CN114756184A (zh) 协同显示方法、终端设备及计算机可读存储介质
CN115119048A (zh) 一种视频流处理方法及电子设备
WO2022135195A1 (zh) 显示虚拟现实界面的方法、装置、设备和可读存储介质
CN115686403A (zh) 显示参数的调整方法、电子设备、芯片及可读存储介质
CN115328414A (zh) 协同显示方法、电子设备、介质以及程序产品
WO2024066834A1 (zh) Vsync信号的控制方法、电子设备、存储介质及芯片
EP4207782A1 (en) Screen mirroring method and apparatus, device, and storage medium
EP4236301A1 (en) Frame rate switching method and apparatus
EP4276618A1 (en) Image processing method, electronic device, and storage medium
EP4239467A1 (en) Frame rate switching method and device
WO2022228102A1 (zh) 通信资源调度方法和电子设备
CN115904185A (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