WO2015067143A1 - 显示帧生成方法和终端设备 - Google Patents

显示帧生成方法和终端设备 Download PDF

Info

Publication number
WO2015067143A1
WO2015067143A1 PCT/CN2014/090003 CN2014090003W WO2015067143A1 WO 2015067143 A1 WO2015067143 A1 WO 2015067143A1 CN 2014090003 W CN2014090003 W CN 2014090003W WO 2015067143 A1 WO2015067143 A1 WO 2015067143A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal
application
synthesizing
applications
display frame
Prior art date
Application number
PCT/CN2014/090003
Other languages
English (en)
French (fr)
Inventor
陈磊
韩华元
Original Assignee
华为终端有限公司
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
Priority to CN201310547960.5 priority Critical
Priority to CN201310547960.5A priority patent/CN103593155B/zh
Application filed by 华为终端有限公司 filed Critical 华为终端有限公司
Publication of WO2015067143A1 publication Critical patent/WO2015067143A1/zh

Links

Images

Classifications

    • 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/12Synchronisation between the display unit and other units, e.g. other display units, video-disc players
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • 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/36Control 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/363Graphics controllers
    • 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/36Control 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/39Control of the bit-mapped memory
    • G09G5/399Control of the bit-mapped memory using two or more bit-mapped memories, the operations of which are switched in time, e.g. ping-pong buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital 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
    • G06F3/1431Digital 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 using a single graphics controller
    • 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
    • G09G2354/00Aspects of interface with display user

Abstract

本发明公开了一种显示帧生成方法和终端设备。该显示帧生成方法包括:在判断终端设备当前运行的各应用的绘制操作或终端设备的应用框架层的合成操作的执行结果满足预定条件的情况下,调整各应用的绘制执行方式和应用框架层的合成执行方式;各应用以调整后的绘制执行方式执行绘制操作,以绘制出各应用的图像;应用框架层以调整后的合成执行方式执行合成操作,以将各应用的图像合成为一个显示帧。本发明的显示帧生成方法和终端设备,能够控制各应用的绘制执行方式和应用框架层的合成执行方式,以减少由于绘制执行方式、合成执行方式不合理而引起的跳帧,有效优化了终端设备的系统显示帧率,从而有效提升了终端设备的显示刷新的及时性。

Description

