CN112767524A - 图像显示方法及装置、电子设备、存储介质 - Google Patents
图像显示方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN112767524A CN112767524A CN202110104278.3A CN202110104278A CN112767524A CN 112767524 A CN112767524 A CN 112767524A CN 202110104278 A CN202110104278 A CN 202110104278A CN 112767524 A CN112767524 A CN 112767524A
- Authority
- CN
- China
- Prior art keywords
- image
- rendering
- signal
- image drawing
- application program
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000009877 rendering Methods 0.000 claims abstract description 221
- 230000004044 response Effects 0.000 claims abstract description 10
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 37
- 238000012544 monitoring process Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本公开是关于一种图像显示方法及装置、电子设备、存储介质。其中,该方法应用于电子设备,包括:响应于接收到的硬件垂直同步信号,生成用于指示应用程序执行图像绘制操作的图像绘制信号;在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,所述图像渲染条件包括所述图像绘制操作执行完毕;显示渲染完成的图像。通过该方法,能够在图像绘制操作完毕的情况下,及时生成图像渲染信号,以指示对绘制完成的图像进行渲染,达到了快速显示图像的目的。
Description
技术领域
本公开涉及图像处理领域,尤其涉及一种图像显示方法及装置、电子设备、存储介质。
背景技术
随着智能机时代的到来,屏幕刷新率这一概念也被广大用户所熟知。通常而言,屏幕刷新率越高,意味着画面越流畅,视觉观感越好。为此,各大厂商为了使自家的产品具有更佳的视觉体验,纷纷致力于打造高刷新率的屏幕。
然而,更佳的视觉效果除了在屏幕这一硬件层面上需要更高的刷新率以外,还取决于在软件层面上,应用程序根据屏幕刷新率周期性生成的硬件垂直同步信号。硬件垂直同步信号用来指示应用程序周期性地生成需要展示的图像,其生成方式将直接影响图像在屏幕中动态显示的效果。
在相关技术中,尽管已经具备了刷新率较高的屏幕,但在软件层面上仍采用传统的硬件垂直同步信号生成方式,导致了时下的大多电子设备仍存在动态显示效果不佳的问题。
发明内容
本公开提供一种图像显示方法及装置、电子设备、存储介质,能够在图像绘制操作完毕的情况下,及时生成图像渲染信号,以指示对绘制完成的图像进行渲染,达到了快速显示图像的目的。
根据本公开的第一方面,提供一种图像显示方法,应用于电子设备,包括:
响应于接收到的硬件垂直同步信号,生成用于指示应用程序执行图像绘制操作的图像绘制信号;
在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,所述图像渲染条件包括所述图像绘制操作执行完毕;
显示渲染完成的图像。
根据本公开的第二方面,提供一种图像显示装置,应用于电子设备,包括:
第一生成单元,响应于接收到的硬件垂直同步信号,生成用于指示应用程序执行图像绘制操作的图像绘制信号;
第二生成单元,在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,所述图像渲染条件包括所述图像绘制操作执行完毕;
显示单元,显示渲染完成的图像。
根据本公开的第三方面,提供一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如第一方面所述的方法。
根据本公开的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面所述方法的步骤。
在本公开的技术方案中,在接收到硬件垂直同步信号的情况下,会生成图像绘制信号,以指示应用程序执行图像绘制操作;进一步的,当确定图像绘制操作执行完毕时,便会生成图像渲染信号,以指示对应用程序绘制的图像进行渲染。不难看出,本公开中是否生成图像渲染信号的条件为:图像绘制操作是否执行完毕。
应当理解的是,本公开只需图像绘制操作执行完毕,便可以进行图像渲染操作,无需等待至下一图像生成周期。而在相关技术中,图像绘制信号和图像渲染信号均在每一图像生成周期的起始时刻生成,导致本周期绘制的图像,必须在下一周期中才能进行渲染。可见,相较于相关技术,本公开能够更及时地执行图像渲染操作,以达到快速显示图像的目的。
上述为从单帧图像的微观角度看待得到的效果,而从宏观角度上看,当用户在电子设备的屏幕上操作时,屏幕显示的图像可以根据用户的操作快速切换,显著提高了显示内容的跟手性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据现有技术示出的一种图像绘制信号和图像渲染信号的生成时刻示意图;
图2是本公开一示例性实施例示出的一种图像显示方法的流程图;
图3是本公开一示例性实施例示出的另一种图像显示方法的流程图;
图4是本公开一示例性实施例示出的另一种图像绘制信号和图像渲染信号的生成时刻示意图;
图5是本公开一示例性实施例示出的一种图像显示装置的框图;
图6是本公开一示例性实施例示出的另一种图像显示装置的框图;
图7是本公开一示例性实施例中一种电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
电子设备中的图像生成周期通常取决于屏幕的刷新率。假设屏幕刷新率为60Hz,那么其图像生成周期约为16.6ms,即需要每16.6ms生成一帧图像,并显示于屏幕中。
在软件层面上,电子设备需要按照上述图像生成周期,定时发送硬件垂直同步信号(即硬件Vsync信号),以生成当前周期内所需生成的图像。
在实际操作中,生成每一帧图像均包含:图像绘制操作、图像渲染操作。其中,每一帧图像需要在绘制完成的情况下,才能够进行渲染。
在相关技术中,在每一图像生成周期的起始时刻同时发送图像绘制信号(Vsyncapp)和图像渲染信号(Vsync SF),以分别指示图像绘制操作和图像渲染操作的执行。具体的,可以参考图1,图1中的横轴代表时间,竖轴用于分割各个图像生成周期,虚线用于表示图像绘制操作,点线用于表示图像渲染操作。由图1可知,相关技术在每一图像生成周期的起始时刻同时生成图像绘制信号和图像渲染信号。以图1中的第一个周期为例,在0时刻同时生成了第一个图像绘制信号(Vsync app1)和第一个图像渲染信号(Vsync SF1),其中,Vsync app1信号指示相应的应用程序开始绘制第一帧图像,但由于第一帧图像尚未绘制完成,显然无法开始渲染,因此,Vsync SF1信号无法用于指示针对第一帧图像的渲染操作。而是需要在第二个周期到来时,由Vsync SF2指示渲染服务对第一帧图像进行渲染。换言之,在相关技术中,当前周期绘制完成的图像,需要等到下一个周期才能够被渲染,进而显示在屏幕中。具体的,在图1所示的情况下,从0时刻开始绘制的图像,到Y时刻才能够渲染完成,进而进行显示。
可见,在相关技术中,无法及时对绘制完成的图像进行渲染,进而导致了图像无法快速显示的问题。从宏观角度看待,当用户在屏幕上操作时,上述问题会导致屏幕无法根据用户的操作及时调整展示的图像,使得屏幕的动态显示效果不佳,具体的,体现在屏幕的跟手性较差。
为此,本公开提出了一种图像显示方法,以解决上述图像无法快速显示和屏幕动态显示效果不佳的技术问题。
图2为本公开一示例性实施例示出的一种图像显示方法的流程图,该方法应用于电子设备。如图2所示,该方法可以包括以下步骤:
步骤202,响应于接收到的硬件垂直同步信号,生成用于指示应用程序执行图像绘制操作的图像绘制信号。
本公开中的电子设备可以为任一类型的电子设备,例如,该电子设备可以为智能手机、平板电脑等移动终端,也可以为智能电视、PC(个人计算机,Personal Computer)等固定终端。应当理解的是,只需装配有显示屏幕的电子设备均可作为本公开中的电子设备,具体应用于哪一种类型的电子设备可以由本领域技术人员根据实际需求确定,本公开对此不作限制。
由上述对图1的介绍可知,在相关技术中,在同一时刻发送图像绘制信号和图像渲染信号,致使当前周期内绘制的图像无法在本周期内被渲染,进而导致了无法快速显示图像的问题。
有鉴于此,本公开不再机械地按照图像生成周期生成图像绘制信号和图像渲染信号。而是将生成图像渲染信号的条件设定为:图像绘制操作执行完毕。应当理解的是,图像绘制操作执行完毕意味着已经可以执行图像渲染操作,在该情况下,发送图像渲染信号,即可使得绘制完成的图像及时被渲染,进而达到快速显示图像的目的。
在本公开中,图像绘制信号的生成时刻与相关技术中一致,仍是在接收到硬件垂直同步信号的情况下生成,即在图像生成周期的起始时刻生成。需要声明的是,在实际操作中,图像绘制操作由相应的应用程序执行,换言之,图像绘制信号用于指示应用程序执行相应的图像绘制操作。
上述应用程序可以为任一应用程序,例如,该应用程序可以为用于控制主题显示的应用程序,也可以为某一即时通讯应用程序。当然,该举例仅是示意性的。应当理解的是,任一需要在屏幕中显示图像的应用程序均可作为本公开中用于执行图像渲染操作的应用程序,本公开对此不作限制。
步骤204,在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,所述图像渲染条件包括所述图像绘制操作执行完毕。
与相关技术不一致的是,本公开不在图像生成周期的起始时刻生成图像渲染信号,而是在图像渲染操作执行完毕的情况下生成。在实际操作中,可以通过多种方式实现。
在一实施例中,电子设备可以监测图像绘制操作的执行情况,进而将图像绘制操作执行完毕的时刻确定为图像渲染信号的生成时刻。换言之,在本实施例中,可以通过监测图像绘制情况的方式,在图像绘制完毕时,立刻生成图像渲染信号,进而以最快速度对绘制完成的图像进行渲染。
在另一实施例中,可以优先确定出图像绘制时长,并基于该图像绘制时长设置一渲染信号生成时间差。在此基础上,即可根据图像绘制信号的生成时刻以及设置的渲染信号生成时间差确定出图像渲染信号的生成时刻。具体的,可以将与“图像绘制信号的生成时刻”的时间差为:渲染信号生成时间差的时刻,确定为相应图像渲染信号的生成时刻(即将从图像绘制信号的生成时刻起,经过“渲染信号生成时间差”后的时刻,确定为图像渲染信号的生成时刻)。通常情况下,该渲染信号生成时间差与图像绘制时长的差值较小,例如,在图1中,在起始时刻0ms处,生成图像绘制信号Vsync app1信号,图像绘制时长为Xms,那么渲染信号生成时间差可以为(X+1)ms;相应的,图像渲染信号的生成时刻可以确定为X+1时刻。
需要声明的是,上述渲染信号生成时间差不小于确定的图像绘制时长、且小于图像生成周期(即硬件垂直同步信号的生成周期)。其中,大于图像绘制时长是为了保证图像绘制操作已经执行完毕,而小于图像生成周期则是为了保证在下一周期到来之前开始图像渲染操作,以避免在下一周期到来的情况下才开始执行图像渲染操作。仍以图1为例,渲染信号生成时间差应当不小于“0时刻与X时刻的时间差”、且小于“0时刻与M时刻之间的时间差”,那么,在第一个周期内,确定的图像渲染信号的生成时刻必然在时刻X与时刻M之间,进而保证了图像渲染信号在图像绘制完成之后、在下一周期起始时刻之前生成。
应当理解的是,本实施例需要根据图像绘制信号的生成时刻和渲染信号生成时间差确定图像渲染信号的生成时刻,而渲染信号生成时间差则由图像绘制时长确定,显然,该图像绘制时长必然在图像绘制操作执行之前确定。换言之,本实施例中的渲染信号生成时间差并非由本周期的图像绘制操作确定,而是预先确定。具体的,可以通过多种方式预先确定,例如,该图像绘制时长可以根据历史周期内该应用程序执行图像绘制操作的持续时长确定;再例如,该图像绘制时长,可以由技术人员根据该应用程序的相关数据预先设置。具体如何确定图像绘制时长,可由本领域技术人员根据实际需求确定,本公开对此不作限制。
应当理解的是,屏幕所处页面是不断发生变化的,当页面发生变化时,屏幕显示的图像的复杂程度变化较大,导致图像绘制时长也发生较大变化。因此,在本实施例中,还可以在确定当前所处页面发生切换的情况下,根据切换后的页面重新确定图像绘制时长,并根据重新确定的图像绘制时长调整渲染信号生成时间差。相应的,图像渲染信号的生成时刻也需要根据调整后的渲染信号生成时间差重新确定。通过该方式,可以实时根据屏幕所处页面准确确定出的图像绘制时长,进而使得渲染信号生成时间差也能够根据图像绘制时长动态调整,进而避免了由于图像绘制时长发生变化、但渲染信号生成时间差未随之调整,而造成的图像显示问题,保证了图像渲染信号无论何时均在图像绘制完成之后、在下一周期起始时刻之前生成。
在本公开中,为了进一步保证图像的显示效果,还可以进一步限制技术方案的应用场景。
在一实施例中,可以进一步限定:在图像绘制操作执行完毕的情况下,在硬件垂直同步信号所属的图像生成周期内生成图像渲染信号,以用于指示对所述应用程序绘制的图像进行渲染。该限定相当于进一步限定了“图像绘制信号”和“图像渲染信号”在同一图像生成周期内生成。显然,相较于相关技术中,针对同一图像的图像绘制信号和图像渲染信号需要在不同周期内生成的技术方案,本实施例的技术方案可以更快速地生成图像渲染信号,进而提高图像的动态显示效果。
在实际操作中,可以优先确定图像绘制操作所需的图像绘制时长,以及硬件垂直同步信号的生成周期,并判断图像绘制时长是否小于硬件垂直同步信号的生成周期;若是,则在图像绘制操作执行完毕的情况下,生成图像渲染信号,以对绘制完成的图像进行渲染;否则,仍采用相关技术中的方法执行图像渲染操作。
应当理解的是,若图像绘制时长不小于硬件垂直同步信号的生成周期,那么图像将无法在当前周期内绘制完成,必须到下一周期才能够进行图像渲染操作。换言之,需要两个周期才能够完成一帧图像的显示,容易出现丢帧的情况。
在另一实施例中,可以优先确定图像绘制时长,以及图像渲染时长,并计算图像绘制时长和图像渲染时长的总时长。在此基础上,即可判断该总时长是否不大于硬件垂直同步信号的生成周期,若是,则在图像绘制操作执行完毕的情况下,生成图像渲染信号,以指示对绘制完成的图像进行渲染;否则,仍采用相关技术中的方法执行图像渲染操作。
应当理解的是,在图像绘制时长与图像渲染时长的总时长不大于图像生成周期的情况下,才执行本公开的技术方案,能够保证图像绘制操作和图像渲染操作均在当前周期内完成,即当前周期绘制的图像,在当前周期内便可在屏幕中显示,相当于仅对复杂程度不高、所需绘制时长较短的图像采用本公开的显示方式。不难理解的是,通过上述对本方案应用场景的限制,能够在对复杂程度不高的图像进行快速显示的同时,又能够提高图像显示的稳定性。
需要强调的是,图像渲染时长与图像绘制时长相类似,也是在图像绘制操作执行之前预先确定。确定方式可参照上述确定图像绘制时长的介绍,在此不再赘述。除此之外,在实际操作中,图像渲染信号用于指示电子设备中的渲染服务对应用程序绘制完成的图像进行渲染,该渲染服务可以为任一类型能够对绘制完成的图像执行渲染操作的软件服务,例如,该渲染服务可以为:SurfaceFlinger。
在本公开中,除了上述通过历史数据或者由技术人员设定的方式,还可以通过其他方式确定图像绘制时长。例如,可以读取与应用程序相关的若干待生成图像的图像数据;并根据读取的图像数据计算若干待生成图像的绘制时长,并比较计算得到的若干绘制时长,以将若干绘制时长中的最大绘制时长确定为所述图像绘制时长。不难理解的是,该方式相当于根据待生成图像的数据,确定出了上述渲染信号生成时间差。由于确定的图像绘制时长为若干待生成图像中绘制时长的最大值,显然能够保证每一周期内图像渲染信号生成时,图像绘制操作已经执行完毕。
由上述技术方案可知,本公开在接收到硬件垂直同步信号的情况下,会生成图像绘制信号,以指示应用程序执行图像绘制操作;进一步的,当确定图像绘制操作执行完毕时,便会立刻生成图像渲染信号,以指示对应用程序绘制的图像进行渲染。不难看出,本公开中是否生成图像渲染信号的条件为:图像绘制操作是否执行完毕。
应当理解的是,本公开只需图像绘制操作执行完毕,即可进行图像渲染操作,无需等待至下一图像生成周期。而在相关技术中,图像绘制信号和图像渲染信号均在每一图像生成周期的起始时刻生成,导致本周期绘制的图像,必须在下一周期中才能进行渲染。可见,相较于相关技术,本公开能够更及时地进行图像渲染操作,以达到快速显示图像的目的。
上述为从单帧图像的微观角度看待得到的效果,而从宏观角度上看,当用户在电子设备的屏幕上操作时,屏幕显示的图像可以根据用户的操作快速切换,显著提高了显示画面的跟手性。
进一步的,本公开还优先确定了图像绘制时长,并限定仅当确定的图像绘制时长小于图像生成周期时,才在图像绘制操作执行完毕的情况下生成图像渲染信号,避免了由于图像绘制时长大于图像生成周期而出现的掉帧现象。
再进一步的,本公开在确定图像绘制时长的前提下,还进一步确定了图像渲染时长,并将图像绘制时长和图像渲染时长的总时长与图像生成周期进行了比较。在此基础上,本公开进一步限定了仅当计算得到的总时长小于图像生成周期时,才在图像绘制操作执行完毕的情况下生成图像渲染信号,进而保证了当前周期内绘制的图像,能够在当前周期内进行显示。通过该方式,本公开能够在对相对简单的图像进行快速显示的同时,保证了图像显示的稳定性。
下面,以设置渲染信号生成时间差的方式为例,对本公开的技术方案进行介绍。
图3为本公开一示例性实施例示出的另一种图像显示方法,如图3所示,该方法可以包括以下步骤:
步骤301,确定图像绘制时长和图像渲染时长。
在本实施例中,图像绘制时长和图像渲染时长可以通过上述任一种方式确定。在通常情况下,可以由技术人员根据经验对各种应用程序的图像绘制时长和图像渲染时长进行预先设置。当然,也可以由电子设备自行统计历史记录确定。本实施例对此不作具体限制。
步骤302,计算图像绘制时长和图像渲染时长的总时长。
步骤303,判断计算得到的总时长是否不大于图像生成周期;若是,则跳转至步骤304;否则,以同时生成图像渲染信号和图像渲染信号的方式显示图像。
在本实施例中,仅在图像绘制时长和图像渲染时长的总时长不大于图像生成周期的情况下,执行本公开的技术方案。其中,该图像生成周期可以由电子设备根据屏幕的刷新率预先确定,例如,在屏幕刷新率为60Hz时,该图像生成周期约为16.6ms。在该情况下,仅在上述总时长小于16.6ms的情况下执行本公开的技术方案。举例而言,若生成应用程序A中的图像的总时长为10ms,那么,应用程序A可以采用本公开的技术方案;所生成应用程序B中的图像的总时长为18ms,那么,应用程序B则不采用本公开的技术方案;
步骤304,根据图像绘制时长确定渲染信号生成时间差。
承接上述举例,假设确定的图像绘制时长为8ms,那么,确定的渲染信号生成时间差只需大于8ms,不大于16.6ms即可。通常而言,会使该渲染信号生成时间差略大于图像绘制时长,具体的,可以预设一偏移量,以根据该偏移量和图像绘制时长确定渲染信号生成时间差。例如,该偏移量可以为1ms,那么,在图像绘制时长为8ms时,确定的渲染信号生成时间差即可为9ms。
当然,在本实施例中,为了能够在当前周期内显示绘制完成的图像,应当使得渲染信号生成时间差与图像渲染时长的总时长不大于16.6ms。换言之,在确定渲染信号生成时间差时,图像渲染时长也应当作为参考量。例如,在确定图像渲染时长为4ms时,渲染信号生成时间差不应大于12.6ms,否则,在本周期内将无法显示绘制完成的图像。
需要声明的是,上述步骤301-步骤304通常在应用程序运行之前执行,以确定是否采用本公开的技术方案,以及采用该技术方案时所需用到的渲染信号生成时间差。
步骤305,接收到硬件垂直同步信号。
在本实施例中,应用程序开始运行,并显示于前台的情况下,便会定时接收到硬件垂直同步信号。该硬件垂直同步信号可以由电子设备中的定时模块定时发送。
承接上述举例,并结合图4对本实施例进行介绍。如图4所示,定时模块可以每16.6ms发送一个硬件垂直同步信号,以指示生成所需显示的图像。
步骤306,生成图像绘制信号,以指示应用程序执行图像绘制操作。
承接上述举例,如图4所示,可以在每一周期的起始时刻生成图像绘制信号(即图中Vsync app信号),以指示应用程序进行图像绘制操作,在图4中,应用程序在0ms至8ms之间执行图像绘制操作,且在8ms时绘制完成。
步骤307,判断当前时刻与图像绘制信号的生成时刻之间的时间差是否等于渲染信号生成时间差;若是,则跳转至步骤308;否则,不生成图像渲染信号。
承接上述举例,在当前时刻为9ms时,即确定当前时刻与图像绘制信号的生成时刻之间的时间差等于渲染信号生成时间差,即可在图4所示的9ms这一时刻生成第一个图像渲染信号(Vsync SF1)。
步骤308,生成图像渲染信号,以指示渲染服务对绘制完成的图像进行渲染。
承接上述举例,从9ms这一时刻开始,渲染服务即可对绘制完成的图像进行持续4ms的绘制操作。
步骤309,显示渲染完成的图像。
承接上述举例,在本实施例中,在13ms这一时刻即可显示第一帧图像。
由上述技术方案可知,本公开根据图像绘制时长设置有渲染信号生成时间差,使得在运行的过程中,能够根据该渲染信号生成时间差确定图像渲染信号的生成时刻。由于渲染信号生成时间差大于图像绘制时长、且不大于图像生成周期,一方面保证了图像渲染信号在图像绘制操作执行完毕的情况下生成,另一方面避免了绘制完成的图像在下一周期才被渲染并显示。
其中,由图4可知,通过本公开的技术方案,任一周期内绘制完成的图像,在当前周期内即可进行渲染并显示。例如,在图4所示的情况下,第13ms即可显示第一帧图像。而在相关技术中,任一周期内绘制完成的图像均是下一周期才能够被渲染并显示,例如,在图1所示的情况下,若图像渲染时长也为4ms,那么,第一帧图像需要在第20.6ms才能够显示。显然,相较于相关技术能够快速显示图像,并提高屏幕图像的跟手性。
图5是本公开一示例性实施例示出的一种图像显示装置的框图。参照图5,该装置包括第一生成单元501、第二生成单元502和显示单元503。
第一生成单元501,被装配为响应于接收到的硬件垂直同步信号,生成用于指示应用程序执行图像绘制操作的图像绘制信号;
第二生成单元502,被装配为在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,所述图像渲染条件包括所述图像绘制操作执行完毕;
显示单元503,被装配为显示渲染完成的图像。
如图6所示,图6是本公开一示例性实施例示出的另一种图像显示装置的框图,该实施例在前述图5所示实施例的基础上,还包括:监测单元504、确定单元505。
可选的,还包括:
监测单元504,被装配为监测所述图像绘制操作的执行情况;
确定单元505,被装配为将所述图像绘制操作执行完毕的时刻确定为所述图像渲染信号的生成时刻。
可选的,还包括:
确定单元505,被装配为确定图像绘制时长,并根据确定的图像绘制时长设置渲染信号生成时间差,所述渲染信号生成时间差不小于所述图像绘制时长、且小于所述硬件垂直同步信号的生成周期;根据生成所述图像绘制信号的时刻以及所述渲染信号生成时间差确定所述图像渲染信号的生成时刻。
可选的,还包括:
确定单元505,被装配为在确定当前所处页面发生切换的情况下,根据切换后的页面重新确定图像绘制时长,并根据重新确定的图像绘制时长调整渲染信号生成时间差;根据生成所述图像绘制信号的时刻以及调整后的渲染信号生成时间差确定所述图像渲染信号的生成时刻。
可选的,
还包括:确定单元505,被装配为确定图像绘制时长;
第二生成单元502进一步被装配为:在图像渲染条件被满足、且所述图像绘制时长小于所述硬件垂直同步信号的生成周期的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号。
可选的,
还包括:确定单元505,被装配为确定图像绘制时长,以及图像渲染时长,并计算所述图像绘制时长和所述图像渲染时长的总时长;
第二生成单元502进一步被装配为:在图像渲染条件被满足、且所述总时长不大于所述硬件垂直同步信号的生成周期的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号。
可选的,确定单元505被进一步装配为:
读取与所述应用程序相关的若干待生成图像的图像数据;
根据读取的图像数据计算所述若干待生成图像的绘制时长,并比较计算得到的若干绘制时长,以将所述若干绘制时长中的最大绘制时长确定为所述图像绘制时长。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
相应的,本公开还提供一种图像显示装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为实现如上述实施例中任一所述的图像显示方法,比如该方法可以包括:响应于接收到的硬件垂直同步信号,生成用于指示应用程序执行图像绘制操作的图像绘制信号;在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,所述图像渲染条件包括所述图像绘制操作执行完毕;显示渲染完成的图像。
相应的,本公开还提供一种电子设备,所述电子设备包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于实现如上述实施例中任一所述的图像显示方法的指令,比如该方法可以包括:响应于接收到的硬件垂直同步信号,生成用于指示应用程序执行图像绘制操作的图像绘制信号;在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,所述图像渲染条件包括所述图像绘制操作执行完毕;显示渲染完成的图像。
图7是根据一示例性实施例示出的一种用于实现曝光收敛的装置700的框图。例如,装置700可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图7,装置700可以包括以下一个或多个组件:处理组件702,存储器704,电源组件706,多媒体组件708,音频组件710,输入/输出(I/O)的接口712,传感器组件714,以及通信组件716。
处理组件702通常控制装置700的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件702可以包括一个或多个处理器720来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件702可以包括一个或多个模块,便于处理组件702和其他组件之间的交互。例如,处理组件702可以包括多媒体模块,以方便多媒体组件708和处理组件702之间的交互。
存储器704被配置为存储各种类型的数据以支持在装置700的操作。这些数据的示例包括用于在装置700上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器704可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件706为装置700的各种组件提供电力。电源组件706可以包括电源管理系统,一个或多个电源,及其他与为装置700生成、管理和分配电力相关联的组件。
多媒体组件708包括在所述装置700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件708包括一个前置摄像头和/或后置摄像头。当装置700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件710被配置为输出和/或输入音频信号。例如,音频组件710包括一个麦克风(MIC),当装置700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器704或经由通信组件716发送。在一些实施例中,音频组件710还包括一个扬声器,用于输出音频信号。
I/O接口712为处理组件702和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件714包括一个或多个传感器,用于为装置700提供各个方面的状态评估。例如,传感器组件714可以检测到装置700的打开/关闭状态,组件的相对定位,例如所述组件为装置700的显示器和小键盘,传感器组件714还可以检测装置700或装置700一个组件的位置改变,用户与装置700接触的存在或不存在,装置700方位或加速/减速和装置700的温度变化。传感器组件714可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件714还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件714还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件716被配置为便于装置700和其他设备之间有线或无线方式的通信。装置700可以接入基于通信标准的无线网络,如WiFi,2G或3G,4G LTE、5G NR(New Radio)或它们的组合。在一个示例性实施例中,通信组件716经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件716还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器704,上述指令可由装置700的处理器720执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。
Claims (10)
1.一种图像显示方法,其特征在于,应用于电子设备,包括:
响应于接收到的硬件垂直同步信号,生成用于指示应用程序执行图像绘制操作的图像绘制信号;
在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,所述图像渲染条件包括所述图像绘制操作执行完毕;
显示渲染完成的图像。
2.根据权利要求1所述的方法,其特征在于,还包括:
监测所述图像绘制操作的执行情况;
将所述图像绘制操作执行完毕的时刻确定为所述图像渲染信号的生成时刻。
3.根据权利要求1所述的方法,其特征在于,还包括:
确定图像绘制时长,并根据确定的图像绘制时长设置渲染信号生成时间差,所述渲染信号生成时间差不小于所述图像绘制时长、且小于所述硬件垂直同步信号的生成周期;
根据生成所述图像绘制信号的时刻以及所述渲染信号生成时间差确定所述图像渲染信号的生成时刻。
4.根据权利要求3所述的方法,其特征在于,还包括:
在确定当前所处页面发生切换的情况下,根据切换后的页面重新确定图像绘制时长,并根据重新确定的图像绘制时长调整渲染信号生成时间差;
根据生成所述图像绘制信号的时刻以及调整后的渲染信号生成时间差确定所述图像渲染信号的生成时刻。
5.根据权利要求1所述的方法,其特征在于,
还包括:确定图像绘制时长;
所述在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,包括:在图像渲染条件被满足、且所述图像绘制时长小于所述硬件垂直同步信号的生成周期的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号。
6.根据权利要求1所述的方法,其特征在于,
还包括:确定图像绘制时长,以及图像渲染时长,并计算所述图像绘制时长和所述图像渲染时长的总时长;
所述在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,包括:在图像渲染条件被满足、且所述总时长不大于所述硬件垂直同步信号的生成周期的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号。
7.根据权利要求3-6中任一所述的方法,其特征在于,所述确定图像绘制时长,包括:
读取与所述应用程序相关的若干待生成图像的图像数据;
根据读取的图像数据计算所述若干待生成图像的绘制时长,并比较计算得到的若干绘制时长,以将所述若干绘制时长中的最大绘制时长确定为所述图像绘制时长。
8.一种图像显示装置,其特征在于,应用于电子设备,包括:
第一生成单元,响应于接收到的硬件垂直同步信号,生成用于指示应用程序执行图像绘制操作的图像绘制信号;
第二生成单元,在确定图像渲染条件被满足的情况下,生成用于指示对所述应用程序绘制的图像进行渲染的图像渲染信号,所述图像渲染条件包括所述图像绘制操作执行完毕;
显示单元,显示渲染完成的图像。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110104278.3A CN112767524A (zh) | 2021-01-26 | 2021-01-26 | 图像显示方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110104278.3A CN112767524A (zh) | 2021-01-26 | 2021-01-26 | 图像显示方法及装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112767524A true CN112767524A (zh) | 2021-05-07 |
Family
ID=75707455
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110104278.3A Pending CN112767524A (zh) | 2021-01-26 | 2021-01-26 | 图像显示方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112767524A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106843859A (zh) * | 2016-12-31 | 2017-06-13 | 歌尔科技有限公司 | 一种虚拟现实场景的绘制方法和装置及一种虚拟现实设备 |
CN110503708A (zh) * | 2019-07-03 | 2019-11-26 | 华为技术有限公司 | 一种基于垂直同步信号的图像处理方法及电子设备 |
CN110609645A (zh) * | 2019-06-25 | 2019-12-24 | 华为技术有限公司 | 一种基于垂直同步信号的控制方法及电子设备 |
CN110704768A (zh) * | 2019-10-08 | 2020-01-17 | 支付宝(杭州)信息技术有限公司 | 基于图形处理器的网页渲染方法以及装置 |
CN111880602A (zh) * | 2020-08-03 | 2020-11-03 | 北京小米移动软件有限公司 | 掉帧检测方法和装置 |
-
2021
- 2021-01-26 CN CN202110104278.3A patent/CN112767524A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106843859A (zh) * | 2016-12-31 | 2017-06-13 | 歌尔科技有限公司 | 一种虚拟现实场景的绘制方法和装置及一种虚拟现实设备 |
CN110609645A (zh) * | 2019-06-25 | 2019-12-24 | 华为技术有限公司 | 一种基于垂直同步信号的控制方法及电子设备 |
CN110503708A (zh) * | 2019-07-03 | 2019-11-26 | 华为技术有限公司 | 一种基于垂直同步信号的图像处理方法及电子设备 |
CN110704768A (zh) * | 2019-10-08 | 2020-01-17 | 支付宝(杭州)信息技术有限公司 | 基于图形处理器的网页渲染方法以及装置 |
CN111880602A (zh) * | 2020-08-03 | 2020-11-03 | 北京小米移动软件有限公司 | 掉帧检测方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106506448B (zh) | 直播显示方法、装置及终端 | |
CN110611829B (zh) | 视频预加载的方法、装置、电子设备及存储介质 | |
EP3182716A1 (en) | Method and device for video display | |
CN111314768A (zh) | 投屏方法、投屏装置、电子设备以及计算机可读存储介质 | |
CN113760080B (zh) | 显示方法、装置及存储介质 | |
CN111970533A (zh) | 直播间的互动方法、装置及电子设备 | |
EP3136793A1 (en) | Method and apparatus for awakening electronic device | |
CN107888984B (zh) | 短视频播放方法及装置 | |
CN107341777B (zh) | 图片处理方法及装置 | |
EP3828832A1 (en) | Display control method, display control device and computer-readable storage medium | |
CN115719586A (zh) | 屏幕刷新率调整方法、装置、电子设备和存储介质 | |
CN112256219A (zh) | 显示方法及装置、终端及存储介质 | |
EP3816778A1 (en) | Punch-hole screen display method and apparatus | |
CN112882784A (zh) | 一种应用界面显示方法、装置、智能设备及介质 | |
CN111610899A (zh) | 界面展示方法、界面展示装置及存储介质 | |
CN108874482B (zh) | 图像处理方法及装置 | |
CN111835617A (zh) | 用户头像调整方法、装置及电子设备 | |
CN115248711A (zh) | 显示屏刷新率的调整方法、装置、终端和存储介质 | |
CN112767524A (zh) | 图像显示方法及装置、电子设备、存储介质 | |
CN110069310B (zh) | 切换桌面壁纸的方法、装置及存储介质 | |
CN110609655B (zh) | 更改设备固件参数的方法及装置 | |
CN115695699A (zh) | 显示帧率调整方法及装置、终端及存储介质 | |
CN115134516A (zh) | 拍摄方法及装置 | |
CN111538447A (zh) | 信息展示方法、装置、设备及存储介质 | |
CN112019680A (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 |