CN115543507A - 分辨率切换方法、装置及电子设备 - Google Patents
分辨率切换方法、装置及电子设备 Download PDFInfo
- Publication number
- CN115543507A CN115543507A CN202211160931.9A CN202211160931A CN115543507A CN 115543507 A CN115543507 A CN 115543507A CN 202211160931 A CN202211160931 A CN 202211160931A CN 115543507 A CN115543507 A CN 115543507A
- Authority
- CN
- China
- Prior art keywords
- resolution
- frame
- target
- layer
- picture
- 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 69
- 239000000203 mixture Substances 0.000 claims abstract description 71
- 230000004044 response Effects 0.000 claims abstract description 4
- 230000015654 memory Effects 0.000 claims description 196
- 238000012545 processing Methods 0.000 claims description 41
- 238000009877 rendering Methods 0.000 claims description 39
- 230000002194 synthesizing effect Effects 0.000 claims description 30
- 230000015572 biosynthetic process Effects 0.000 claims description 29
- 238000003786 synthesis reaction Methods 0.000 claims description 29
- 230000008859 change Effects 0.000 description 23
- 230000008569 process Effects 0.000 description 20
- 230000000694 effects Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000037361 pathway Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本申请公开了一种分辨率切换方法、装置及电子设备,属于显示技术领域。该方法包括:在检测到触发分辨率切换的事件的情况下,获取目标分辨率;将图层的分辨率切换为目标分辨率;在已渲染的第一帧画面的分辨率与目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,图层合成单元用于响应于分辨率切换请求,将图层合成单元的分辨率切换为目标分辨率;其中,第一帧画面为图层对应的帧画面中的帧画面,且为显示屏当前显示的帧画面的下一帧待显示画面。
Description
技术领域
本申请属于显示技术领域,具体涉及一种分辨率切换方法、装置及电子设备。
背景技术
随着智能设备的普及,智能设备从最开始的240P、480P分辨率提升到现在的720P、1080P,甚至是2K和4K分辨率,分辨率越来越高,显示的内容也会更清晰。
智能设备考虑屏幕的能耗问题的情况下,如果屏幕像素数量增加,日常使用中的耗电也会增加,势必会给续航造成压力。为了兼顾续航和清晰度,较多智能设备都提供了分辨率切换功能供用户选择。想要高清晰度,就选择高分辨率,想要续航长点,就选择低一点的分辨率。
然而,目前对智能设备分辨率切换的过程中,常用的方式是,在需要切换分辨率的情况下,图层分辨率和硬件分辨率(图层合成单元的分辨率与屏幕分辨率一致,均可称为硬件分辨率)同时切换,会出现硬件分辨率与显存中已渲染的帧画面的分辨率不匹配的情况,这样,图层合成单元需要对显存中的帧画面进行缩放后输出至屏幕显示,从而导致出现抖动显示,即导致显示效果较差。
发明内容
本申请实施例的目的是提供一种分辨率切换方法、装置及电子设备,能够提高画面显示效果。
第一方面,本申请实施例提供了一种分辨率切换方法,所述方法包括:
在检测到触发分辨率切换的事件的情况下,获取目标分辨率;
将图层的分辨率切换为所述目标分辨率;
在已渲染的第一帧画面的分辨率与所述目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,所述图层合成单元用于响应于所述分辨率切换请求,将所述图层合成单元的分辨率切换为所述目标分辨率;
其中,所述第一帧画面为所述图层对应的帧画面中的帧画面,且为显示屏当前显示的帧画面的下一帧待显示画面。
第二方面,本申请实施例提供了一种分辨率切换装置,所述装置包括:
获取模块,用于在检测到触发分辨率切换的事件的情况下,获取目标分辨率;
第一切换模块,用于将图层的分辨率切换为所述目标分辨率;
第一发送模块,用于在已渲染的第一帧画面的分辨率与所述目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,所述图层合成单元用于响应于所述分辨率切换请求,将所述图层合成单元的分辨率切换为所述目标分辨率;
其中,所述第一帧画面为所述图层对应的帧画面中的帧画面,且为显示屏当前显示的帧画面的下一帧待显示画面。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。
第六方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法。
在本实施例中,在检测到触发分辨率切换的事件的情况下,先将图层的分辨率切换为目标分辨率,在显示屏当前显示的帧画面的下一帧待显示画面的分辨率与目标分辨率相同的情况下,方可向图层合成单元发送分辨率切换请求以使图层合成单元将图层合成单元的分辨率切换为目标分辨率,这样,图层合成单元的分辨率与目标分辨率一致,在显示下一帧待显示画面(第一帧画面)的情况下,由于图层合成单元的分辨率与第一帧画面的分辨率一致,都是目标分辨率,无需对第一帧画面进行缩放即可将其输出至显示屏进行显示,使显示的帧画面不会出现抖动,提高画面显示效果。
附图说明
图1是本申请实施例提供的分辨率切换方法的流程图;
图2是本申请实施例提供的一种系统架构图之一;
图3是一种分辨率切换原理图之一;
图4是一种分辨率切换原理图之二;
图5是本申请实施例提供的一种系统架构图之二;
图6是本申请实施例提供的一种分辨率切换原理图;
图7是本申请实施例提供的一种系统架构图之三;
图8是本申请实施例提供的分辨率切换装置的模块示意图;
图9是本申请实施例提供的电子设备的结构示意图;
图10是本申请实施例提供的电子设备的硬件结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的视频处理单元进行详细地说明。
如图1所示,本申请提供一种分辨率切换方法,方法包括:
步骤101:在检测到触发分辨率切换的事件的情况下,获取目标分辨率。
一旦检测到触发分辨率切换的事件,可获取目标分辨率。目标分辨率可以理解为需要切换到的分辨率。一个示例中,触发分辨率切换的事件可以是接收到用户输入的屏幕分辨率切换操作和/或分辨率场景发生变化等,对于分辨率场景变化,也可以理解是帧画面生成场景变化或应用工作模式变化,例如,对于相机应用,可以是拍摄模式变化,对于视频应用,可以是显示/播放模式变化等,对于游戏应用,可以是显示模式变化等。
步骤102:将图层的分辨率切换为目标分辨率。
每个图层对应的显存大小即为图层的分辨率,显存就是用来存放渲染的画面的内存,需要显示的画面(如状态栏、导航栏、应用界面等)以图层的方式通过显示系统控制,可通过显示硬件模块(display processing unit,DPU)的图层合成单元将各图层对应显存的帧画面进行合成为一副画面,通过显示串行接口(Display Serial Interface,DSI)发送至屏幕显示,而图层合成单元合成的帧画面的大小即为该图层合成单元的分辨率,屏幕显示的图像的像素大小可称为屏幕分辨率,也称系统分辨率,图层合成单元(overlay)的分辨率与屏幕分辨率一致,通常分辨率切换时,图层合成单元分辨率与屏幕分辨率是同步切换的,也可将图层合成单元的分辨率、屏幕分辨率称为硬件分辨率。
在本实施例中,获取目标分辨率后,即可将图层的分辨率切换为目标分辨率,以确保图层的分辨率的及时切换,图层的分辨率改变,即对应的存储渲染的帧画面的内存大小改变,以便于后续帧画面按照切换后的目标分辨率进行渲染。
步骤103:在已渲染的第一帧画面的分辨率与目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,图层合成单元用于响应于分辨率切换请求,将图层合成单元的分辨率切换为目标分辨率。
其中,第一帧画面为图层对应的帧画面中的帧画面,且为显示屏当前显示的帧画面的下一帧待显示画面。
在将图层的分辨率切换为目标分辨率之后,需要判断显示屏当前显示的帧画面的下一帧待显示画面的分辨率与目标分辨率是否相同,在相同的情况下,方可向图层合成单元发送分辨率切换请求。
在本实施例中,在检测到触发分辨率切换的事件的情况下,先将图层的分辨率切换为目标分辨率,在显示屏当前显示的帧画面的下一帧待显示画面的分辨率与目标分辨率相同的情况下,方可向图层合成单元发送分辨率切换请求以使图层合成单元将图层合成单元的分辨率切换为目标分辨率,这样,图层合成单元的分辨率与目标分辨率一致,在显示下一帧待显示画面(第一帧画面)的情况下,由于图层合成单元的分辨率与第一帧画面的分辨率一致,都是目标分辨率,无需对第一帧画面进行缩放即可将其输出至显示屏进行显示,使显示的帧画面不会出现抖动,提高画面显示效果。
在一个实施例中,将图层的分辨率切换为目标分辨率,包括:
释放第一显存,根据目标分辨率申请目标显存地址,目标显存地址对应的显存大小与目标分辨率匹配,在释放第一显存之前第一显存用于存储第二帧画面,第二帧画面为在渲染中的帧画面的下一帧待渲染画面;
在目标显存地址对应的显存中按照目标分辨率渲染第二帧画面,其中,在第一帧画面的分辨率与目标分辨率相同的情况下,第一帧画面为已渲染的第二帧画面。
可以理解,在释放第一显存,根据目标分辨率申请目标显存地址之前,第一显存是用于渲染第二帧画面,第二帧画面预计渲染到第一显存,但第二帧画面还未渲染到第一显存。在本实施例中,检测到触发分辨率的事件,需要进行图层的分辨率的切换,通过改变用于存放渲染的第二帧画面(该图层对应的帧画面中待渲染的帧画面)的显存的大小,即先释放第一显存,重新申请显存,即申请显存大小与目标分辨率一致的目标显存地址,根据目标分辨率将第二帧画面渲染到目标显存地址中,需要说明的是,渲染到目标显存地址对应的显存中的第二帧画面的分辨率与目标显存地址对应的显存大小一致。
在本实施例中,渲染到目标显存地址对应的显存中的第二帧画面的分辨率与目标分辨率一致,且在第一帧画面的分辨率与目标分辨率相同的情况下,第一帧画面为渲染完成的第二帧画面,并在第二帧画面的分辨率与目标分辨率相同的情况下,可向图层合成单元发送分辨率切换请求以使图层合成单元将图层合成单元的分辨率切换为目标分辨率,这样,图层合成单元的分辨率与目标分辨率一致,在显示第二帧画面的情况下,由于图层合成单元的分辨率与第二帧画面的分辨率一致,都是目标分辨率,无需对第二帧画面进行缩放即可将其输出至显示屏进行显示,使显示的帧画面不会出现抖动,提高画面显示效果。
在一个实施例中,在目标显存地址对应的目标显存中按照目标分辨率渲染第二帧画面之后,还包括:
在第二帧画面渲染完成的情况下,将目标显存地址传输至图层合成单元,其中,图层合成单元用于从目标显存地址对应的显存获取第二帧画面以及将第二帧画面传输至显示屏。
在目标显存地址对应的目标显存中按照目标分辨率渲染第二帧画面完毕的情况下,可将存储了已渲染的第二帧画面的目标显存地址传递给图层合成单元,这样,以便于图层合成单元后续从目标显存地址对应的显存获取第二帧画面,并将获取的第二帧画面传输至显示屏进行显示,由于第二帧画面的分辨率为目标分辨率,第一帧画面的分辨率与目标分辨率相同的情况下,第一帧画面为第二帧画面,即在第二帧画面的分辨率与目标分辨率相同的情况下,可将向图层合成单元发送分辨率切换请求,以将图层合成单元的分辨率切换为目标分辨率,这样,图层合成单元的分辨率与目标分辨率一致,在显示第二帧画面的情况下,由于图层合成单元的分辨率与第二帧画面的分辨率一致,都是目标分辨率,无需对第二帧画面进行缩放即可将其输出至显示屏进行显示,使显示的帧画面不会出现抖动,提高画面显示效果。
在一个实施例中,在包括以下至少一项的情况下,确定检测到触发分辨率切换的事件:
接收到用户输入的屏幕分辨率切换操作,目标分辨率为屏幕分辨率切换操作对应的分辨率;
检测到分辨率场景发生变化,目标分辨率为变化后的场景对应的图层分辨率。
也即是,可通过用户操作切换分辨率,例如,用户可显示屏中进行屏幕分辨率切换操作,该操作可关联目标分辨率。也可以是在分辨率场景变化的情况下,进行分辨率切换,对于分辨率场景变化,也可以理解是帧画面生成场景变化或应用工作模式变化,例如,对于相机应用,可以是拍摄模式变化(如夜景里边的极夜和普夜拍摄场景传输的图像或元数据(metadata)大小可能都不相同,就需要改变分辨率),对于视频应用,可以是显示/播放模式变化等,对于游戏应用,可以是显示模式变化等。即在本实施例中,可通过上述两种方式中的至少一种方式检测是否发生触发分辨率切换的事件,从而可提高事件检测的灵活性,以提高分辨率切换的灵活性。
在一个实施例中,接收到用户输入的屏幕分辨率切换操作之后,方法还包括:
记录屏幕分辨率切换操作对应的分辨率。
也即是接收到用户输入的屏幕分辨率切换操作之后,由于是先切换图层的分辨率,图层合成单元的分辨率不立即切换,需要在第一帧画面的分辨率与目标分辨率一致的情况下,图层合成单元的分辨率才切换为目标分辨率,从而在本实施例中,可记录用户期望切换到的目标分辨率,以便后续在第一帧画面的分辨率与目标分辨率一致的情况下,将图层合成单元的分辨率切换为目标分辨率。
在一个实施例中,图层合成单元包括第一图层合成单元和第二图层合成单元中的至少一项,图层包括第一图层和第二图层中的至少一项,第一帧画面包括第一图层对应的第一子帧画面和第二图层对应的第二子帧画面中的至少一项;
在第一帧画面的分辨率与目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,包括以下至少一项:
在第一子帧画面的分辨率与目标分辨率相同的情况下,向第一图层合成单元发送第一分辨率切换请求,第一图层合成单元用于接收到第一分辨率切换请求后,接收到刷帧信号的情况下将第一图层合成单元的分辨率切换为目标分辨率;
在第二子帧画面的分辨率与目标分辨率相同的情况下,向第二图层合成单元发送第二分辨率切换请求,第二图层合成单元用于响应于第二分辨率切换请求,将第二图层合成单元的分辨率切换为目标分辨率。
可以理解的是,第一图层合成单元是与应用界面数据对应的图层合成单元,第一子帧画面可以与应用界面数据对应,第二图层合成单元是与内容图像对应的图层合成单元,第二子帧画面可以与内容图像对应。需要说明的是,上述应用界面数据可以包括但不限于应用界面、状态栏、导航栏等,内容图像可包括但不限于视频、camera、游戏等应用提供的图像,可以被图像处理芯片进行图像处理(例如,包括但不限于插帧、降噪、超分、SDR2HDR(Standard Dynamic Range To High Dynamic Range,低动态范围向高动态范围转换,也称标准动态范围向高动态范围转换)等处理)。
在显示系统(可以是安卓(Android)原生显示系统)中加入分辨率切换策略模块,智能改变第一图层合成单元的分辨率,也可设置独立于显示系统的图像发送系统,在图像发送系统中加入另外的分辨率切换策略模块,智能改变第二图层合成单元的分辨率。
需要说明的是,在改变第一图层合成单元的分辨率的过程中,通过在第一子帧画面的分辨率与目标分辨率相同的情况下,向第一图层合成单元发送第一分辨率切换请求,这样,第一图层合成单元接收到第一分辨率切换请求后,在接收到刷帧信号(垂直同步(vertical sync,vsync)机制的刷帧信号,也可称刷帧同步信号)的情况下将自身的分辨率切换为目标分辨率。也即是,第一图层合成单元在切换分辨率的过程中,利用了vsync机制,在刷帧周期到来时切换为目标分辨率。在改变第二图层合成单元的分辨率的过程中,通过在第二子帧画面的分辨率与目标分辨率相同的情况下,向第二图层合成单元发送第二分辨率切换请求,第二图层合成单元响应于第二分辨率切换请求,即可将第二图层合成单元的分辨率切换为目标分辨率,通过独立于原生显示系统的图像发送系统中设置分辨率切换策略模块,在第二图层合成单元切换分辨率的过程中,接收到第二分辨率切换请求后即可切换分辨率,可摒弃原生显示系统的vsync机制,提高分辨率切换的效率。
在一个实施例中,在第一帧画面的分辨率与目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求之后,还包括:
基于第一图层合成单元在将第一图层合成单元的分辨率切换为目标分辨率的情况下,对第一子帧画面进行合成得到第一帧图像,并将第一帧图像传输至图像处理芯片;
基于第二图层合成单元在将第二图层合成单元的分辨率切换为目标分辨率的情况下,对第二子帧画面进行合成得到第二帧图像,并将第二帧图像传输至图像处理芯片;
基于图像处理芯片对第一帧图像以及第二帧图像进行合成,得到目标图像;
基于图像处理芯片将目标图像传输至显示屏。
通过不同的图层合成单元对不同子帧画面进行合成,对应相应的帧图像,分别传输至图像处理芯片,提高对不同子帧画面合成的灵活性,并通过图像处理芯片对第一帧图像以及第二帧图像再进行合成,得到目标图像,可将其输出至显示屏进行显示,以便用户查看合成后的目标图像。
一个示例中,基于图像处理芯片对第一帧图像以及第二帧图像进行合成,得到目标图像,可包括:基于图像处理芯片对第二帧图像进行图像处理,得到第一图像;基于图像处理芯片对第一子帧画面与第一图像进行合成,得到目标图像。
例如,上述图像处理可以是图像增强,例如可包括但不限于插帧、降噪、超分、SDR2HDR等处理,通过上述图像处理,实现图像增强,提高图像效果,然后将第一子帧画面与图像增强后得到的第一图像进行合成,得到目标图像,将其输出至显示屏,可在显示屏中显示目标图像,可提高图像显示效果。
在一个实施例中,第二帧画面包括第三子帧画面和第四子帧画面的至少一项,目标显存地址包括第一子显存地址和第二子显存地址中的至少一项,在目标显存地址对应的目标显存中按照目标分辨率渲染第二帧画面,包括以下至少一项:
在接收到渲染信号的情况下,在第一子显存地址对应的显存中按照目标分辨率渲染第三子帧画面;
在第二子显存地址对应的显存中按照目标分辨率渲染第四子帧画面。
可以理解,渲染信号可以是vsync机制中的绘图同步信号,即在渲染过程中,利用了vsync机制,即在渲染周期到达时,可按照目标分辨率将第三子帧画面渲染到第一子显存地址对应的显存中,由于在第一帧画面的分辨率与目标分辨率相同的情况下,第一帧画面为第二帧画面,这种情况下,第一子帧画面为第三子帧画面,第二子帧画面为第四子帧画面。而对于第四子帧画面,在第二子显存地址对应的显存中按照目标分辨率渲染第四子帧画面即可,无需等待渲染周期到达,即无需vsync机制,提高渲染效率。
下面以一种具体实施例对上述方法的过程加以具体说明。
如图2所示,SurfaceFlinger是Android系统的显示系统,可以理解是Android原生显示系统,Hardware.Composer Hal是显示系统的硬件抽象层(Hardware AbstractionLayer,Hal),主要负责控制显示硬件模块(DPU),Android Framework层是应用(APP)与显示系统交互的中间层。
应用(Application,APP)将帧画面显示到屏幕的过程中,如图2所示,第一步要经过通路①创建绘画表面(surface),APP有多少个图层就要创建多少个surface,例如,在通路①中,图像类应用启动显示,可按照活动管理器服务(ActivityManagerService)、视图(View)到窗口管理服务(WindowManagerService)的顺序,完成用户界面(User Interface,UI)图层对应的surface创建。第二步是经过通路②绘制帧画面到显存,例如,可通过画布(Canvas)来渲染应用界面数据,渲染到申请的对应的内存中。通常系统会给每个surface分配三块大小一致的显存,每块显存的大小与对应的图层的分辨率大小是一致的,例如,对于应用界面数据(例如,包括但不限于应用界面、状态栏、导航栏等),给对应surface分配的多个显存大小一致,且与应用界面数据的大小一致。绘图结束后将显存提交到显示系统(surfacefliner)等待显示。第三步是经过通路③将显存中的应用界面数据送给图层合成单元overlay,overlay合成为一副帧画面后再刷到屏幕上显示,例如,显存中的应用界面数据经过显示系统中的显示模块(Display)和Hal层传送至overlay处理。通路④表示分辨率切换,例如,在通路④中,可由显示系统的分辨率切换模块发起系统分辨率切换,显示系统的分辨率切换模块可通过显示系统的显示模块和Hal层请求ovelay设置分辨率,以使ovelay切换分辨率,ovelay分辨率切换后,显示系统会让应用界面数据的图层的显存大小和屏幕分辨率匹配。通路⑤表示上报分辨率切换事件,应用会重启。
Android显示系统在绘图(渲染)和刷帧显示时,都利用了vsync机制。如图3所示,绘图同步信号vsync_app一般比刷帧同步信号vsync_sf提前几个毫秒到达。相关技术中,当vsync_app到来时,开始往显存B绘图,此时屏幕显示的是显存A的内容,绘图结束后会将显存B的地址送给图层合成单元(overlay)等待合成,当下一个vsync_sf到来时,overlay启动合成,显存B的内容逐行发送到屏幕上显示。有时候绘图耗时比较大,错过了下一个vsync_sf,则下下个vsync_sf才会将绘制的内容显示到屏幕。所以,当前vsync周期绘制的画面至少要到下一个vsync才能显示出来。
如图4所示,假设分辨率切换发生在图中所示的位置,则下一个vsync_app到来时,显存A会先被释放,再按照新的分辨率大小分配内存,所以此时画面是按照新分辨率绘制的。下一个vsync_sf到来时,overlay会启动显存C的合成显示,由于显存C的内容还是切换分辨率之前绘制的,而此时overlay的分辨率已经发生改变,所以显存C会被overlay缩放到新的分辨率大小。由于画面的分辨率与屏幕分辨率的不同,需对画面进行缩放,经缩放的画面刷新到屏幕上会与之前的画面有差异,看到的现象就是画面会轻微抖一下。之后显示的画面因为显存大小也跟随分辨率做了改变,overlay也就不会对显存内容进行缩放。
综上,相关技术存在如下缺陷:分辨率切换时,至少有一帧的内容会被缩放,导致显示画面抖动。缩放会改变原始数据,有些场景,并不希望overlay改变显存中的内容,对于这种场景,相关技术无法满足要求。
本申请设计一种智能切换分辨率的方法,硬件分辨率(overlay的分辨率、屏幕分辨率)跟随图层分辨率变化,确保显示的内容经过overlay处理时不会被缩放。如图5所示,在显示系统新增了分辨率切换策略模块501,用于控制硬件分辨率与图层分辨率的切换。
如图6所示,加入分辨率切换策略模块,当用户改变分辨率时,硬件分辨率不立即改变,而图层的分辨率会立即改变,下一个vsync_app到来时,显存A会按照新的分辨率渲染。当显存A中的帧画面要在下一帧显示时,分辨率切换策略模块501判断下一帧要显示画面的分辨率与目标分辨率是否一致,若一致,则发送分辨率切换请求,下一个vsync_sf到来时,overlay的分辨率和屏幕分辨率才会真正切换,这样显存A及之后的画面经过overlay后都不会被缩放,overlay将合成后的画面传输至显示屏显示,避免画面抖动,提高画面显示效果。
本申请的一个实施例中,在Android显示系统中加入分辨率切换策略模块501,智能改变第一图层合成单元(overlay0)分辨率,使显示画面不抖动。具体实施步骤如下:
(1)用户切换屏幕分辨率;
(2)分辨率切换策略模块501缓存用户行为
此时记录用户要切换的目标分辨率(等于要切换到的屏幕分辨率),不立即设置显示硬件分辨率。
(3)前台应用按照目标分辨率重新绘图;
(4)应用绘图结束后将新的显存的地址提交到显示系统待显示;
(5)分辨率切换策略模块501判断下一帧要显示画面的分辨率与目标分辨率是否一致
(6)下一帧要显示画面的分辨率等于目标分辨率,则发送分辨率切换请求至overlay0,overlay0接收该请求后,在收到新的刷帧信号的情况下,将自身的分辨率切换为目标分辨率。
本申请的另一个实施例中,如图7所示,为电子设备(例如手机等)的主控芯片往图像处理芯片发送数据的系统架构图,其中,图7中的通路①、通路②与图2中的通路①、通路②相同,不再赘述。图7中的通路③表示创建图像图层和metadata图层并绘制(渲染),例如,由图像生成系统创建图像和metadata的surface的创建,图像surface对应图像图层,metadata surface对应metadata图层,图像发送系统可从缓存队列中申请图像图层对应的内存以及metadata图层对应的内存,图像生成系统可将生成的图像数据渲染到图像图层对应的一个内存中以及将元数据渲染到metadata图层对应的一个内存中,图像图层的任一块显存的大小和metadata图层的任一块显存的大小(分辨率)之和与第二图层合成单元(overlay1)的分辨率大小是一致的,通常等于系统设置的分辨率(系统分辨率)。图7中的通路④负责切换overlay1的分辨率,如图7所示,可由图像生成系统发起切换,图像发送系统中的分辨率切换模块在已渲染的第一帧画面的分辨率与目标分辨率相同的情况下,通过图像发送系统的显示模块和Hal层向overlay1发送分辨率切换请求,以使overlay1将当前分辨率切换为目标分辨率,从而实现overlay1的分辨率的切换。图7中的通路⑤表示系统分辨率切换,系统分辨率切换后,系统会让UI图层的显存大小和屏幕分辨率匹配,如图7所示,在通路⑤中,可由显示系统的分辨率切换模块发起系统分辨率切换,显示系统的分辨率切换模块可通过显示系统的显示模块和Hal层请求ovelay0设置分辨率,以使ovelay0切换分辨率。图7中通路⑤表示上报分辨率切换事件,应用会重启。图7中的通路⑥表示在垂直同步(vertical sync,vsync)刷新周期到来时,应用界面数据通过显示系统的显示模块和Hal层传输至DPU的第一图层合成单元(overlay0)单元,经overlay0进行合成处理后传输到图像处理芯片。图7中的通路⑦将渲染的内容图像和metadata交给overlay1合成,对于内容图像(例如,可包括但不限于视频、camera、游戏等应用提供的图像数据,可以被图像处理芯片处理),给对应surface分配的多个显存大小一致,且与内容图像的大小一致。
一些情况下,需要发送不同分辨率的图像到图像处理芯片,设置独立于显示系统的图像发送系统,在图像发送系统中加入另外的分辨率切换策略模块701,智能改变第二图层合成单元(overlay1)分辨率。本实施例的具体实施步骤如下:
在检测到触发分辨率切换的事件的情况下变化时,获取目标分辨率,根据目标分辨率重新申请目标显存地址;
图像生成模块往新的显存绘制帧画面;
图像生成模块绘图结束后将重新申请的目标显存地址提交至第二图层合成单元;
分辨率切换策略模块701判断下一帧要显示的帧画面的分辨率与目标分辨率是否一致;
下一帧要显示的帧画面的分辨率等于目标分辨率,则向第二图层合成单元发送分辨率切换请求,第二图层合成单元接收该请求后,即可将自身的分辨率切换为目标分辨率;
第二合成图像单元的分辨率切换为目标分辨率后,第二图层合成单元可从重新申请的目标显存地址对应的显存中读取新绘制的画面,并对其合成,将合成得到的帧画面传输至图像处理芯片,经过图像处理芯片进行图像处理后可传输至显示屏进行显示。
在本实施例中,在不改变图像原始数据的前提下,主控芯片可以智能地改变发送到图像处理芯片的图像数据大小,使图像处理芯片可以对不同分辨率的图像进行处理,丰富了使用场景。
本申请实施例提供的分辨率切换方法,执行主体可以为分辨率切换装置。本申请实施例中以分辨率切换装置执行数据传输方法为例,说明本申请实施例提供的分辨率切换装置。
如图8所示,提供一种实施例的分辨率切换装置800,可用于电子设备,装置800包括:
获取模块801,用于在检测到触发分辨率切换的事件的情况下,获取目标分辨率;
第一切换模块802,用于将图层的分辨率切换为目标分辨率;
第一发送模块803,用于在已渲染的第一帧画面的分辨率与目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,图层合成单元用于响应于分辨率切换请求,将图层合成单元的分辨率切换为目标分辨率;
其中,第一帧画面为图层对应的帧画面中的帧画面,且为显示屏当前显示的帧画面的下一帧待显示画面。
在一个实施例中,第一切换模块,包括:
显存释放模块,用于释放第一显存,根据目标分辨率申请目标显存地址,目标显存地址对应的显存大小与目标分辨率匹配,在释放第一显存之前第一显存用于存储第二帧画面,第二帧画面为在渲染中的帧画面的下一帧待渲染画面;
渲染模块,用于在目标显存地址对应的显存中按照目标分辨率渲染第二帧画面,其中,在第一帧画面的分辨率与目标分辨率相同的情况下,第一帧画面为已渲染的第二帧画面。
在一个实施例中,分辨率切换装置还包括:
第二发送模块,用于在第二帧画面渲染完成的情况下,将目标显存地址传输至图层合成单元,其中,图层合成单元用于从目标显存地址对应的显存获取第二帧画面以及将第二帧画面传输至显示屏。
在一个实施例中,在包括以下至少一项的情况下,确定检测到触发分辨率切换的事件:
接收到用户输入的屏幕分辨率切换操作,目标分辨率为屏幕分辨率切换操作对应的分辨率;
检测到分辨率场景发生变化,目标分辨率为变化后的场景对应的图层分辨率。
在一个实施例中,装置还包括:
记录模块,用于记录屏幕分辨率切换操作对应的分辨率。
在一个实施例中,图层合成单元包括第一图层合成单元和第二图层合成单元中的至少一项,图层包括第一图层和第二图层中的至少一项,第一帧画面包括第一图层对应的第一子帧画面和第二图层对应的第二子帧画面中的至少一项;
第一发送模块,包括以下至少一项:
第一子发送模块,用于在第一子帧画面的分辨率与目标分辨率相同的情况下,向第一图层合成单元发送第一分辨率切换请求,第一图层合成单元用于接收到第一分辨率切换请求后,接收到刷帧信号的情况下将第一图层合成单元的分辨率切换为目标分辨率;
第二子发送模块,用于在第二子帧画面的分辨率与目标分辨率相同的情况下,向第二图层合成单元发送第二分辨率切换请求,第二图层合成单元用于响应于第二分辨率切换请求,将第二图层合成单元的分辨率切换为目标分辨率。
在一个实施例中,分辨率切换装置还包括:
第一图层合成单元,用于在将第一图层合成单元的分辨率切换为目标分辨率的情况下,对第一子帧画面进行合成得到第一帧图像,并将第一帧图像传输至图像处理芯片;
第二图层合成单元,用于在将第二图层合成单元的分辨率切换为目标分辨率的情况下,对第二子帧画面进行合成得到第二帧图像,并将第二帧图像传输至图像处理芯片;
图像处理芯片,用于对第一帧图像以及第二帧图像进行合成,得到目标图像,以及将目标图像传输至显示屏。
在一个实施例中,第二帧画面包括第三子帧画面和第四子帧画面的至少一项,目标显存地址包括第一子显存地址和第二子显存地址中的至少一项,渲染模块,包括以下至少一项:
第一子渲染模块,用于在接收到渲染信号的情况下,在第一子显存地址对应的显存中按照目标分辨率渲染第三子帧画面;
第二子渲染模块,用于在第二子显存地址对应的显存中按照目标分辨率渲染第四子帧画面。
本申请实施例的分辨率切换装置为可实现上述实施例的分辨率切换方法的装置,技术特征一一对应,能达到相同的技术效果,在此不再赘述。
本申请实施例中的分辨率切换装置可以是电子设备,也可以是电子设备中的部件,例如,集成电路或芯片。该电子设备可以是终端,也可以是除终端之外的其他设备,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(MobileInternet Device,MID)、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,还可以为网络附属存储器(Network Attached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的分辨率切换装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
本申请实施例提供的分辨率切换装置能够实现上述分辨率切换方法实施例实现的各个过程,例如,能够实现图1至图3的方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选地,如图9所示,本申请实施例还提供一种电子设备900,包括处理器901和存储器902,存储器902存储可在处理器901上运行的程序或指令,该程序或指令被处理器901执行时实现上述分辨率切换方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,本申请实施例中的电子设备包括上述的移动电子设备和非移动电子设备。
图10为实现本申请实施例的一种电子设备的硬件结构示意图。
该电子设备1000包括但不限于:射频单元1001、网络模块1002、音频输出单元1003、输入单元1004、传感器1005、显示单元1006、用户输入单元10010、接口单元1008、存储器1009、以及处理器1010等部件。
本领域技术人员可以理解,电子设备1000还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器1010逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图10中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
其中,处理器1010用于:
在检测到触发分辨率切换的事件的情况下,获取目标分辨率;
将图层的分辨率切换为目标分辨率;
在已渲染的第一帧画面的分辨率与目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,图层合成单元用于响应于分辨率切换请求,将图层合成单元的分辨率切换为目标分辨率;
其中,第一帧画面为图层对应的帧画面中的帧画面,且为显示屏当前显示的帧画面的下一帧待显示画面。
在一个实施例中,处理器1010具体用于:
释放第一显存,根据目标分辨率申请目标显存地址,目标显存地址对应的显存大小与目标分辨率匹配,在释放第一显存之前第一显存用于存储第二帧画面,第二帧画面为在渲染中的帧画面的下一帧待渲染画面;
在目标显存地址对应的显存中按照目标分辨率渲染第二帧画面,其中,在第一帧画面的分辨率与目标分辨率相同的情况下,第一帧画面为已渲染的第二帧画面。
在一个实施例中,处理器1010还用于:
在第二帧画面渲染完成的情况下,将目标显存地址传输至图层合成单元,其中,图层合成单元用于从目标显存地址对应的显存获取第二帧画面以及将第二帧画面传输至显示屏。
在一个实施例中,在包括以下至少一项的情况下,确定检测到触发分辨率切换的事件:
接收到用户输入的屏幕分辨率切换操作,目标分辨率为屏幕分辨率切换操作对应的分辨率;
检测到分辨率场景发生变化,目标分辨率为变化后的场景对应的图层分辨率。
在一个实施例中,处理器1010还用于:
记录屏幕分辨率切换操作对应的分辨率。
在一个实施例中,图层合成单元包括第一图层合成单元和第二图层合成单元中的至少一项,图层包括第一图层和第二图层中的至少一项,第一帧画面包括第一图层对应的第一子帧画面和第二图层对应的第二子帧画面中的至少一项;
处理器1010具体用于以下至少一项:
在第一子帧画面的分辨率与目标分辨率相同的情况下,向第一图层合成单元发送第一分辨率切换请求,第一图层合成单元用于接收到第一分辨率切换请求后,接收到刷帧信号的情况下将第一图层合成单元的分辨率切换为目标分辨率;
在第二子帧画面的分辨率与目标分辨率相同的情况下,向第二图层合成单元发送第二分辨率切换请求,第二图层合成单元用于响应于第二分辨率切换请求,将第二图层合成单元的分辨率切换为目标分辨率。
在一个实施例中,处理器1010包括:
第一图层合成单元,用于在将第一图层合成单元的分辨率切换为目标分辨率的情况下,对第一子帧画面进行合成得到第一帧图像,并将第一帧图像传输至图像处理芯片;
第二图层合成单元,用于在将第二图层合成单元的分辨率切换为目标分辨率的情况下,对第二子帧画面进行合成得到第二帧图像,并将第二帧图像传输至图像处理芯片;
图像处理芯片,用于对第一帧图像以及第二帧图像进行合成,得到目标图像,以及将目标图像传输至显示屏。
在一个实施例中,第二帧画面包括第三子帧画面和第四子帧画面的至少一项,目标显存地址包括第一子显存地址和第二子显存地址中的至少一项,处理器1010具体用于:以下至少一项:
在接收到渲染信号的情况下,在第一子显存地址对应的显存中按照目标分辨率渲染第三子帧画面;
在第二子显存地址对应的显存中按照目标分辨率渲染第四子帧画面。
应理解的是,本申请实施例中,输入单元1004可以包括图形处理器(GraphicsProcessing Unit,GPU)10041和麦克风10042,图形处理器10041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元1006可包括显示面板10061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板10061。用户输入单元10010包括触控面板100101以及其他输入设备100102中的至少一种。触控面板100101,也称为触摸屏。触控面板100101可包括触摸检测装置和触摸控制器两个部分。其他输入设备100102可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
存储器1009可用于存储软件程序以及各种数据,存储器109可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器109可以包括易失性存储器或非易失性存储器,或者,存储器x09可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请实施例中的存储器109包括但不限于这些和任意其它适合类型的存储器。
处理器110可包括一个或多个处理单元;可选的,包括但不限于应用程序和操作系统。处理器1010可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1010中。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述分辨率切换方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述分辨率切换方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述分辨率切换方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (18)
1.一种分辨率切换方法,其特征在于,所述方法包括:
在检测到触发分辨率切换的事件的情况下,获取目标分辨率;
将图层的分辨率切换为所述目标分辨率;
在已渲染的第一帧画面的分辨率与所述目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,所述图层合成单元用于响应于所述分辨率切换请求,将所述图层合成单元的分辨率切换为所述目标分辨率;
其中,所述第一帧画面为所述图层对应的帧画面中的帧画面,且为显示屏当前显示的帧画面的下一帧待显示画面。
2.根据权利要求1所述的分辨率切换方法,其特征在于,所述将图层的分辨率切换为所述目标分辨率,包括:
释放第一显存,根据所述目标分辨率申请目标显存地址,所述目标显存地址对应的显存大小与所述目标分辨率匹配,在释放所述第一显存之前所述第一显存用于存储第二帧画面,所述第二帧画面为在渲染中的帧画面的下一帧待渲染画面;
在所述目标显存地址对应的显存中按照所述目标分辨率渲染所述第二帧画面,其中,在所述第一帧画面的分辨率与所述目标分辨率相同的情况下,所述第一帧画面为已渲染的所述第二帧画面。
3.根据权利要求2所述的分辨率切换方法,其特征在于,所述在所述目标显存地址对应的目标显存中按照所述目标分辨率渲染所述第二帧画面之后,还包括:
在所述第二帧画面渲染完成的情况下,将所述目标显存地址传输至所述图层合成单元,其中,所述图层合成单元用于从所述目标显存地址对应的显存获取所述第二帧画面以及将所述第二帧画面传输至所述显示屏。
4.根据权利要求1所述的分辨率切换方法,其特征在于,在包括以下至少一项的情况下,确定检测到触发分辨率切换的事件:
接收到用户输入的屏幕分辨率切换操作,所述目标分辨率为所述屏幕分辨率切换操作对应的分辨率;
检测到分辨率场景发生变化,所述目标分辨率为变化后的场景对应的图层分辨率。
5.根据权利要求4所述的分辨率切换方法,其特征在于,所述接收到用户输入的所述屏幕分辨率切换操作之后,所述方法还包括:
记录所述屏幕分辨率切换操作对应的分辨率。
6.根据权利要求1所述的分辨率切换方法,其特征在于,所述图层合成单元包括第一图层合成单元和第二图层合成单元中的至少一项,所述图层包括第一图层和第二图层中的至少一项,所述第一帧画面包括所述第一图层对应的第一子帧画面和所述第二图层对应的第二子帧画面中的至少一项;
所述在所述第一帧画面的分辨率与所述目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,包括以下至少一项:
在所述第一子帧画面的分辨率与所述目标分辨率相同的情况下,向所述第一图层合成单元发送第一分辨率切换请求,所述第一图层合成单元用于接收到所述第一分辨率切换请求后,接收到刷帧信号的情况下将所述第一图层合成单元的分辨率切换为所述目标分辨率;
在所述第二子帧画面的分辨率与所述目标分辨率相同的情况下,向所述第二图层合成单元发送第二分辨率切换请求,所述第二图层合成单元用于响应于所述第二分辨率切换请求,将所述第二图层合成单元的分辨率切换为所述目标分辨率。
7.根据权利要求6所述的分辨率切换方法,其特征在于,所述在所述第一帧画面的分辨率与所述目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求之后,还包括:
基于所述第一图层合成单元在将所述第一图层合成单元的分辨率切换为所述目标分辨率的情况下,对所述第一子帧画面进行合成得到第一帧图像,并将所述第一帧图像传输至图像处理芯片;
基于所述第二图层合成单元在将所述第二图层合成单元的分辨率切换为所述目标分辨率的情况下,对所述第二子帧画面进行合成得到第二帧图像,并将所述第二帧图像传输至图像处理芯片;
基于所述图像处理芯片对所述第一帧图像以及所述第二帧图像进行合成,得到目标图像;
基于所述图像处理芯片将所述目标图像传输至所述显示屏。
8.根据权利要求2所述的分辨率切换方法,其特征在于,所述第二帧画面包括第三子帧画面和第四子帧画面的至少一项,所述目标显存地址包括第一子显存地址和第二子显存地址中的至少一项,所述在所述目标显存地址对应的目标显存中按照所述目标分辨率渲染所述第二帧画面,包括以下至少一项:
在接收到渲染信号的情况下,在所述第一子显存地址对应的显存中按照所述目标分辨率渲染所述第三子帧画面;
在所述第二子显存地址对应的显存中按照所述目标分辨率渲染所述第四子帧画面。
9.一种分辨率切换装置,其特征在于,所述装置包括:
获取模块,用于在检测到触发分辨率切换的事件的情况下,获取目标分辨率;
第一切换模块,用于将图层的分辨率切换为所述目标分辨率;
第一发送模块,用于在已渲染的第一帧画面的分辨率与所述目标分辨率相同的情况下,向图层合成单元发送分辨率切换请求,所述图层合成单元用于响应于所述分辨率切换请求,将所述图层合成单元的分辨率切换为所述目标分辨率;
其中,所述第一帧画面为所述图层对应的帧画面中的帧画面,且为显示屏当前显示的帧画面的下一帧待显示画面。
10.根据权利要求9所述的分辨率切换装置,其特征在于,所述第一切换模块,包括:
显存释放模块,用于释放第一显存,根据所述目标分辨率申请目标显存地址,所述目标显存地址对应的显存大小与所述目标分辨率匹配,在释放所述第一显存之前所述第一显存用于存储第二帧画面,所述第二帧画面为在渲染中的帧画面的下一帧待渲染画面;
渲染模块,用于在所述目标显存地址对应的显存中按照所述目标分辨率渲染所述第二帧画面,其中,在所述第一帧画面的分辨率与所述目标分辨率相同的情况下,所述第一帧画面为已渲染的所述第二帧画面。
11.根据权利要求10所述的分辨率切换装置,其特征在于,还包括:
第二发送模块,用于在所述第二帧画面渲染完成的情况下,将所述目标显存地址传输至所述图层合成单元,其中,所述图层合成单元用于从所述目标显存地址对应的显存获取所述第二帧画面以及将所述第二帧画面传输至所述显示屏。
12.根据权利要求9所述的分辨率切换装置,其特征在于,在包括以下至少一项的情况下,确定检测到触发分辨率切换的事件:
接收到用户输入的屏幕分辨率切换操作,所述目标分辨率为所述屏幕分辨率切换操作对应的分辨率;
检测到分辨率场景发生变化,所述目标分辨率为变化后的场景对应的图层分辨率。
13.根据权利要求12所述的分辨率切换装置,其特征在于,所述装置还包括:
记录模块,用于记录所述屏幕分辨率切换操作对应的分辨率。
14.根据权利要求9所述的分辨率切换装置,其特征在于,所述图层合成单元包括第一图层合成单元和第二图层合成单元中的至少一项,所述图层包括第一图层和第二图层中的至少一项,所述第一帧画面包括所述第一图层对应的第一子帧画面和所述第二图层对应的第二子帧画面中的至少一项;
所述第一发送模块,包括以下至少一项:
第一子发送模块,用于在所述第一子帧画面的分辨率与所述目标分辨率相同的情况下,向所述第一图层合成单元发送第一分辨率切换请求,所述第一图层合成单元用于接收到所述第一分辨率切换请求后,接收到刷帧信号的情况下将所述第一图层合成单元的分辨率切换为所述目标分辨率;
第二子发送模块,用于在所述第二子帧画面的分辨率与所述目标分辨率相同的情况下,向所述第二图层合成单元发送第二分辨率切换请求,所述第二图层合成单元用于响应于所述第二分辨率切换请求,将所述第二图层合成单元的分辨率切换为所述目标分辨率。
15.根据权利要求14所述的分辨率切换装置,其特征在于,还包括:
所述第一图层合成单元,用于在将所述第一图层合成单元的分辨率切换为所述目标分辨率的情况下,对所述第一子帧画面进行合成得到第一帧图像,并将所述第一帧图像传输至图像处理芯片;
所述第二图层合成单元,用于在将所述第二图层合成单元的分辨率切换为所述目标分辨率的情况下,对所述第二子帧画面进行合成得到第二帧图像,并将所述第二帧图像传输至图像处理芯片;
所述图像处理芯片,用于对所述第一帧图像以及所述第二帧图像进行合成,得到目标图像,以及将所述目标图像传输至所述显示屏。
16.根据权利要求10所述的分辨率切换装置,其特征在于,所述第二帧画面包括第三子帧画面和第四子帧画面的至少一项,所述目标显存地址包括第一子显存地址和第二子显存地址中的至少一项,所述渲染模块,包括以下至少一项:
第一子渲染模块,用于在接收到渲染信号的情况下,在所述第一子显存地址对应的显存中按照所述目标分辨率渲染所述第三子帧画面;
第二子渲染模块,用于在所述第二子显存地址对应的显存中按照所述目标分辨率渲染所述第四子帧画面。
17.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-8任一项所述的方法的步骤。
18.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-8任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211160931.9A CN115543507A (zh) | 2022-09-22 | 2022-09-22 | 分辨率切换方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211160931.9A CN115543507A (zh) | 2022-09-22 | 2022-09-22 | 分辨率切换方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115543507A true CN115543507A (zh) | 2022-12-30 |
Family
ID=84729135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211160931.9A Pending CN115543507A (zh) | 2022-09-22 | 2022-09-22 | 分辨率切换方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115543507A (zh) |
-
2022
- 2022-09-22 CN CN202211160931.9A patent/CN115543507A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104052922B (zh) | 图像数据处理方法和支持图像数据处理方法的电子设备 | |
CN117711356B (zh) | 一种屏幕刷新率切换方法及电子设备 | |
CN107566902A (zh) | 一种显示设备开机的方法和显示设备 | |
WO2016095429A1 (zh) | 一种移动终端屏幕截图方法及装置 | |
CN103049257A (zh) | 一种开机显示动画的方法及电子设备 | |
WO2023125677A1 (zh) | 独显插帧电路、方法、装置、芯片、电子设备及介质 | |
CN114661263A (zh) | 一种显示方法、电子设备及存储介质 | |
WO2023125657A1 (zh) | 图像处理方法、装置和电子设备 | |
WO2023125659A1 (zh) | 图像处理电路及数据传输方法 | |
WO2023125217A1 (zh) | 图像处理电路、方法和电子设备 | |
WO2023125273A1 (zh) | 电子设备的图像显示方法、图像处理电路和电子设备 | |
WO2023125316A1 (zh) | 视频处理方法、装置、电子设备及介质 | |
CN115665342B (zh) | 图像处理方法、图像处理电路、电子设备和可读存储介质 | |
CN117724781A (zh) | 一种应用程序启动动画的播放方法和电子设备 | |
WO2025067015A1 (zh) | 视频播放方法及终端 | |
CN115543507A (zh) | 分辨率切换方法、装置及电子设备 | |
CN116719587B (zh) | 屏幕显示方法、电子设备及计算机可读存储介质 | |
CN116708696B (zh) | 视频处理方法和电子设备 | |
CN116741121A (zh) | 显示控制系统、电子设备和显示方法 | |
CN115514859A (zh) | 图像处理电路、图像处理方法及电子设备 | |
CN115633251A (zh) | 图像处理方法、电路及电子设备 | |
CN117788266A (zh) | 数据传输方法、装置及电子设备 | |
CN116959374A (zh) | 帧率控制方法、装置、电子设备及存储介质 | |
CN117724779B (zh) | 一种生成界面图像的方法及电子设备 | |
CN114286002B (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 |