显示帧率的调整方法、装置、应用处理器及电子设备与流程

文档序号:31632594发布日期:2022-09-24 02:22阅读:408来源:国知局
显示帧率的调整方法、装置、应用处理器及电子设备与流程

1.本技术涉及显示技术领域,更具体地,涉及一种显示帧率的调整方法、装置、应用处理器及电子设备。


背景技术:

2.随着显示屏技术的不断发展,越来越多的高刷新率显示屏应运而生,在运行高帧率应用程序或在滑动操作过程中,通过将显示屏设置为高刷新率模式能够提高画面的流畅度。在相关技术中,对显示帧率调整时,可以通过对应用程序的垂直同步(vsync)信号的频率进行调整,从而使得应用程序(application,app)渲染图像的刷新频率发生变化,进而使应用处理器(application processor,ap)生产图像的刷新频率发生变化。但这样的方式中,底层还是以原本的刷新频率进行处理,会出现帧率不稳的情况而导致卡顿。


技术实现要素:

3.本技术提出了一种显示帧率的调整方法、装置、应用处理器及电子设备,可以实现更稳定的帧率控制,提升显示效果。
4.第一方面,本技术实施例提供了一种显示帧率的调整方法,应用于应用处理器ap,所述ap与显示屏的显示驱动芯片ddic连接,所述方法包括:接收所述ddic发送的撕裂效应te信号,其中,所述ddic用于根据第一刷新频率进行图像扫描,并根据所述第一刷新频率向所述ap输出te信号;按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,其中,所述第二刷新频率小于所述第一刷新频率。
5.第二方面,本技术实施例提供了一种显示帧率的调整方法,应用于电子设备,所述电子设备包括显示屏的ddic以及ap,所述ddic与所述ap连接,所述方法包括:所述ddic根据第一刷新频率进行图像扫描,并根据所述第一刷新频率向所述ap输出撕裂效应te信号;所述ap按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,其中,所述第二刷新频率小于所述第一刷新频率。
6.第三方面,本技术实施例提供了一种显示帧率的调整装置,应用于ap,所述ap与显示屏的ddic连接,所述装置包括:信号接收模块以及频率调整模块,其中,所述信号接收模块用于接收所述ddic发送的撕裂效应te信号,其中,所述ddic用于根据第一刷新频率进行图像扫描,并根据所述第一刷新频率向所述ap输出te信号;所述频率调整模块用于按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,其中,所述第二刷新频率小于所述第一刷新频率。
7.第四方面,本技术实施例提供了一种应用处理器ap,所述ap与显示屏的ddic连接,所述ap用于实现上述第一方面提供的显示帧率的调整方法上述第一方面提供的显示帧率的调整方法。
8.第五方面,本技术实施例提供了一种电子设备,所述电子设备包括显示屏、ap以及所述显示屏的ddic,所述ap与所述ddic连接,所述ap用于实现上述第一方面提供的显示帧率的调整方法。
9.第六方面,本技术实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述第一方面提供的显示帧率的调整方法,或者第二方面提供的显示帧率的调整方法。
10.本技术提供的方案,ap通过接收ddic发送的te信号,且ddic根据第一刷新频率进行图像扫描,并根据第一刷新频率向ap输出te信号,该情况下,ap按照第二刷新频率,将部分接收到的te信号上报至hwc,并按照第二刷新频率将渲染完成的图像数据发送至ddic,其中,第二刷新频率小于第一刷新频率。由于ap会按照上报te信号至hwc的频率进行图像渲染,因此可以实现ap降低刷新频率的同时,能够降低输出渲染完成的图像数据至ddic的频率,从而避免底层以原本的刷新频率工作而出现帧率不稳的情况,进而避免卡顿,提升显示效果。
附图说明
11.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
12.图1示出了本技术实施例提供的图像显示过程的原理示意图。
13.图2示出了本技术实施例提供的帧率同步机制的原理示意图。
14.图3示出了相关技术中调整显示帧率的一种实施示意图。
15.图4出了相关技术中调整显示帧率的另一种实施示意图。
16.图5示出了相关技术中调整显示帧率的再一种实施示意图。
17.图6示出了根据本技术一个实施例的显示帧率的调整方法流程图。
18.图7示出了本技术一个实施例提供的调整显示帧率的一种实施示意图。
19.图8示出了本技术一个实施例提供的调整显示帧率的另一种实施示意图。
20.图9示出了根据本技术另一个实施例的显示帧率的调整方法流程图。
21.图10示出了相关技术中的调整显示帧率的另一种实施示意图。
22.图11示出了本技术另一个实施例提供的调整显示帧率的一种实施示意图。
23.图12示出了根据本技术又一个实施例的显示帧率的调整方法流程图。
24.图13示出了根据本技术再一个实施例的显示帧率的调整方法流程图。
25.图14示出了根据本技术一个实施例的显示帧率的调整装置的一种框图。
26.图15是本技术实施例的用于执行根据本技术实施例的显示帧率的调整方法的电子设备的框图。
27.图16是本技术实施例的用于保存或者携带实现根据本技术实施例的显示帧率的调整方法的程序代码的存储单元。
具体实施方式
28.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。
29.本技术实施例的方法可以应用于多种电子设备,例如,手机、平板电脑、车载设备、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)等包含显示屏的终端上,本技术实施例对终端的具体类型不作任何限制。另外,该显示屏可以为有机发光二极管(organic light-emitting diode,oled)显示屏。
30.对于oled显示屏,在应用处理器(application processor,ap)-显示驱动芯片(display driver integrated circuit,ddic)-显示面板(panel)的驱动架构下,即,ap-ddic-panel驱动架构下,如图1所示,ap端首先通过应用程序(application,app)进行图层绘制渲染,然后通过surface flinger对绘制得到的图层进行图层合成得到图像数据,进而通过移动产业处理器接口(mobile industry processor interface,mipi)将图像数据送显(写入)ddic。ddic将ap送显的图像数据存储在缓存器(buffer)中,并通过扫描(读取)buffer中的图像数据,控制panel进行图像刷新显示(display)。在高刷新帧率显示场景下,ap端高频生成图像数据,相应的,panel侧根据图像数据进行高频图像刷新,从而提高画面的流畅度。
31.随着高刷新率屏幕的普及,高帧率所带来的流畅体验和功耗、性能、温升的矛盾更加突出,相同条件下,更高的帧率会带来更高的功耗,更高的性能要求以及温升要求。因此,电子设备在出厂前的系统调试中,会根据不同的用户场景进行动态帧率调节,以达到使用体验、功耗、性能、温升的平衡。
32.在目前的帧率控制技术中,通常是通过动态场景识别,评估当前场景的流畅体验/性能/功耗/温升等的影响作帧率投票,选择最合适的帧率。并且,低温多晶氧化物(low temperature polycrystalline oxide,ltpo)的屏幕兼具高迁移率和低漏电流的特性,既可保持高频高流畅,又能实现低频低功耗,动态帧率控制可以采取更多的策略。
33.在相关技术中,请参阅图2,电子设备安装的操作系统的帧率同步机制如下:
34.显示面板(屏幕)的显示驱动芯片ddic会产生撕裂效应(tearing effect,te)信号,并将te信号发送到应用处理器ap的内核空间(kernel space),具体地,内核空间中的直接渲染管理器(direct rendering manager,drm)接收到te信号。其中,操作系统通常将自身划分为两部分,一部分为核心软件,即kernel space,也称作内核空间,另一部分为普通应用程序,这部分称为用户空间;drm是内核空间中的一个子系统,drm通常用于应用程序与图形处理器的接口交互,以及应用程序与显示面板的交互。
35.ap的内核空间中的直接渲染管理器接收到te信号之后,在kernel层(内核层)通过输入/输出控制(input/output control,ioctl)上报到本地层(native)中的硬件合成器(hardware composer,hwc),此时的信号也叫硬件垂直同步信号(hw vsync);然后hwc将hw vsync传给图层合成器(surfaceflinger),surfaceflinger据此作应用程序垂直同步信号(app vsync)信号的校准,而app vsync则是应用程序渲染绘制的同步信号。surfaceflinger是一个系统服务,其作用是对应用程序绘制渲染的图层进行合成,例如,视
图(view)、网页视图(webview)、结构视图(textureview)、原生界面(nativeactivity)、表面视图(surfaceview)等,得到图像数据;hwc是surfaceflinger用来将图层合成到屏幕。
36.也就是说,在每次将te信号上报至hwc后,则surface flinger和app会获取到上报的tw信号,并渲染产生一帧图像,即surface flinger和app按照ap上报te信号的频率进行工作的,也即ap渲染图像也是按照上报te信号至hwc的频率进行的。
37.其中,撕裂效应(tearing effect,te)信号是一种由ddic产生的信号,用于防止图像显示过程中画面刷新时的撕裂问题。当准备好刷新下一帧图像时,ddic芯片即产生te信号,可选的,ap在每次上报te信号至hwc后,向ddic发送下一帧图像数据。因此,ddic扫描图像数据并控制panel进行图像显示的帧率与ddic发送te信号的频率对应;而ap中生产图像数据的频率以及ap发送图像数据至ddic的频率,与ap的kernel层在接收到te信号后,往上层上报te信号的频率对应。
38.相关技术中,在高显示帧率的情况下,降低显示帧率的方式主要有两种。如图3所示,第一种方式为:同时切换app vsync以及ddic发送的te信号的频率,此时软件帧率以及硬件刷新率需要做全链路切换,也就是说,同时将app渲染图像的帧率从120hz降低为60hz,以及将屏幕扫描图像进行显示的频率从120hz降低为60hz。但是,在这样的方式中,需要从系统的上层(app)到底层(kernel层)以及硬件全链路切换,并且各个节点的切换存在耗时,这样的话,就存在耗时卡顿丢帧的问题,同时通常屏幕支持的帧率挡位数量有限,一般为常见的60/90/120hz等,因此可切换的帧率档位有限。
39.如图4所示,第二种方式为:仅切换app vsync信号的频率,此时只限制软件帧率由120hz降低为60hz,即app渲染图像的帧率。但是,在这样的方式中,若仅仅限制app vsync信号,而由于ddic上报te信号的频率不变,因此底层(kernel层)还是以原本120hz进行处理,即按照120hz将渲染完成的每帧图像数据传输至ddic,则如果在hwc或者kernel层出现卡顿的情况下,会出现连续两帧图像连着以120hz刷图的情况,进而出现帧率不稳的情况而导致卡顿。
40.例如,如图5所示,在将app vsync信号的频率由120hz降低为60hz后,ddic向ap发送te信号的频率仍然为120hz,此时,ddic仍按照120hz的频率扫描图像并送入屏幕进行显示,并且ap上报te信号至hwc的频率也为120hz,此时,底层(kernel层)还是按照120hz的频率将渲染完成的每帧图像数据传输至ddic。与图4相比,在将app vsync信号的频率由120hz降低为60hz后,若n+1帧因为卡顿而导致推迟一帧传输至ddic,但是n+2帧并未产生卡顿而推迟送显,这样的话,由于底层(kernel层)按照120hz的频率将渲染完成的每帧图像数据传输至ddic,即ap每次接收到ddic以120hz发送的te信号,均会将一帧渲染完成的图像数据发送至ddic,并且ddic仍按照120hz的频率扫描图像并送入屏幕进行显示,就会导致n+1帧与n+2帧连着进行刷图显示,而实际上应该n+2帧与n+1帧之间的显示应该间隔一帧,因此就会出现送图不均匀而出现帧率不稳的情况,进而导致卡顿。
41.针对上述问题,发明人提出了本技术实施例提供的显示帧率的调整方法、装置、电子设备以及存储介质,可以实现在降低显示帧率时,通过降低ap上报te信号至hwc的频率,实现ap降低刷新频率的同时,能够降低输出渲染完成的图像数据至ddic的频率,从而避免底层以原本的刷新频率工作时,会出现帧率不稳的情况,进而避免卡顿,提升显示效果。其中,具体的显示帧率的调整方法在后续的实施例中进行详细的说明。
42.下面再结合附图对本技术实施例提供的显示帧率的调整方法进行详细介绍。
43.请参阅图6,图6示出了本技术一个实施例提供的显示帧率的调整方法的流程示意图。该显示帧率的调整方法可以由ap执行,该ap与显示屏的ddic连接,下面将针对图6所示的流程进行详细的阐述,所述显示帧率的调整方法具体可以包括以下步骤:
44.步骤s110:接收所述ddic发送的te信号,其中,所述ddic用于根据第一刷新频率进行图像扫描,并根据所述第一刷新频率向所述ap输出te信号。
45.在本技术实施例中,显示屏可以按照第一刷新频率进行工作。此时,ddic按照第一刷新频率进行图像扫描,即ddic按照第一刷新频率,对缓存器中的图像数据进行扫描,并控制显示屏的显示面板(panel)进行图像刷新显示(display);并且,按照第一刷新频率向ap输出te信号。
46.在这样的情况下,若在不需要降低显示帧率,则ap根据接收到的te信号的频率,按照第一刷新频率进行图像绘制,并在每次将接收到的te信号上报至hwc时,将绘制得到的一帧图像数据发送至ddic,从而ddic接收到图像帧数据的频率也为第一刷新频率,由于ddic按照第一刷新频率,对缓存器中的图像数据进行扫描,因此,显示面板能够按照第一刷新频率显示内容,即显示帧率为第一刷新频率。该情况下,ap进行图像渲染和送显的频率,与显示屏刷图和上报te信号的频率相同,因此,显示的每帧图像不会重复,即显示的每帧图像都是ap单独进行渲染绘制得到的。
47.示例性地,如图7所示,当显示屏的刷新率为120hz时,ddic按照120hz的频率输出te信号,ap按照120hz的频率进行图像绘制,并在每次上报te信号(将接收到的te信号上报至hwc)时,将绘制完成的图像帧数据传输至ddic;ddic接收到传输的图像帧数据后,即进行图像扫描,并控制显示面板进行显示。
48.步骤s120:按照第二刷新频率,将部分接收到的te信号上报至hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,其中,所述第二刷新频率小于所述第一刷新频率。
49.在本技术实施例中,若ddic按照第一刷新频率进行图像扫描,并按照第一刷新频率向ap输出te信号,在需要降低显示帧率的情况下,则ap可以按照第二刷新频率,将部分接收到的te信号上报至hwc,并按照第二刷新频率将渲染完成的图像数据发送至ddic。由此,由于ap是按照第二刷新频率,将接收到的te信号上报至hwc,而surface flinger和app按照ap上报te信号的频率进行工作,因此即使ddic是按照第一刷新频率输出te信号至ap,但是ap渲染图像是按照第二刷新频率进行的;并且,由于ap按照第二刷新频率将渲染完成的图像数据发送至ddic,因此,ddic实际上接收到ap传输的图像数据的频率也为第二刷新频率,这样的话,即使ddic按照第一刷新频率进行图像扫描,即显示屏按照第一刷新频率进行刷图,但是实际屏幕显示的不同的图像帧的频率为第二刷新频率,其中,不同的图像帧指的是ap每次发送的图像帧,例如,ap发送的第n帧、第n+1帧、第n+1帧
……
等,只是ap端未发送新的一帧图像数据时,ddic会根据最近接收到的一帧图像数据控制panel进行单帧图像的重复显示。
50.在一些实施方式中,ddic根据第一刷新频率进行图像扫描,并根据第一刷新频率向ap输出te信号的情况下,ap按照第二刷新频率,将部分接收到的te信号上报至hwc,并按照第二刷新频率将渲染完成的图像数据发送至ddic,可以是在检测到满足降低显示帧率的
条件时进行的。其中,ap可以根据当前的场景,确定是否满足降低显示帧率的条件。
51.在一种可能的实施方式中,ap可以获取前台应用的应用类型,并根据应用类型确定是否满足降低显示帧率的条件。比如,若当前ddic根据120hz进行图像扫描,并按照向ap输出te信号,当前台应用为视频应用时,由于视频帧率通常小于60帧/秒(一般是24帧/秒或30帧/秒),因此ap可以确定当前满足降低显示帧率的条件,而按照低于120hz的刷新频率,例如60hz、30hz等,将接收到的te信号上报至hwc,并按照该低于120hz的刷新频率将渲染完成的图像数据发送至ddic。
52.通过上述方式,虽然ddic根据第一刷新频率上报te信号,但是只需要ap对接收到的te信号进行调节,而按照第二刷新频率对接收到的te信号进行上报,即可实现显示帧率的调整,有效避免同时切换app vsync以及ddic发送的te信号的频率的方式中会存在卡顿丢帧的问题。
53.其次,即使在hwc或者kernel层出现卡顿的情况下,而导致某一帧图像数据推迟送显,但由于ap是按照第二刷新频率对渲染完成的每帧图像数据传输至ddic,且第二刷新频率小于第一刷新频率,因此不会出现对ap传输的相邻两帧图像数据连着进行刷图的情况,而是使得ap传输的相邻两帧图像数据按照第二刷新频率进行显示。
54.示例性地,如图7所示,当显示屏的刷新率为120hz时,ddic按照120hz的频率输出te信号,并按照120hz的频率扫描图像数据进行显示;在需要降低显示帧率的情况下,ap按照60hz的频率上报te信号(将接收到的te信号上报至hwc),以及按照60hz的频率传输渲染完成的一帧图像数据至ddic,因此,ddic虽然ddic按照120hz的频率输出te信号,但并不是每次输出te信号时(即图7中每个te信号的上升沿)均会扫描到一帧新的图像数据,而是会间隔一帧后,才会扫描到新的一帧图像数据,例如,图7中n+1帧与n+2帧间隔了一帧进行显示,并且由于ddic按照120hz进行刷图,因此,间隔的这一帧可以依然是对n+1帧进行显示。
55.进而,即使某一帧图像数据在送显时推迟一帧送显,但由于ap按照60hz的频率送显,因此,不会出现连续两帧图像数据进行送显而导致显示屏连着刷图的情况,进而不会出现帧率不稳的情况而导致卡顿。例如,如图8所示,若n+1帧的图像数据推迟一帧送显,但由于ap按照60hz的频率送显,因此当前并不会将n+1帧的图像数据发送至ddic,而是在下一帧时才将n+1帧的图像数据真正发送至ddic,并经过ddic的扫描后进行显示;同样地,n+2帧的图像数据也会在下一次送显的时刻(即再间隔一帧后),才会被发送至ddic,并经过ddic的扫描后进行显示。
56.在一些实施方式中,ap按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc,并按照第二刷新频率将渲染完成的图像数据发送至所述ddic,可以包括:ap按照第二刷新频率,将部分接收到的te信号上报至hwc;在每次上报te信号至所述hwc时,将渲染完成的图像数据发送至所述ddic。可以理解地,由于ap在每次上报te信号至hwc时,会将渲染完成的一帧图像数据发送至ddic,并且ap按照第二刷新频率将接收到的te信号上报至hwc,从而可以使得ap发送渲染完成的图像数据发送至ddic的频率也为第二刷新频率。如图7所示,ap在每上报一次te信号时,将渲染完成的图像数据发送至ddic,ddic对接收的图像数据进行扫描然后进行显示,从而不会出现相关技术中连续刷图的情况。
57.在一些实施方式中,显示屏可以为lpto的屏幕。由于ltpo兼具高迁移率和低漏电流的特性,既可保持高频高流畅,又能实现低频低功耗;对比ltps最主要的有优点是可以实
现更低的刷新率,即ap送图,ddic即响应马上刷新,ap不送图,ddic可以保持低刷新率,特别地,最低保持1hz刷新频率。因此,通过上述方式,在降低ap端的帧率后,可以使ddic端的刷新率等于ap端送图的帧率,进而可以同时控制ap端的帧率和ddic端的刷新率,达到功耗节省的目的。
58.本技术实施例提供的显示帧率的调整方法,可以实现在降低显示帧率时,不改变ddic的工作频率的情况下,只需要ap对接收到的te信号进行调节,使其按照第二刷新频率对接收到的te信号进行上报,即可实现显示帧率的调整,有效避免同时切换app vsync以及ddic发送的te信号的频率的方式中会存在卡顿丢帧的问题;另外,由于ap是按照第二刷新频率对渲染完成的每帧图像数据传输至ddic,且第二刷新频率小于第一刷新频率,因此即使在hwc或者kernel层出现卡顿的情况下,而导致某一帧图像数据推迟送显,也不会出现对ap传输的相邻两帧图像数据连着进行刷图的情况,进而不会出现帧率不稳的情况而导致卡顿的问题,提示了显示效果。
59.请参阅图9,图9示出了本技术另一个实施例提供的显示帧率的调整方法的流程示意图。该显示帧率的调整方法应用于上述ap,下面将针对图9所示的流程进行详细的阐述,所述显示帧率的调整方法具体可以包括以下步骤:
60.步骤s210:接收所述ddic发送的撕裂效应te信号,其中,所述ddic用于根据第一刷新频率进行图像扫描,并根据所述第一刷新频率向所述ap输出te信号。
61.在本技术实施例中,步骤s210可以参阅前述实施例的内容,在此不再赘述。
62.步骤s220:针对所述ddic每次发送的te信号,按照第二刷新频率,过滤掉部分时刻接收到的te信号,并将其余时刻接收到的te信号上报至所述hwc,以及按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic。
63.通常情况下,ap在每次接收到te信号时,会将接收到的te信号上报至hwc。但由于需要降低显示帧率,并保证不会出现ddic对ap传输的相邻两帧图像数据连着进行刷图的情况,因此,在本技术实施例中,ap可以针述ddic每次发送的te信号,并按照第二刷新频率,对部分时刻接收到的te信号进行过滤,而其余时刻接收到的te信号则会进行上报,即上报至hwc。由此,可实现ap按照第二刷新频率,将接收到的te信号上报至hwc,并按照第二刷新频率将渲染完成的图像数据发送至ddic。
64.在一些实施方式中,ap可以根据预先设置与第二刷新频率对应的过滤算法,对部分时刻接收到的te信号进行过滤,而其余时刻接收到的te信号则会进行上报,并且第二刷新频率对应的过滤算法能够保证ap上报te信号的频率与第二刷新频率对应。
65.在一种可能的实施方式中,ap可以根据第二刷新频率,确定上报te信号至hwc的时长间隔;针对ddic每次发送的te信号,按照时长间隔,将当前接收到的te信号上报至hwc,并且忽略时长间隔内接收到的te信号。
66.可选地,ap可以根据ddic上报te信号的时序,每间隔该时长间隔,对接收到的te信号进行上报,而该间隔内接收到的te信号则被过滤,即不会被ap上报至hwc。
67.示例性地,请再次参阅图7,第一刷新频率为120hz,第二刷新频率为60hz,图7中每个te信号的上升沿表示ddic输出了te信号至ap,其中,ap针对ddic每次传输的te信号,不会每次都进行上报,而是间隔一个上升沿(间隔一帧)才会将接收到的te信号进行上报,从而实现ap对接收到的te信号的过滤,从而按照60hz上报接收到的te信号,并按照60hz将一帧
完成渲染的图像数据发送至ddic。
68.在一些实施方式中,上述第一刷新频率以及第二刷新频率为显示屏支持的基础刷新频率。该情况下,在ap按照第二刷新频率将渲染完成的图像数据发送至ddic的情况下,由于第二刷新频率为显示屏支持的基础刷新频率,因此ddic可以降低显示屏的显示帧率。具体地,ddic可以将刷新频率调整为第二刷新频率,即ddic根据第二刷新频率进行图像扫描,并根据第二刷新频率向ap输出te信号,由此使得ddic端的刷新频率与ap端的刷新频率一致。
69.在一些实施方式中,第二刷新频率可以为第一刷新频率的1/n,且第二刷新频率为整数,n为大于或等于2的整数。也就是说,在当前显示屏的刷新频率下,ap端可以将刷新频率降低为第一刷新频率的1/n,只需要保证降低至的频率为整数即可。例如,第一刷新频率为120hz的情况下,第二刷新频率可以为60hz、30hz、24hz、10hz和1hz;再例如,第一刷新频率为240hz的情况下,第二刷新频率可以为1hz、2hz、3hz、4hz、5hz、6hz、8hz、10hz、12hz、15hz、16hz、20hz、24hz、30hz、40hz、48hz、60hz、80hz以及120hz。
70.通过上述方式,由于可以在ddic端的刷新频率在较高的刷新频率的情况下,ap端上报接收的te信号的频率以及传输渲染完成的图像数据至ddic的频率可以工作在更低的频率,只需保证能够ddic端的刷新频率被整除,因此,不仅可以实现多档位的帧率控制,还可以实现更稳定的帧率控制。
71.例如,请参阅图10,在播放帧率为24hz的视频时,若按照传统的同时切换app vsync以及te信号的方式,则屏幕输出图像为3:2的时间关系,即播放视频时一般屏幕刷新率为60hz,但如果视频帧率为24hz,由于60hz无法被24hz整除,因此只能如图10中,每隔3个周期刷一帧,然后再每隔2个周期刷一帧,才能输出24hz的视频。
72.但是,通过本技术实施例提供的显示帧率的调整方法,实现24hz的视频的播放时,由于可以在ddic端的刷新频率在较高的刷新频率的情况下,ap端上报接收的te信号的频率以及传输渲染完成的图像数据至ddic的频率可以工作在更低的频率,因此ddic端的刷新频率可以为大于60hz,且能够被24hz整除的频率,如图11所示,ddic端的刷新频率可以为120hz,同时ap端上报接收的te信号的频率以及传输渲染完成的图像数据至ddic的频率与视频的帧率一致(均为24hz),因此可以使显示屏输出图像的时间稳定,即均匀的输出图像,并且不会出现帧率不稳的问题。
73.本技术实施例提供的显示帧率的调整方法,在ddic根据第一刷新频率进行图像扫描,并根据第一刷新频率向ap输出te信号的情况下,ap针对ddic每次发送的te信号,按照第二刷新频率,过滤掉部分时刻接收到的te信号,并将其他时刻接收到的te信号上报至hwc。因此能够实现ap按照第二刷新频率,将接收到的te信号上报至hwc,并按照第二刷新频率将渲染完成的图像数据发送至ddic,从而能够实现ap降低刷新频率的同时,能够降低输出渲染完成的图像数据至ddic的频率,进而避免底层以原本的刷新频率工作而出现帧率不稳的情况,避免了显示卡顿,提升了显示效果。
74.请参阅图12,图12示出了本技术又一个实施例提供的显示帧率的调整方法的流程示意图。该显示帧率的调整方法应用于上述ap,下面将针对图12所示的流程进行详细的阐述,所述显示帧率的调整方法具体可以包括以下步骤:
75.步骤s310:接收所述ddic发送的撕裂效应te信号,其中,所述ddic用于根据第一刷
新频率进行图像扫描,并根据所述第一刷新频率向所述ap输出te信号。
76.在本技术实施例中,步骤s310可以参阅前述实施例的内容,在此不再赘述。
77.步骤s320:获取当前运行场景所对应的显示帧率。
78.在本技术实施例中,ddic根据第一刷新频率进行图像扫描,并根据第一刷新频率向ap输出te信号的情况下,ap可以根据当前运行场景,确定其上报接收到的te信号的频率以及发送渲染完成的图像数据至ddic的频率。其中,电子设备可以获取当前运行场景所对应的显示帧率。可以理解地,不同的运行场景下所需的显示帧率不同,例如,在播放视频时,不同帧率的视频所需的显示帧率也不同;又例如,在运行游戏时,不同游戏所需的显示帧率也不同;再例如,在运行不同的应用程序时,不同的应用程序所需的显示帧率也不同,基于此,可以获取当前运行场景所对应的显示帧率,以确定ap上报接收到的te信号的频率以及发送渲染完成的图像数据至ddic的频率。
79.在一些实施方式中,ap可以根据前台运行的应用程序以及运行状态中的至少一个,确定当前运行场景所对应的显示帧率。例如,前台运行的应用程序为游戏时,可以获取该游戏对应的帧率作为当前运行场景所对应的显示帧率,示例性地,游戏对应的帧率可以为60hz、30hz等;再例如,前台运行的应用程序为视频播放应用时,可以获取该当前播放的视频对应的帧率作为当前运行场景所对应的显示帧率,示例性地,视频对应的帧率可以为60hz、30hz等;还例如,运行导航应用时,可以导航应用对应的显示帧率作为当前运行场景所对应的显示帧率,示例性地,导航应用对应的显示帧率为60hz,则可以确定当前运行场景所对应的显示帧率为60hz;还例如,根据运行状态,确定出在低帧率运行时或者长时间不触控时等情况下,可以确定显示帧率为10hz;还例如,根据运行状态确定出当前处于息屏显示(always on display,aod)的情况下,可以确定显示帧率为1hz;还例如,根据运行状态确定出设备温度大于预设温度时,可以确定显示帧率为低于第一刷新频率的帧率。当然,确定当前运行场景所对应的显示帧率的具体方式可以不做限定。
80.步骤s330:若所述显示帧率小于所述第一刷新频率,则按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,所述第二刷新频率与所述显示帧率匹配。
81.在本技术实施例中,ap在确定出当前运行场景所对应的显示帧率后,可以将显示帧率与第一刷新频率进行比较,以根据比较结果,确定ap上报接收到的te信号的频率以及发送渲染完成的图像数据至ddic的频率。其中,显示帧率小于第一刷新频率,则ap可以按照第二刷新频率,将部分接收到的te信号上报至hwc,并按照第二刷新频率将渲染完成的图像数据发送至ddic,该第二刷新频率与显示帧率匹配,即第二刷新频率小于第一刷新频率。由此,可以实现ap降低刷新频率的同时,能够降低输出渲染完成的图像数据至ddic的频率,从而避免底层以原本的刷新频率工作而出现帧率不稳的情况,进而避免卡顿,提升显示效果。
82.步骤s340:若所述显示帧率等于所述第一刷新频率,则按照第一刷新频率,将接收到的te信号上报至所述hwc,并按照所述第一刷新频率将渲染完成的图像数据发送至所述ddic,所述第一刷新频率与所述显示帧率匹配。
83.在本技术实施例中,ap在将当前运行场景对应的显示帧率与第一刷新频率进行比较之后,若该显示帧率等于第一刷新频率,则ap可以按照第一刷新频率,将接收到的te信号上报至hwc,并按照第一刷新频率将渲染完成的图像数据发送至ddic,且第一刷新频率与显
示帧率匹配,即保持ap端与ddic端的刷新率均为第一刷新频率。
84.步骤s350:若所述显示帧率大于所述第一刷新频率,则向所述ddic发送升频指令,所述升频指令用于指示所述ddic根据第三刷新频率进行图像扫描,并根据所述第三刷新频率向所述ap输出te信号,所述第三刷新频率与所述显示帧率匹配。
85.在本技术实施例中,ap在将当前运行场景对应的显示帧率与第一刷新频率进行比较之后,若该显示帧率大于第一刷新频率,则表示当前ddic端的刷新频率不能满足当前运行场景,因此可以向ddic发送升频指令。ddic在接收到该升频指令后,则可以响应于该升频指令,根据第三刷新频率进行图像扫描,并根据第三刷新频率向ap输出te信号,且第三刷新频率与显示帧率匹配,从而提升ddic端的刷新率。
86.步骤s360:按照所述第三刷新频率,将接收到的te信号上报至所述hwc,并按照所述第三刷新频率将渲染完成的图像数据发送至所述ddic。
87.在本技术实施例中,ddic端在根据第三刷新频率进行图像扫描,并根据第三刷新频率向ap输出te信号的情况下,则ap也按照第三刷新频率,将接收到的te信号上报至hwc,并按照第三刷新频率将渲染完成的图像数据发送至ddic,即ap端与ddic端的刷新率均为第三刷新频率。
88.本技术实施例提供的显示帧率的调整方法,在ddic根据第一刷新频率进行图像扫描,并根据第一刷新频率向ap输出te信号的情况下,ap根据当前运行场景对应的显示帧率,确定其上报接收到的te信号的频率以及发送渲染完成的图像数据至ddic的频率,由此可以实现更稳定的帧率控制,提升显示效果。
89.请参阅图13,图13示出了本技术再一个实施例提供的显示帧率的调整方法的流程示意图。该显示帧率的调整方法应用于电子设备,电子设备包括显示屏的ddic以及ap,ddic与ap连接。下面将针对图13所示的流程进行详细的阐述,所述显示帧率的调整方法具体可以包括以下步骤:
90.步骤s410:所述ddic根据第一刷新频率进行图像扫描,并根据所述第一刷新频率向所述ap输出撕裂效应te信号。
91.步骤s420:所述ap按照第二刷新频率,将部分接收到的te信号上报至hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,其中,所述第二刷新频率小于所述第一刷新频率。
92.在本技术实施例中,步骤s410以及步骤s420可以参阅前述实施例的内容,在此不再赘述。
93.在一些实施方式中,在ap按照第二刷新频率,将部分接收到的te信号上报至hwc,并按照第二刷新频率将渲染完成的图像数据发送至ddic之后,即降低ap端的刷新频率以及图像数据送显的频率之后,由于ddic还是按照原本的第一刷新频率进行工作,即显示屏的刷新频率还是第一刷新频率,只是ap传输的相邻两帧图像之间会重复显示前一帧图像,因此,ddic还可以将显示屏的刷新频率降低至第二刷新频率,以进一步节省功耗。
94.在一种可能的实施方式中,ddic将显示屏的刷新频率降低至第二刷新频率时,可以根据第二刷新频率进行图像扫描,并根据第二刷新频率向ap输出te信号,由此实现显示屏的刷新频率降低为第二刷新频率。
95.可选地,ddic在降低显示屏的刷新频率的过程中,可以通过多次降低刷新频率,即
通过多级调整,实现将将显示屏的刷新频率降低至第二刷新频率。例如,第一刷新频率为120hz,第二刷新频率为60hz,则可以通过将刷新频率降低至80hz后,再降低至60hz,从而避免出现闪烁问题,提升显示效果。
96.可选地,ddic在降低显示屏的刷新频率的过程中,若第一刷新频率与第二刷新频率的差值大于刷新频率阈值时,例如,该刷新帧率阈值为30hz时,从第一刷新频率降到第二刷新频率的过程中,可以先保持预设次数的第一刷新频率刷新之后,再降到第二刷新频率进行图像刷新。
97.在一种可能的实施方式中,ddic降低显示屏的刷新频率至第二刷新频率,可以是ddic对接收到的图像数据,统计ddic发送图像数据的频率,由于ap是按照第二刷新频率发送图像数据的,因此ddic也可以统计出发送图像数据的频率为第二刷新频率,进而可以控制显示屏的刷新频率降低至该第二刷新频率。
98.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,在本技术的一些实施例中,某些步骤可以采用其它顺序进行。
99.请参阅图14,其示出了本技术实施例提供的一种显示帧率的调整装置400的结构框图。该显示帧率的调整装置400应用上述的ap,ap与显示屏的ddic连接。该显示帧率的调整装置400包括:信号接收模块410以及频率调整模块420。所述信号接收模块410用于接收所述ddic发送的撕裂效应te信号,其中,所述ddic用于根据第一刷新频率进行图像扫描,并根据所述第一刷新频率向所述ap输出te信号;所述频率调整模块420用于按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,其中,所述第二刷新频率小于所述第一刷新频率。
100.在一些实施方式中,频率调整模块420可以具体用于:针对所述ddic每次发送的te信号,按照第二刷新频率,过滤掉部分时刻接收到的te信号,并将其他时刻接收到的te信号上报至所述hwc。
101.在一种可能的实施方式中,频率调整模块420可以具体用于:根据所述第二刷新频率,确定上报te信号至所述hwc的时长间隔;针对所述ddic每次发送的te信号,按照所述时长间隔,将当前接收到的te信号上报至所述hwc,并且忽略所述时长间隔内接收到的te信号。
102.在一些实施方式中,频率调整模块420可以具体用于:按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc;在每次上报te信号至所述hwc时,将渲染完成的图像数据发送至所述ddic。
103.在一些实施方式中,频率调整模块420可以具体用于:获取当前运行场景所对应的显示帧率;若所述显示帧率小于所述第一刷新频率,则执行按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,所述第二刷新频率与所述显示帧率匹配。
104.在一种可能的实施方式中,频率调整模块420还可以用于:若所述显示帧率大于所述第一刷新频率,则向所述ddic发送升频指令,所述升频指令用于指示所述ddic根据第三刷新频率进行图像扫描,并根据所述第三刷新频率向所述ap输出te信号,所述第三刷新频率与所述显示帧率匹配;按照所述第三刷新频率,将接收到的te信号上报至所述hwc,并按
照所述第三刷新频率将渲染完成的图像数据发送至所述ddic。
105.在一种可能的实施方式中,频率调整模块420还可以用于:若所述显示帧率等于所述第一刷新频率,则按照第一刷新频率,将接收到的te信号上报至所述hwc,并按照所述第一刷新频率将渲染完成的图像数据发送至所述ddic,所述第一刷新频率与所述显示帧率匹配。
106.在一些实施方式中,所述第一刷新频率以及所述第二刷新频率为所述显示屏支持的基础刷新频率;所述ddic用于若所述ap按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,则根据所述第二刷新频率进行图像扫描,并根据所述第二刷新频率向所述ap输出te信号。
107.在一种可能的实施方式中,所述第二刷新频率为所述第一刷新频率的1/n,且所述第二刷新频率为整数,n为大于或等于2的整数。
108.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
109.在本技术所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
110.另外,在本技术各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
111.示例性地,本技术实施例还提供了一种ap,该ap与显示屏的ddic连接。该ap用于:接收所述ddic发送的撕裂效应te信号,其中,所述ddic用于根据第一刷新频率进行图像扫描,并根据所述第一刷新频率向所述ap输出te信号;按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,其中,所述第二刷新频率小于所述第一刷新频率。
112.在一些实施方式中,ap可以用于:针对所述ddic每次发送的te信号,按照第二刷新频率,过滤掉部分时刻接收到的te信号,并将其他时刻接收到的te信号上报至所述hwc。
113.在一种可能的实施方式中,ap可以用于:根据所述第二刷新频率,确定上报te信号至所述hwc的时长间隔;针对所述ddic每次发送的te信号,按照所述时长间隔,将当前接收到的te信号上报至所述hwc,并且忽略所述时长间隔内接收到的te信号。
114.在一些实施方式中,ap可以用于:按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc;在每次上报te信号至所述hwc时,将渲染完成的图像数据发送至所述ddic。
115.在一种可能的实施方式中,ap可以用于:获取当前运行场景所对应的显示帧率;若所述显示帧率小于所述第一刷新频率,则执行按照第二刷新频率,将部分接收到的te信号上报至硬件合成器hwc,并按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,所述第二刷新频率与所述显示帧率匹配。
116.在一种可能的实施方式中,ap还可以用于:若所述显示帧率大于所述第一刷新频率,则向所述ddic发送升频指令,所述升频指令用于指示所述ddic根据第三刷新频率进行图像扫描,并根据所述第三刷新频率向所述ap输出te信号,所述第三刷新频率与所述显示帧率匹配;按照所述第三刷新频率,将接收到的te信号上报至所述hwc,并按照所述第三刷
新频率将渲染完成的图像数据发送至所述ddic。
117.在一种可能的实施方式中,ap还可以用于:若所述显示帧率等于所述第一刷新频率,则按照第一刷新频率,将接收到的te信号上报至所述hwc,并按照所述第一刷新频率将渲染完成的图像数据发送至所述ddic,所述第一刷新频率与所述显示帧率匹配。
118.在一些实施方式中,所述第一刷新频率以及所述第二刷新频率为所述显示屏支持的基础刷新频率;所述ddic用于若所述ap按照所述第二刷新频率将渲染完成的图像数据发送至所述ddic,则根据所述第二刷新频率进行图像扫描,并根据所述第二刷新频率向所述ap输出te信号。
119.在一些实施方式中,所述第二刷新频率为所述第一刷新频率的1/n,且所述第二刷新频率为整数,n为大于或等于2的整数。
120.综上所述,本技术提供的方案,ap通过接收ddic发送的te信号,且ddic根据第一刷新频率进行图像扫描,并根据第一刷新频率向ap输出te信号,该情况下,ap按照第二刷新频率,将接收到的te信号上报至hwc,并按照第二刷新频率将渲染完成的图像数据发送至ddic,其中,第二刷新频率小于第一刷新频率。由于ap会按照上报te信号至hwc的频率进行图像渲染,因此可以实现ap降低刷新频率的同时,能够降低输出渲染完成的图像数据至ddic的频率,从而避免底层以原本的刷新频率工作而出现帧率不稳的情况,进而避免卡顿,提升显示效果。
121.请参考图15,其示出了本技术实施例提供的一种电子设备的结构框图。该电子设备100可以是智能手机、平板电脑、智能手表、电子书等能够运行应用程序的电子设备。本技术中的电子设备100可以包括一个或多个如下部件:应用处理器110、存储器120、显示屏130以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个应用处理器110执行,一个或多个应用程序配置用于执行如前述方法实施例所描述的方法。
122.应用处理器110可以包括一个或者多个处理核。应用处理器110利用各种接口和线路连接整个电子设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行电子设备100的各种功能和处理数据。可选地,应用处理器110可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。应用处理器110可集成中央处理器(central processing unit,cpu)、图形处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到应用处理器110中,单独通过一块通信芯片进行实现。
123.存储器120可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory,rom)。可选地,该存储器120包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功
能、图像播放功能等)、用于实现本技术各个方法实施例的指令等;存储数据区可存储根据电子设备100的使用所创建的数据(比如音频数据、电话本)等。
124.显示屏130是用于进行图像显示的显示组件,通常设置在电子设备100的前面板。显示屏130可被设计成为全面屏、曲面屏、异型屏、双面屏或折叠屏。显示屏130还可被设计成为全面屏与曲面屏的结合,异型屏与曲面屏的结合,本实施例对此不加以限定。
125.本技术实施例中,显示屏130包括显示驱动芯片(ddic)131和显示面板132(面板)。其中,显示面板132为oled显示屏,其可以是低温多晶硅(low temperature poly-silicon,ltps)amoled显示屏或低温多晶氧化物(low temperature polycrystalline oxide,ltpo)amoled显示屏。
126.显示驱动芯片131用于驱动显示面板132进行图像显示。此外,显示驱动芯片131与应用处理器110之间通过mipi接口相连,用于接收应用处理器110下发的图像数据以及指令。
127.在一种可能的实现方式中,该显示屏130还具有触控功能,通过触控功能,用户可以使用手指、触摸笔等任何适合的物体在显示屏130上进行触控操作。
128.除此之外,本领域技术人员可以理解,上述附图所示出的电子设备100的结构并不构成对电子设备100的限定,终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,电子设备100中还包括麦克风、扬声器、射频电路、输入单元、传感器、音频电路、无线保真(wireless fidelity,wifi)模块、电源、蓝牙模块等部件,在此不再赘述。
129.请参考图16,其示出了本技术实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质800中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
130.计算机可读存储介质800可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。可选地,计算机可读存储介质800包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质800具有执行上述方法中的任何方法步骤的程序代码810的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码810可以例如以适当形式进行压缩。
131.最后应说明的是:以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1