显示帧生成方法和终端设备
本申请要求于2013年11月06日提交中国专利局、申请号为201310547960.5、发明名称为“显示帧生成方法和终端设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信技术领域,尤其涉及一种显示帧生成方法和终端设备。
背景技术
在安装有操作系统如安卓(Android)系统的终端设备如手机的显示刷新流程中,显示任一个显示帧的过程是:各应用如桌面或流量监控等,执行绘图(Render)操作,以分别绘制各自的图像;待所有应用完成Render操作后,系统执行合成(Compose)操作,以将各应用所绘制的图像合成为一个显示帧如将某个图像置底、将某个图像置顶等;将该显示帧输出到屏幕上进行最终显示。因此,显示一个显示帧所用的时长,主要取决于:各应用执行Render操作所用的时长中的最大值、系统执行Compose所用的时长、和将该显示帧输出到屏幕上所用的时长。
为了提高显示帧的平滑性,引入了同步(Vsync)刷新机制。在同步刷新机制中,通过发出同步信号来产生周期性中断,以使得各应用执行的任一Render操作或系统执行的任一Compose操作都是由同步信号来触发启动的,从而使整个显示刷新流程能够有序进行。
然而,当手机的硬件配置的性能较低时,Render操作或Compose操作的时长有可能大于一个同步信号周期,从而出现跳帧,降低了系统的显示刷新的及时性。
发明内容
解决问题
有鉴于此,本发明要解决的问题为:如何优化终端设备的系统的显示 帧率,以有效提升显示刷新的及时性。
技术方案
为了解决上述问题,在第一方面,本发明提供了一种显示帧生成方法,包括:在判断所述终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件的情况下,调整各所述应用的绘制执行方式和所述应用框架层的合成执行方式;各所述应用以调整后的所述绘制执行方式执行绘制操作,以绘制出各所述应用的图像;所述应用框架层以调整后的所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
结合第一方面,在第一种可能的实现方式中,所述判断所述终端设备当前运行的各应用的绘制操作或所述终端设备应用框架层的合成操作的执行结果满足预定条件,包括:若所述应用执行所述绘制操作所用时长超出绘制时间门限,则判断满足所述预定条件;或若所述应用执行所述绘制操作所用时长超出绘制时间门限的连续次数超出次数门限,则判断满足所述预定条件;或若所述应用框架层执行所述合成操作所用时长超出合成时间门限,则判断满足所述预定条件;或若所述应用框架层执行所述合成操作所用时长超出合成时间门限的连续次数超出所述次数门限,则判断满足所述预定条件。
结合第一方面,在第二种可能的实现方式中,所述判断所述终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件,包括:若在设定时间范围内,所述应用执行所述绘制操作和所述应用框架层执行所述合成操作的系统帧率低于帧率门限,则判断满足所述预定条件。
结合第一方面或上述任一可能的实现方式,在第三种可能的实现方式中,所述各所述应用以调整后的所述绘制执行方式执行绘制操作,包括:各所述应用根据虚拟同步信号以调整后的所述绘制执行方式执行所述绘制操作,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;所述应用框架层以调整后的所述合成执行方式执行合成操作,包括:所述应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操 作,以将各所述应用的图像合成为一个显示帧。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,在将各所述应用的图像合成为一个显示帧之后,包括:根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
为了解决上述问题,在第二方面,本发明提供了一种显示帧生成方法,包括:所述终端设备当前运行的各应用根据虚拟同步信号以绘制执行方式执行所述绘制操作,以绘制出各所述应用的图像,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;所述终端设备的应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
结合第二方面,在第一种可能的实现方式中,在将各所述应用的图像合成为一个显示帧之后,包括:根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
为了解决上述问题,在第三方面,本发明提供了一种终端设备,包括:调整单元,用于在判断所述终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件的情况下,调整各所述应用的绘制执行方式和所述应用框架层的合成执行方式;绘制单元,与所述调整单元连接,用于使各所述应用以调整后的所述绘制执行方式执行绘制操作,以绘制出各所述应用的图像;合成单元,与所述调整单元连接,用于使所述应用框架层以调整后的所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
结合第三方面,在第一种可能的实现方式中,还包括判定单元,与所述调整单元连接,用于判断终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件。所述判定单元包括以下子单元的任意一个或者多个:第一判断子单元,用于若所述应用执行所述绘制操作所用时长超出绘制时间门限,则判断满足所述预定条件;第二判断子单元,用于若所述应用执行所述绘制操作所用时长超出绘 制时间门限的连续次数超出次数门限,则判断满足所述预定条件;第三判断子单元,用于若所述应用框架层执行所述合成操作所用时长超出合成时间门限,则判断满足所述预定条件;第四判断子单元,用于若所述应用框架层执行所述合成操作所用时长超出合成时间门限的连续次数超出所述次数门限,则判断满足所述预定条件。
结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述判定单元还包括第五判断子单元,用于若在设定时间范围内,所述应用执行所述绘制操作和所述应用框架层执行所述合成操作的系统帧率低于帧率门限,则判断满足所述预定条件。
结合第三方面或上述任一可能的实现方式,在第三种可能的实现方式中,所述绘制单元还用于:使各所述应用根据虚拟同步信号以调整后的所述绘制执行方式执行所述绘制操作,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;所述合成单元还用于,使所述应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
结合第三方面的第三种可能的实现方式,在第四种可能的实现方式中,还包括发送单元,与所述合成单元连接,用于在将各所述应用的图像合成为一个显示帧之后,根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
为了解决上述问题,在第四方面,本发明提供了一种终端设备,包括:延迟绘制单元,用于使所述终端设备当前运行的各应用根据虚拟同步信号以绘制执行方式执行所述绘制操作,以绘制出各所述应用的图像,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;延迟合成单元,用于使所述终端设备的应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
结合第四方面,在第一种可能的实现方式中,还包括发送单元,与所述延迟合成单元连接,用于在将各所述应用的图像合成为一个显示帧之后,根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个 系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
有益效果
通过终端设备根据当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果,根据本发明上述实施例的显示帧生成方法和终端设备,能够控制各所述应用的绘制执行方式和所述应用框架层的合成执行方式,以减少由于绘制执行方式、合成执行方式不合理而引起的跳帧,有效优化了终端设备的系统的显示帧率,从而有效提升了终端设备的显示刷新的及时性。
根据下面参考附图对示例性实施例的详细说明,本发明的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的说明书附图与说明书一起示出了本发明的示例性实施例、特征和方面,并且用于解释本发明的原理。
图1示出了根据本发明一实施例的显示帧生成方法的流程图;
图2示出了根据本发明一实施例的显示帧生成方法中Android系统的显示刷新原理框架的示意图;
图3示出了根据本发明另一实施例的显示帧生成方法中Android系统的Vsync显示刷新机制的示意图;
图4示出了根据本发明另一实施例的显示帧生成方法中绘制操作的处理结果满足预定条件的情况的示意图;
图5示出了根据本发明另一实施例的显示帧生成方法中合成操作的处理结果满足预定条件的情况的示意图;
图6示出了根据本发明又一实施例的显示帧生成方法的流程图;
图7示出了根据本发明又一实施例的显示帧生成方法中方式一得到的Android系统的Vsync显示刷新机制的示意图;
图8示出了根据本发明又一实施例的显示帧生成方法中方式二得到的Android系统的Vsync显示刷新机制的示意图;
图9示出了根据本发明一实施例的显示帧生成方法的流程图;
图10示出了根据本发明又一实施例的显示帧生成方法的流程图;
图11示出了根据本发明一实施例的终端设备的结构框图;
图12示出了根据本发明另一实施例的终端设备的结构框图;
图13示出了根据本发明一实施例的终端设备的结构框图;
图14示出了根据本发明另一实施例的终端设备的结构框图;
图15为本发明实施例提供的一种移动终端的结构示意图;以及
图16为本发明实施例提供的另一种移动终端的结构示意图。
具体实施方式
以下将参考附图详细说明本发明的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有这些具体细节,本发明同样可以实施。在另外一些实例中,对于大家熟知的方法、手段、元件和电路未作详细描述,以便于凸显本发明的主旨。
实施例一
图1示出了根据本发明一实施例的显示帧生成方法的流程图。如图1所示,该显示帧生成方法包括以下步骤:
步骤S110、在判断终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件的情况下,调整各所述应用的绘制执行方式和所述应用框架层的合成执行方式;
步骤S120、各所述应用以调整后的所述绘制执行方式执行绘制操作,以绘制出各所述应用的图像;
步骤S130、所述应用框架层以调整后的所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
图2示出根据本发明一实施例的显示帧生成方法中Android系统的显示 刷新原理框架的示意图。如图2所示,以Android系统为例,从用户开始在终端设备如手机上通过各个应用程序(以下简称为应用)绘制图像到该图像显示在显示屏如LCD显示屏上的过程,具体可以包括以下步骤:
首先,在应用(Application)层,各个应用按照自己的应用设计情况,各自单独执行绘制(Render)操作,并在绘制操作处理完成后,各应用将绘制的图像发送给应用框架(Framework)层的负责刷新屏幕的服务端(Surface flinger)。
其次,在应用框架层,系统有三个FB(Frame Buffer,帧缓冲器),三个FB可以循环使用。Surface flinger从三个FB中,找出一个空闲的FB,并在该空闲的FB上,根据应用配置信息,例如哪个图像应该置底、哪个图像应该置顶、哪个图像采用透底效果等,通过合成(Compose)操作,将各个应用分别绘制的多个图像叠加在一起,得到最终显示在LCD屏幕上的图像即显示帧。
最后,在内核(Kernel)层,可以将显示帧由MDP(Mobile Display Process,移动终端显示处理)模块通过MDDI(Mobile Display Digital Interface,面向手机的高速串列接口)传输给显示硬件(包括显示控制器和显示屏)如LCD硬件(包括LCD控制器和LCD显示屏),就是最终显示在显示屏上的图像。
在Android系统中,系统根据终端设备的硬件配置信息和所述终端设备当前运行的各个应用的信息,确定配置策略,即确定各应用的绘制执行方式和应用框架层的合成执行方式。在应用(Application)层,各应用可以采用该配置策略中的绘制执行方式执行绘制操作,以绘制出各应用的图像,并将绘制出的图像发送给Surface flinger;在应用框架层,Surface flinger找出空闲的FB,以该配置策略中的合成执行方式执行合成操作,以将各应用的图像合成为一个显示帧;在内核(Kernel)层,由MDP模块将该显示帧传输至显示屏上进行显示。
具体地,Render操作可以是终端设备响应于用户在显示屏上通过滑动完成的操作例如手写输入文字或字符、绘图、拖动菜单等,使各应用完成的绘制图像的操作。其中,Render执行方式,可以为软件方式、硬件方式 或其他方式;Compose执行方式,也可以为软件方式、硬件方式或其他方式。软件方式一般是在终端设备的CPU(Central Processing Unit,中央处理器)中使用算法实现Render操作。硬件方式一般是在终端设备的GPU(Graphic Processing Unit,图形处理器)或MDP中使用专用芯片来实现Render操作。如果终端设备的硬件功能足够强大复杂,还可以提供更多的Render执行方式和Compose执行方式。
本实施例的显示帧生成方法,通过终端设备根据当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果,可以控制各所述应用的绘制执行方式和所述应用框架层的合成执行方式,从而减少由于绘制执行方式、合成执行方式不合理而引起的跳帧,优化了终端设备的系统的显示帧率,提升了终端设备的显示刷新的及时性。
实施例二
本实施例的方法与图1所示方法的主要区别在于,结合绘制操作所用时长、合成操作所用时长等因素,确定应用运行情况和系统负载情况,步骤S110中,判断终端设备当前运行的各应用的绘制操作或所述终端设备应用框架层的合成操作的执行结果满足预定条件,具体可以包括以下任意一种情况:
情况一、若所述应用执行所述绘制操作所用时长超出绘制时间门限,则判断满足预定条件。
情况二、若所述应用执行所述绘制操作所用时长超出绘制时间门限的连续次数超出次数门限,则判断满足预定条件。
情况三、若所述应用框架层执行所述合成操作所用时长超出合成时间门限,则判断满足预定条件。
情况四、若所述应用框架层执行所述合成操作所用时长超出合成时间门限的连续次数超出所述次数门限,则判断满足预定条件。
具体地,终端设备从各应用开始绘制图像到最终该图像显示在显示屏的过程所耗费的总时长(以下简称为跟手时长),取决于绘制操作所用时长(Render时长)、合成操作所用时长(Compose时长)和显示刷新时长。
其中,Render时长为绘制操作所用时长,即应用绘制一个图像所花费 的时长。Render时长受到以下因素影响:
(1)应用绘制图像的策略:例如应用可以直接绘制当前图像,还是必须获取某些必须信息后才能显示。例如:如果需要显示通信录,则需要先从终端设备的数据库中获取当前手机通信录信息,则获取信息所需的额外时长也要算在Render时长中。
(2)应用绘制图像的大小:例如应用需要绘制整屏图像,还是需要修改其中一个小图标。通常,需要绘制的图像越大,Render时长越长。
(3)应用绘制图像的方式:应用可以是在终端设备上使用软件方式(如在终端设备的CPU中用算法实现)或硬件方式(如在终端设备的GPU或MDP中使用专用芯片实现)执行Render操作。如果采用软件方式绘图,则CPU频率和CPU当前负载情况对Render时长有重大影响;如果采用硬件方式绘图,则GPU处理能力和GPU当前负载情况对Render时长有重大影响。另外,由于一个应用一般可以任意安装在采用不同硬件配置的不同手机上。不同手机的CPU处理频率、GPU显示处理能力等千差万别,同一个应用,在某些GPU处理能力强的手机上,可能是硬件方式画图效果更好,但在某些CPU能力强而GPU能力差的手机上,可能是软件方式画图效果更好。
Compose时长为系统应用框架层的Surface flinger将多个图像叠加在一起所花费的时长。Compose时长受到以下因素影响:
(1)当前系统硬件的处理能力以及负载情况。系统一般会默认采用GPU方式执行Compose操作,因此GPU处理能力和GPU当前负载情况对Compose时长有重大影响。
(2)系统Compose的图像的数量。通常,系统需要Compose的图像越多,则Compose时长越长。
显示刷新时长为手机将FB中一帧图像传递到显示屏如LCD显示屏上的时长。显示刷新时长受到以下因素影响:
(1)显示屏所要显示的一帧图像的数据量的大小。显示屏所要显示的一帧图像的数据量越大,则显示刷新时长越长。
(2)总线传输速率,也就是将图像由MDP模块通过MDDI传输给显 示屏所使用的总线传输速率。总线传输速率越大,则显示刷新时长越长。
对于具体的终端设备如某个手机,同一个显示帧的显示刷新时长一般是固定的,并通常满足Android系统的Vsync显示刷新机制的要求,除非手机厂家采用极低的硬件配置去支持很大的LCD屏幕尺寸。
综上所述,由于受多方面因素影响,实际的Render时长和实际的Compose时长很不稳定,影响系统的显示帧率(以下简称为帧率)。
图3示出了本发明另一实施例的显示帧生成方法中Android系统的Vsync显示刷新机制的示意图。如图3所示,在Android系统的google J版本中,引入了同步(Vsync)刷新机制。具体地,Vsync刷新机制其实就是在整个显示流程中,插入“心跳”即系统同步(Vsync)信号,由显示控制器发送给CPU,用于产生Vsync中断,以控制每次Render操作和Compose操作都需要按照心跳来完成,从而将整个显示过程中的关键步骤都纳入到Vsync的统一管理机制。Vsync信号频率目前常见为60Hz和75Hz两种,适用于不同硬件配置的终端设备。如果每一帧的Render时长、Compose时长、显示刷新时长都能够控制在一个Vsync信号周期内,则能够保证帧率稳定达到理想值,从而保证了显示帧的平滑性。其中,Vsync信号周期为显示控制器发送Vsync信号的时间间隔。
例如:如图3所示,假设Vsync信号周期为T,不考虑信号的传输延迟,第一个Vsync信号Vsync1到达CPU后,CPU向各应用转发该第一个Vsync信号Vsync1,各应用响应于用户在显示屏上的触摸滑动操作,开始执行Render操作;并在各应用完成Render操作后,得到各应用所绘制的多个图像;如果Render操作在小于一个Vsync信号周期内完成,则在该Vsync信号Vsync1周期内剩余的时长为等待时长。第二个Vsync信号Vsync2到达CPU后,CPU向系统转发该第二个Vsync信号Vsync2,系统开始执行Compose操作,将各应用所绘制的多个图像进行合成,并在系统完成Compose操作后,生成显示帧;如果Compose操作在小于一个Vsync信号周期内完成,则在该Vsync信号Vsync2周期内剩余的时长为等待时长。第三个Vsync信号Vsync3到达CPU后,系统开始执行显示刷新,并将该显示帧最终显示在显示屏上。可知生成该显示帧所用时长为为T0=2T。
图4和图5示出了根据本发明另一实施例的显示帧生成方法中,绘制操作和/或合成操作的处理结果满足预定条件的示意图。假设绘制时间门限和合成时间门限都是一个Vsync信号周期。如图4所示,在第2帧中,由于Render时长超过一个Vsync信号周期,导致在第四个Vsync信号Vsync4周期内由于无显示帧显示在显示屏上,从而出现跳帧(丢帧)。如图5所示,在第2帧中,由于Compose时长超过一个Vsync信号周期,导致在第四个Vsync信号Vsync4周期内由于无显示帧显示在显示屏上,从而出现跳帧。上述两种情况都会降低帧率。因此,将Render时长和Compose时长都控制在一个Vsync信号周期内,可以避免丢帧,从而保证帧率。
在一种可能的实现方式中,结合设定时间范围、系统帧率等因素,确定应用运行情况和系统负载情况,步骤S110中,判断终端设备当前运行的各应用的绘制操作或所述终端设备应用框架层的合成操作的执行结果满足预定条件,还可以包括:
情况五、若在设定时间范围内,应用执行绘制操作和应用框架层执行合成操作的系统帧率低于帧率门限,则判断满足预定条件。
具体地,可以通过帧率来决定当前的配置策略是否合理,需要经过一定时间例如在生成100~200帧后,统计出一个合理的帧率后,再与设置的帧率门限进行比较。其中,帧率门限可以根据终端设备的硬件配置预先设置。例如:如果终端设备的Vsync信号频率为60Hz,则可以将帧率门限设置为60帧/秒。如果此时检测到的实际帧率为59帧/秒,则确定该应用的Render操作和/或该系统的Compose操作的处理结果满足预定条件,即当前配置策略不合理,需要调整应用的Render执行方式和/或该系统的Compose执行方式。
进一步地,绘制时间门限和合成时间门限可以分别根据经验数据库中的推荐配置或历史数据库中的历史配置来确定。绘制时间门限和合成时间门限可以相同或不同。
具体地,终端设备的系统内部可以建立一个经验数据库。根据常见的各种终端设备的硬件处理能力和各种常见的应用,通过测试不同终端设备的Compose执行方式和不同应用的Render执行方式的各种可能组合,可以 得到一个推荐配置,可以将该推荐配置放入经验数据库中。其中,推荐配置可以为该终端设备上各个应用的Render执行方式和系统的Compose执行方式的组合。当用户启动某一应用时,可以将该推荐配置作为当前的配置策略。
此外,终端设备上系统内部还可以建立一个历史数据库。例如:在该终端设备上,在用户每次启动该应用并生成显示帧后,如果检测到的帧率高于帧率门限,则系统可以自动记录此次该应用的Render执行方式和系统的Compose执行方式的组合作为历史配置,并将该历史配置放入历史数据库中。当用户再次启动该应用时,可以将该历史配置作为当前的配置策略,从而不必重新确定当前的配置策略,降低了系统的负载。
进一步,在终端设备的实际使用过程中,由于各应用的实际运行情况和系统的实际负载情况是动态变化的,因此绘制操作所用时长和合成操作所用时长也是动态变化的。在经验数据库中,根据对该终端设备上该应用的Render时长和系统的Compose时长的多次测试的结果,可以得到该应用的Render时长和系统的Compose时长所允许的波动范围。
例如:在经验数据库或历史数据库中,不但可以得到各应用的推荐配置或历史配置的绘制时间门限R0和合成时间门限C0,还可以根据对该终端设备上该应用的Render时长和系统的Compose时长的多次测试的结果,统计得到该推荐配置的Render时长的波动范围(r1,r2)和Compose时长的波动范围(c1,c2),据此可以得到Render波动系数为α1=(r1+r2)/2r0,Compose波动系数为α2=(c1+c2)/2c0。因此,据此得到更新后的绘制时间门限为R=R01,更新后的合成时间门限为C=C02
本实施例的显示帧生成方法,结合绘制操作所用时长、合成操作所用时长、设定时间范围或系统帧率等因素,确定应用运行情况和系统负载情况,从而调整各应用的绘制执行方式和应用框架层的合成执行方式,有效提升了终端设备的显示刷新的及时性。
实施例三
图6示出了根据本发明又一实施例的显示帧生成方法的流程图。图6中与图1标号相同的步骤具有相同的功能,为简明起见,省略对这些步骤 的详细说明。如图6所示,图6所示方法与图1所示方法的主要区别在于,当Render时长和Compose时长都小于一个系统同步信号(Vsync信号)周期时,使用虚拟同步信号(虚拟Vsync信号),以减少跟手时长,从而进一步提高了显示刷新的及时性。
具言之,步骤S120,还可以具体包括以下步骤:
步骤S610、各所述应用根据虚拟同步信号以调整后的所述绘制执行方式执行所述绘制操作,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号。
相应地,步骤S130,还可以具体包括以下步骤:
步骤S620、所述应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
在步骤S620之后,还可以包括:
步骤S630、根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
如图3所示,对于某些具有高处理能力的硬件配置的终端设备,如果Render操作和Compose操作都在远小于一个Vsync信号周期内完成,则剩余的时长就在等待Vsync信号到达的过程中白白浪费了。该剩余的时长又称为等待时长。例如:根据在使用了高通MSM8*30平台的终端设备上的测试结果,Render时长约为6ms~8ms,则在该Vsync信号周期内执行Render操作后的等待时长约为8ms~10ms;Compose时长约为10ms~12ms,则在该Vsync信号周期内执行Compose操作后的等待时长约为4ms~6ms。由于等待时长的存在,用户感觉终端设备显示刷新不及时。因此,可以采用虚拟同步信号(虚拟Vsync信号)提高终端设备显示刷新的及时性,使得Render操作只有在虚拟Vsync信号到达后才启动。其中,虚拟同步信号为系统同步信号经过设定的延迟时长Δt1后得到的延迟信号。根据不同终端设备的硬件配置,可以预先设置Δt1的取值。
其中,步骤610和步骤620根据虚拟同步信号执行绘制操作、合成操作的具体方式可以包括:
方式一、虚拟同步信号触发Render操作和Compose操作。
图7示出了根据本发明又一实施例的显示帧生成方法中方式一的示意图。如图7所示,假设Vsync信号周期为T,不考虑信号传输延迟,第一个Vsync信号Vsync1到达CPU后,经过延迟时长△t1后得到虚拟Vsync信号Vsync-1,CPU向各应用转发该虚拟Vsync信号Vsync-1,各应用响应于用户在显示屏上的触摸滑动操作,开始执行Render操作;并在各应用完成Render操作后,得到各应用所绘制的多个图像;如果该Render操作在小于一个Vsync信号周期内完成,则在Vsync-1周期内剩余的时长为等待时长。第二个Vsync信号Vsync2到达CPU后,经过延迟时长△t1后得到虚拟Vsync信号Vsync-2,CPU向系统转发该虚拟Vsync信号Vsync-2,应用框架层开始执行Compose操作,将各应用所绘制的多个图像进行合成,并在完成Compose操作后,生成显示帧;如果该Compose操作在小于一个Vsync信号周期内完成,则在Vsync2周期内剩余的时长为等待时长。第三个Vsync信号Vsync3到达CPU后,系统开始执行显示刷新,并将该显示帧最终显示在显示屏上。可知生成该显示帧所用时长为T1=2T-△t1,相比于图3中生成显示帧所用时长为T0,可知T1<T0,因此,方式一减少了跟手时长,使得Render操作能够反映用户在显示屏上通过触摸滑动所做的最新的绘图操作,从而提高了显示刷新的及时性。
方式二、虚拟同步信号触发Render操作,取消Render操作和Compose操作之间需要等待虚拟Vsync信号到达的机制,使得Render操作和Compose操作可以连续执行,使得用户在显示屏上通过触摸滑动所做的最新的绘图操作。
图8示出了根据本发明又一实施例的显示帧生成方法中方式二的示意图。如图8所示,假设Vsync信号周期为T,不考虑信号传输延迟,第一个Vsync信号Vsync1到达CPU后,经过延迟时长Δt2后得到虚拟Vsync信号Vsync-1,CPU向各应用转发Vsync-1信号,各应用响应于用户在显示屏上的触摸滑动操作,开始执行Render操作,在各应用完成Render操作后,得到各应用所绘制的多个图像;此时系统立即开始执行Compose操作,将各应用所绘制的多个图像进行合成,并在系统完成Compose操作后,生成显 示帧;如果Compose操作在小于一个Vsync信号周期内完成,则在Vsync2周期内剩余的时长为等待时长。第三个Vsync信号Vsync3到达CPU后,系统开始执行显示刷新,并将该显示帧最终显示在显示屏上。可知生成该显示帧所用时长为T2=2T-△t2。相比于图3,可知T2<T0,使得Render操作能够反映用户在显示屏上通过触摸滑动所做的最新的绘图操作,从而提高了显示刷新的及时性。
此外,方式二中,由于Render操作和Compose操作可以连续执行,因此,方式二中的延迟时长△t2的取值可以比方式一中△t1的取值更大,使得Render操作能够反映用户在显示屏上通过触摸滑动所做的更新的绘图操作,进一步提高了显示刷新的及时性。
本实施例的显示帧生成方法,通过使用系统同步信号延迟后得到的虚拟同步信号触发各应用开始执行绘制操作,能够在Render时长和Compose时长都小于一个系统同步信号(Vsync信号)周期的情况下,有效减少跟手时长,从而进一步提升了终端设备的显示刷新的及时性。
实施例四
图9示出了根据本发明一实施例的显示帧生成方法的流程图。
如图9所示,该方法包括以下步骤:
步骤S910、终端设备当前运行的各应用根据虚拟同步信号以绘制执行方式执行所述绘制操作,以绘制出各所述应用的图像,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;
步骤S920、所述终端设备的应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
在一种可能的实现方式中,在步骤S920之后,还包括以下步骤:
步骤S1010、根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
其中,本实施例中显示帧生成方法的具体机制及其有益效果,可以参考图6~图8及其相关描述。
实施例五
图11示出了根据本发明一实施例的终端设备的结构框图。
如图11所示,该终端设备主要包括调整单元1110、绘制单元1120和合成单元1130。其中,调整单元1110,用于在判断所述终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件的情况下,调整各应用的绘制执行方式和所述应用框架层的合成执行方式。绘制单元1120,与所述调整单元1110连接,用于使各所述应用以调整后的所述绘制执行方式执行绘制操作,以绘制出各所述应用的图像。合成单元1130,与所述调整单元1110连接,用于使所述应用框架层以调整后的所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
图12示出了根据本发明另一实施例的终端设备的结构框图。
如图12所示,在一种可能的实现方式中,该终端设备还包括判定单元1210,与所述调整单元1110连接,用于判断终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件。所述判定单元1210包括以下子单元的任意一个或者多个:
第一判断子单元1211,用于若所述应用执行所述绘制操作所用时长超出绘制时间门限,则判断满足所述预定条件;
第二判断子单元1212,用于若所述应用执行所述绘制操作所用时长超出绘制时间门限的连续次数超出次数门限,则判断满足所述预定条件;
第三判断子单元1213,用于若所述应用框架层执行所述合成操作所用时长超出合成时间门限,则判断满足所述预定条件;
第四判断子单元1214,用于若所述应用框架层执行所述合成操作所用时长超出合成时间门限的连续次数超出所述次数门限,则判断满足所述预定条件。
如图12所示,在一种可能的实现方式中,所述判定单元1210还包括第五判断子单元1215,用于若在设定时间范围内,所述应用执行所述绘制操作和所述应用框架层执行所述合成操作的系统帧率低于帧率门限,则判断满足所述预定条件。
在一种可能的实现方式中,所述绘制单元1120还用于,使各所述应用 根据虚拟同步信号以调整后的所述绘制执行方式执行所述绘制操作,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号。所述合成单元1130还用于,使所述应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作。
如图12所示,在一种可能的实现方式中,该终端设备还包括发送单元1220,与所述合成单元1130连接,用于在将各所述应用的图像合成为一个显示帧之后,根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
其中,该终端设备用于显示帧生成的具体机制及其有益效果,可以参见图1~图8及其相关描述。
实施例六
图13示出了根据本发明一实施例的终端设备的结构框图。
如图13所示,该终端设备主要包括延迟绘制单元1310和延迟合成单元1320。其中,延迟绘制单元1310,用于使所述终端设备当前运行的各应用根据虚拟同步信号以绘制执行方式执行所述绘制操作,以绘制出各所述应用的图像,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号.延迟合成单元1320,用于使所述终端设备的应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
图14示出了根据本发明另一实施例的终端设备的结构框图。
如图14所示,在一种可能的实现方式中,该终端设备还包括发送单元1410,与所述延迟合成单元1320连接,用于在将各所述应用的图像合成为一个显示帧之后,根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
其中,该终端设备用于显示帧生成的具体机制及其有益效果,可以参见图9~图10及其相关描述。
实施例七
图15为本发明实施例提供的一种移动终端的结构示意图,本发明实施例提供的移动终端可以用于实施上述图1~图2所示的本发明各实施例实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照图1~图8所示的本发明各实施例。
该移动终端可以为手机、平板电脑、笔记本电脑、UMPC(Ultra-mobile Personal Computer,超级移动个人计算机)、上网本、PDA(Personal Digital Assistant,个人数字助理)等终端设备,本发明实施例以移动终端为手机为例进行说明,图15示出的是与本发明各实施例相关的手机300的部分结构的框图。
如图15所示,手机300包括:RF(radio frequency,射频)电路320、存储器330、输入单元340、显示单元350、重力传感器360、音频电路370、处理器380、以及电源390等部件。本领域技术人员可以理解,图15中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图15对手机300的各个构成部件进行具体的介绍:
RF电路320可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器380处理;另外,将上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、LNA(low noise amplifier,低噪声放大器)、双工器等。此外,RF电路320还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(global system of mobile communication,全球移动通讯系统)、GPRS(general packet radio service,通用分组无线服务)、CDMA(code division multiple access,码分多址)、WCDMA(wideband code division multiple access,宽带码分多址)、LTE(long term evolution,长期演进)、电子邮件、SMS(short messaging service,短消息服务)等。
存储器330可用于存储软件程序以及模块,处理器380通过运行存储在存储器330的软件程序以及模块,从而执行手机300的各种功能应用以及数据处理。存储器330可主要包括存储程序区和存储数据区,其中,存 储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机300的使用所创建的数据(比如音频数据、图像数据、电话本等)等。此外,存储器330可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元340可用于接收输入的数字或字符信息,以及产生与手机300的用户设置以及功能控制有关的键信号输入。具体地,输入单元340可包括触摸屏341以及其他输入设备342。触摸屏341,也称为触控面板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触摸屏341上或在触摸屏341附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触摸屏341可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器380,并能接收处理器380发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触摸屏341。除了触摸屏341,输入单元340还可以包括其他输入设备342。具体地,其他输入设备342可以包括但不限于物理键盘、功能键(比如音量控制按键、电源开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元350可用于显示由用户输入的信息或提供给用户的信息以及手机300的各种菜单。显示单元350可包括显示面板351,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板341。进一步的,触摸屏341可覆盖显示面板351,当触摸屏341检测到在其上或附近的触摸操作后,传送给处理器380以确定触摸事件的类型,随后处理器380根据触摸事件的类型在显示面板351上提供相应的视觉输出。虽然在图3中,触摸屏341与显示面板351是作为两个独立的部件来实现手机300的输入和输出功能,但是在某些实施例中,可以将触摸屏341与显示面板351集成而实现手机300的输入和输出功能。
重力传感器(gravity sensor)360,可以检测手机在各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等。
手机300还可以包括其它传感器,比如光传感器。具体地,光传感器可包括环境光传感器及接近传感器。其中,环境光传感器可根据环境光线的明暗来调节显示面板341的亮度;接近传感器可以检测是否有物体靠近或接触手机,可在手机300移动到耳边时,关闭显示面板341和/或背光。手机300还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路370、扬声器371、麦克风372可提供用户与手机300之间的音频接口。音频电路370可将接收到的音频数据转换后的电信号,传输到扬声器371,由扬声器371转换为声音信号输出;另一方面,麦克风372将收集的声音信号转换为电信号,由音频电路370接收后转换为音频数据,再将音频数据输出至RF电路320以发送给比如另一手机,或者将音频数据输出至存储器330以便进一步处理。
处理器380是手机300的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器330内的软件程序和/或模块,以及调用存储在存储器330内的数据,执行手机300的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器380可包括一个或多个调整单元;优选的,处理器380可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器380中。
手机300还包括给各个部件供电的电源390(比如电池),优选的,电源可以通过电源管理系统与处理器380逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机300还可以包括WiFi(wireless fidelity,无线保真)模块、蓝牙模块等,在此不再赘述。
在本发明实施例中,存储器330还用于存储包括计算机操作指令的程序代码。该程序具体可用于:在判断所述终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件的情况下,调整各所述应用的绘制执行方式和所述应用框架层的合成执行方式;使各所述应用以调整后的所述绘制执行方式执行绘制操作,以绘制出各所述应用的图像;所述应用框架层以调整后的所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
在第一种可能的实现方式中,该程序还可用于:若所述应用执行所述绘制操作所用时长超出绘制时间门限,则判断满足所述预定条件;或若所述应用执行所述绘制操作所用时长超出绘制时间门限的连续次数超出次数门限,则判断满足所述预定条件;或若所述应用框架层执行所述合成操作所用时长超出合成时间门限,则判断满足所述预定条件;或若所述应用框架层执行所述合成操作所用时长超出合成时间门限的连续次数超出所述次数门限,则判断满足所述预定条件。
在第二种可能的实现方式中,该程序还可用于:若在设定时间范围内,所述应用执行所述绘制操作和所述应用框架层执行所述合成操作的系统帧率低于帧率门限,则判断满足所述预定条件。
在第三种可能的实现方式中,该程序还可用于:各所述应用根据虚拟同步信号以调整后的所述绘制执行方式执行所述绘制操作,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;所述应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
在第四种可能的实现方式中,该程序还可用于:在将各所述应用的图像合成为一个显示帧之后,包括:根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
其中,该终端设备用于显示帧生成的具体机制及其有益效果,可以参见图1~图8及其相关描述。
实施例九
图16为本发明实施例提供的一种移动终端的结构示意图,本发明实施例提供的移动终端可以用于实施上述图1~图2所示的本发明各实施例实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照图9~图10所示的本发明各实施例。
该移动终端可以为手机、平板电脑、笔记本电脑、UMPC(Ultra-mobile Personal Computer,超级移动个人计算机)、上网本、PDA(Personal Digital Assistant,个人数字助理)等终端设备,本发明实施例以移动终端为手机为例进行说明,图15示出的是与本发明各实施例相关的手机400的部分结构的框图。
如图15所示,手机400包括:RF(radio frequency,射频)电路420、存储器430、输入单元440、显示单元450、重力传感器460、音频电路470、处理器480、以及电源490等部件。本领域技术人员可以理解,图16中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图16对手机400的各个构成部件进行具体的介绍:
RF电路420可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器480处理;另外,将上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、LNA(low noise amplifier,低噪声放大器)、双工器等。此外,RF电路420还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(global system of mobile communication,全球移动通讯系统)、GPRS(general packet radio service,通用分组无线服务)、CDMA(code division multiple access,码分多址)、WCDMA(wideband code division multiple access,宽带码分多址)、LTE(long term evolution,长期演进)、电子邮件、SMS(short messaging service,短消息服务)等。
存储器430可用于存储软件程序以及模块,处理器480通过运行存储在存储器430的软件程序以及模块,从而执行手机400的各种功能应用以及数据处理。存储器430可主要包括存储程序区和存储数据区,其中,存 储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机400的使用所创建的数据(比如音频数据、图像数据、电话本等)等。此外,存储器430可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元440可用于接收输入的数字或字符信息,以及产生与手机400的用户设置以及功能控制有关的键信号输入。具体地,输入单元440可包括触摸屏441以及其他输入设备442。触摸屏441,也称为触控面板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触摸屏441上或在触摸屏441附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触摸屏441可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器480,并能接收处理器480发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触摸屏441。除了触摸屏441,输入单元440还可以包括其他输入设备442。具体地,其他输入设备442可以包括但不限于物理键盘、功能键(比如音量控制按键、电源开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元450可用于显示由用户输入的信息或提供给用户的信息以及手机400的各种菜单。显示单元450可包括显示面板451,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板441。进一步的,触摸屏441可覆盖显示面板451,当触摸屏341检测到在其上或附近的触摸操作后,传送给处理器480以确定触摸事件的类型,随后处理器480根据触摸事件的类型在显示面板451上提供相应的视觉输出。虽然在图3中,触摸屏441与显示面板451是作为两个独立的部件来实现手机400的输入和输出功能,但是在某些实施例中,可以将触摸屏441与显示面板351集成而实现手机300的输入和输出功能。
重力传感器(gravity sensor)460,可以检测手机在各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等。
手机400还可以包括其它传感器,比如光传感器。具体地,光传感器可包括环境光传感器及接近传感器。其中,环境光传感器可根据环境光线的明暗来调节显示面板441的亮度;接近传感器可以检测是否有物体靠近或接触手机,可在手机400移动到耳边时,关闭显示面板441和/或背光。手机400还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路470、扬声器471、麦克风472可提供用户与手机400之间的音频接口。音频电路470可将接收到的音频数据转换后的电信号,传输到扬声器471,由扬声器471转换为声音信号输出;另一方面,麦克风472将收集的声音信号转换为电信号,由音频电路470接收后转换为音频数据,再将音频数据输出至RF电路420以发送给比如另一手机,或者将音频数据输出至存储器430以便进一步处理。
处理器480是手机400的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器430内的软件程序和/或模块,以及调用存储在存储器430内的数据,执行手机400的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器480可包括一个或多个调整单元;优选的,处理器480可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器480中。
手机400还包括给各个部件供电的电源490(比如电池),优选的,电源可以通过电源管理系统与处理器480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机400还可以包括WiFi(wireless fidelity,无线保真)模块、蓝牙模块等,在此不再赘述。
在本发明实施例中,存储器430还用于存储包括计算机操作指令的程序代码。该程序具体可用于:使所述终端设备当前运行的各应用根据虚拟同步信号以绘制执行方式执行所述绘制操作,以绘制出各所述应用的图像,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;使所述终端设备的应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
在第一种可能的实现方式中,该程序还可用于:在将各所述应用的图像合成为一个显示帧之后,根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
总之,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

  1. 一种显示帧生成方法,其特征在于,包括:
    在判断终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件的情况下,调整各所述应用的绘制执行方式和所述应用框架层的合成执行方式;
    各所述应用以调整后的所述绘制执行方式执行绘制操作,以绘制出各所述应用的图像;
    所述应用框架层以调整后的所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
  2. 根据权利要求1所述的显示帧生成方法,其特征在于,所述判断终端设备当前运行的各应用的绘制操作或所述终端设备应用框架层的合成操作的执行结果满足预定条件,包括:
    若所述应用执行所述绘制操作所用时长超出绘制时间门限,则判断满足所述预定条件;或
    若所述应用执行所述绘制操作所用时长超出绘制时间门限的连续次数超出次数门限,则判断满足所述预定条件;或
    若所述应用框架层执行所述合成操作所用时长超出合成时间门限,则判断满足所述预定条件;或
    若所述应用框架层执行所述合成操作所用时长超出合成时间门限的连续次数超出所述次数门限,则判断满足所述预定条件。
  3. 根据权利要求1所述的显示帧生成方法,其特征在于,所述判断终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件,包括:
    若在设定时间范围内,所述应用执行所述绘制操作和所述应用框架层执行所述合成操作的系统帧率低于帧率门限,则判断满足所述预定条件。
  4. 根据权利要求1至3中任一项所述的显示帧生成方法,其特征在于,所述各所述应用以调整后的所述绘制执行方式执行绘制操作,包括:
    各所述应用根据虚拟同步信号以调整后的所述绘制执行方式执行所述绘制操作,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延 迟信号;
    所述应用框架层以调整后的所述合成执行方式执行合成操作,包括:
    所述应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作。
  5. 根据权利要求4所述的显示帧生成方法,其特征在于,在将各所述应用的图像合成为一个显示帧之后,包括:
    根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
  6. 一种显示帧生成方法,其特征在于,包括:
    终端设备当前运行的各应用根据虚拟同步信号以绘制执行方式执行所述绘制操作,以绘制出各所述应用的图像,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;
    所述终端设备的应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
  7. 根据权利要求6所述的显示帧生成方法,其特征在于,在将各所述应用的图像合成为一个显示帧之后,包括:
    根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
  8. 一种终端设备,其特征在于,包括:
    调整单元,用于在判断所述终端设备当前运行的各应用的绘制操作或所述终端设备的应用框架层的合成操作的执行结果满足预定条件的情况下,调整各所述应用的绘制执行方式和所述应用框架层的合成执行方式;
    绘制单元,与所述调整单元连接,用于使各所述应用以调整后的所述绘制执行方式执行绘制操作,以绘制出各所述应用的图像;
    合成单元,与所述调整单元连接,用于使所述应用框架层以调整后的所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
  9. 根据权利要求8所述的终端设备,其特征在于,还包括判定单元,与所述调整单元连接,用于判断终端设备当前运行的各应用的绘制操作或 所述终端设备的应用框架层的合成操作的执行结果满足预定条件;
    所述判定单元包括以下子单元的任意一个或者多个:
    第一判断子单元,用于若所述应用执行所述绘制操作所用时长超出绘制时间门限,则判断满足所述预定条件;
    第二判断子单元,用于若所述应用执行所述绘制操作所用时长超出绘制时间门限的连续次数超出次数门限,则判断满足所述预定条件;
    第三判断子单元,用于若所述应用框架层执行所述合成操作所用时长超出合成时间门限,则判断满足所述预定条件;
    第四判断子单元,用于若所述应用框架层执行所述合成操作所用时长超出合成时间门限的连续次数超出所述次数门限,则判断满足所述预定条件。
  10. 根据权利要求9所述的终端设备,其特征在于,所述判定单元还包括:
    第五判断子单元,用于若在设定时间范围内,所述应用执行所述绘制操作和所述应用框架层执行所述合成操作的系统帧率低于帧率门限,则判断满足所述预定条件。
  11. 根据权利要求8至10中任一项所述的终端设备,其特征在于,所述绘制单元还用于使各所述应用根据虚拟同步信号以调整后的所述绘制执行方式执行所述绘制操作,所述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;
    所述合成单元还用于使所述应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作。
  12. 根据权利要求11所述的终端设备,其特征在于,还包括发送单元,与所述合成单元连接,用于在将各所述应用的图像合成为一个显示帧之后,根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
  13. 一种终端设备,其特征在于,包括:
    延迟绘制单元,用于使所述终端设备当前运行的各应用根据虚拟同步信号以绘制执行方式执行所述绘制操作,以绘制出各所述应用的图像,所 述虚拟同步信号为系统同步信号经过设定的延迟时长后的延迟信号;
    延迟合成单元,用于使所述终端设备的应用框架层根据所述虚拟同步信号以所述合成执行方式执行合成操作,以将各所述应用的图像合成为一个显示帧。
  14. 根据权利要求13所述的终端设备,其特征在于,还包括发送单元,与所述延迟合成单元连接,用于在将各所述应用的图像合成为一个显示帧之后,根据所述应用框架层将各所述应用的图像合成为一个显示帧之后的第一个系统同步信号,将所述显示帧发送到所述终端设备的显示屏进行显示。
PCT/CN2014/090003 2013-11-06 2014-10-31 显示帧生成方法和终端设备 WO2015067143A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310547960.5 2013-11-06
CN201310547960.5A CN103593155B (zh) 2013-11-06 2013-11-06 显示帧生成方法和终端设备

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP14861033.0A EP3056983B1 (en) 2013-11-06 2014-10-31 Display frame generation method and terminal device
US15/147,065 US20160247484A1 (en) 2013-11-06 2016-05-05 Method for Generating Display Frame and Terminal Device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/147,065 Continuation US20160247484A1 (en) 2013-11-06 2016-05-05 Method for Generating Display Frame and Terminal Device

Publications (1)

Publication Number Publication Date
WO2015067143A1 true WO2015067143A1 (zh) 2015-05-14

Family

ID=50083325

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/090003 WO2015067143A1 (zh) 2013-11-06 2014-10-31 显示帧生成方法和终端设备

Country Status (4)

Country Link
US (1) US20160247484A1 (zh)
EP (1) EP3056983B1 (zh)
CN (1) CN103593155B (zh)
WO (1) WO2015067143A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106657681A (zh) * 2017-03-10 2017-05-10 广东欧珀移动通信有限公司 一种移动终端刷新率的控制方法、装置及移动终端
US10614772B2 (en) 2016-03-08 2020-04-07 Huawei Technologies Co., Ltd. Display method and terminal device

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103593155B (zh) * 2013-11-06 2016-09-07 华为终端有限公司 显示帧生成方法和终端设备
US10032430B2 (en) * 2014-09-17 2018-07-24 Mediatek Inc. Processor for use in dynamic refresh rate switching and related electronic device
US9905199B2 (en) 2014-09-17 2018-02-27 Mediatek Inc. Processor for use in dynamic refresh rate switching and related electronic device and method
US9946398B2 (en) * 2014-11-18 2018-04-17 Tactual Labs Co. System and method for timing input sensing, rendering, and display to minimize latency
US9811388B2 (en) * 2015-05-14 2017-11-07 Qualcomm Innovation Center, Inc. VSync aligned CPU frequency governor sampling
US10551957B2 (en) * 2015-06-07 2020-02-04 Apple Inc. Latency reduction for detached content
CN106657757B (zh) * 2015-11-04 2020-06-09 阿里巴巴集团控股有限公司 一种相机应用的图像预览方法、装置及相机应用系统
CN106681674A (zh) * 2015-11-05 2017-05-17 丰唐物联技术(深圳)有限公司 一种虚拟现实显示器的显示控制方法及系统
CN105867576A (zh) * 2015-11-24 2016-08-17 乐视移动智能信息技术(北京)有限公司 一种延长终端设备续航时间的方法和终端设备
CN105530405B (zh) * 2015-12-01 2019-02-19 上海兆芯集成电路有限公司 图像处理的方法及装置
CN106909265B (zh) * 2015-12-23 2020-06-26 阿里巴巴集团控股有限公司 终端系统光标事件的处理方法及装置、鼠标
JP2019505045A (ja) * 2016-02-02 2019-02-21 タクチュアル ラブズ シーオー. レイテンシを最小化するために入力検知、レンダリング、および表示の時間を測定するためのシステムおよびその方法
KR20180022211A (ko) * 2016-08-23 2018-03-06 삼성전자주식회사 전자 장치 및 전자 장치의 동작 제어 방법
CN106447595A (zh) * 2016-09-23 2017-02-22 努比亚技术有限公司 一种分布式图像图形的渲染方法及终端
CN106951054B (zh) * 2017-03-10 2020-03-10 Oppo广东移动通信有限公司 一种应用程序的控制方法、装置及移动终端
CN106936995B (zh) 2017-03-10 2019-04-16 Oppo广东移动通信有限公司 一种移动终端帧率的控制方法、装置及移动终端
CN106874017B (zh) * 2017-03-10 2019-10-15 Oppo广东移动通信有限公司 一种移动终端的显示场景识别方法、装置及移动终端
CN107220019B (zh) * 2017-05-15 2021-01-08 固安县朔程燃气有限公司 一种基于动态vsync信号的渲染方法、移动终端及存储介质
CN111095221A (zh) * 2017-10-09 2020-05-01 华为技术有限公司 一种刷新显示异常处理的方法及终端
CN108829475A (zh) * 2018-05-29 2018-11-16 北京小米移动软件有限公司 Ui绘制方法、装置及存储介质
WO2020062052A1 (en) * 2018-09-28 2020-04-02 Qualcomm Incorporated Smart and dynamic janks reduction technology
WO2020207250A1 (zh) * 2019-04-09 2020-10-15 Oppo广东移动通信有限公司 垂直同步方法、装置、终端及存储介质
CN110503708A (zh) * 2019-07-03 2019-11-26 华为技术有限公司 一种基于垂直同步信号的图像处理方法及电子设备
CN110413245A (zh) * 2019-07-17 2019-11-05 Oppo广东移动通信有限公司 图像合成方法、装置、电子设备及存储介质
CN110427094A (zh) * 2019-07-17 2019-11-08 Oppo广东移动通信有限公司 显示方法、装置、电子设备及计算机可读介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1886779A (zh) * 2003-12-18 2006-12-27 苹果电脑有限公司 使用多帧缓冲器绘制的合成图像
CN103593155A (zh) * 2013-11-06 2014-02-19 华为终端有限公司 显示帧生成方法和终端设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5933155A (en) * 1996-11-06 1999-08-03 Silicon Graphics, Inc. System and method for buffering multiple frames while controlling latency
JP2002044609A (ja) * 2000-07-31 2002-02-08 Matsushita Electric Ind Co Ltd 映像記録装置および監視装置
KR100524077B1 (ko) * 2003-11-13 2005-10-26 삼성전자주식회사 중간 영상 합성을 위한 시간적 평활화 장치 및 방법
US7999861B2 (en) * 2008-03-14 2011-08-16 Omron Corporation Image processing apparatus for generating composite image with luminance range optimized for a designated area
JP5279332B2 (ja) * 2008-04-28 2013-09-04 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP2010286587A (ja) * 2009-06-10 2010-12-24 Sony Corp 画像表示装置、画像表示観察システム、画像表示方法、及びプログラム
JP5293587B2 (ja) * 2009-12-16 2013-09-18 ソニー株式会社 表示制御装置、表示制御方法、プログラム
KR101286912B1 (ko) * 2009-12-18 2013-07-16 한국전자통신연구원 3차원 저장장치를 이용한 가변길이 패킷의 fec 인코딩 및 fec 디코딩 방법
JPWO2011132246A1 (ja) * 2010-04-19 2013-07-18 パナソニック株式会社 映像処理装置
US8754904B2 (en) * 2011-04-03 2014-06-17 Lucidlogix Software Solutions, Ltd. Virtualization method of vertical-synchronization in graphics systems
CA2806371C (en) * 2012-02-17 2016-08-09 Qnx Software Systems Limited System and method for sample rate adaption
US8547480B1 (en) * 2012-06-25 2013-10-01 Google Inc. Coordinating distributed graphics rendering in a multi-window display

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1886779A (zh) * 2003-12-18 2006-12-27 苹果电脑有限公司 使用多帧缓冲器绘制的合成图像
CN103593155A (zh) * 2013-11-06 2014-02-19 华为终端有限公司 显示帧生成方法和终端设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
None
See also references of EP3056983A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10614772B2 (en) 2016-03-08 2020-04-07 Huawei Technologies Co., Ltd. Display method and terminal device
CN106657681A (zh) * 2017-03-10 2017-05-10 广东欧珀移动通信有限公司 一种移动终端刷新率的控制方法、装置及移动终端
CN106657681B (zh) * 2017-03-10 2019-07-05 Oppo广东移动通信有限公司 一种移动终端刷新率的控制方法、装置及移动终端
US10504466B2 (en) 2017-03-10 2019-12-10 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method, device and non-transitory computer-readable medium for control of refresh frequency of display unit

Also Published As

Publication number Publication date
US20160247484A1 (en) 2016-08-25
CN103593155B (zh) 2016-09-07
EP3056983A1 (en) 2016-08-17
CN103593155A (zh) 2014-02-19
EP3056983A4 (en) 2016-09-21
EP3056983B1 (en) 2018-12-05

Similar Documents

Publication Publication Date Title
WO2015067143A1 (zh) 显示帧生成方法和终端设备
WO2017101787A1 (zh) 悬浮窗口的处理方法及装置
WO2020015656A1 (zh) 移动终端和应用程序的权限管理方法、装置
CN105975190B (zh) 一种图形界面的处理方法、装置及系统
WO2015043194A1 (zh) 虚拟键盘显示方法、装置及终端
WO2018161534A1 (zh) 一种显示图像的方法、双屏终端和计算机可读的非易失性存储介质
US10614772B2 (en) Display method and terminal device
WO2019080775A1 (zh) 通知消息的提示方法及移动终端
KR20150070985A (ko) 슬라이딩 동작 응답방법, 장치, 단말기장치, 프로그램 및 기록매체
CN107613095B (zh) 来电处理方法及移动终端
WO2019001270A1 (zh) 移动终端及其分屏控制方法、计算机可读存储介质
US20150089431A1 (en) Method and terminal for displaying virtual keyboard and storage medium
WO2013135169A1 (zh) 一种输入法键盘的调整方法及其移动终端
US20140181726A1 (en) Method and electronic device for providing quick launch access and storage medium
WO2014206138A1 (zh) 一种更新网页数据的方法、装置和终端设备
WO2018233631A1 (zh) 一种终端设备的控制方法、存储介质及终端设备
US10863213B2 (en) Method and device for controlling frame rate of electronic device, storage medium, and electronic device
WO2013152656A1 (zh) 一种绘制滑动轨迹的方法及移动终端
WO2017206918A1 (zh) 终端加速唤醒方法以及相关产品
WO2017125027A1 (zh) 一种进行信息展示的方法和装置、计算机存储介质
WO2020181956A1 (zh) 应用标识的显示方法及终端设备
WO2019071600A1 (zh) 一种图像处理方法及装置
WO2019166004A1 (zh) 智能终端及其文件管理方法、具有存储功能的装置
WO2018045874A1 (zh) 信息处理的方法及相关产品
WO2018137304A1 (zh) 一种2d应用在vr设备中的显示方法及终端

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14861033

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase in:

Ref country code: DE

REEP

Ref document number: 2014861033

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014861033

Country of ref document: EP