CN117711355A - Screen refresh rate switching method and electronic equipment - Google Patents

Screen refresh rate switching method and electronic equipment Download PDF

Info

Publication number
CN117711355A
CN117711355A CN202311461319.XA CN202311461319A CN117711355A CN 117711355 A CN117711355 A CN 117711355A CN 202311461319 A CN202311461319 A CN 202311461319A CN 117711355 A CN117711355 A CN 117711355A
Authority
CN
China
Prior art keywords
refresh rate
period
display screen
signal
screen
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
Application number
CN202311461319.XA
Other languages
Chinese (zh)
Inventor
李时进
周健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202311461319.XA priority Critical patent/CN117711355A/en
Publication of CN117711355A publication Critical patent/CN117711355A/en
Pending legal-status Critical Current

Links

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/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/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

The application provides a screen refresh rate switching method and electronic equipment, relates to the technical field of image processing and display, and can enable the screen refresh rate of a display screen to be rapidly switched from a low refresh rate to a high refresh rate. The SurfaceFlinger of the electronic device receives a first refresh rate switching instruction. The first refresh rate switching instruction is used for indicating that the screen refresh rate is switched from the first refresh rate to the second refresh rate. The first refresh rate is smaller than or equal to a preset threshold value, and the second refresh rate is larger than the preset threshold value. The SurfaceFlinger sends a first refresh rate switching command to the display driver in response to the end of a signal period of a current first Vsync signal. The signal period of the first Vsync signal is set to a preset period when the screen refresh rate of the display screen is the first refresh rate. The preset period is less than the inverse of the first refresh rate. The display driver switches the screen refresh rate from the first refresh rate to the second refresh rate in response to the first refresh rate switching instruction.

Description

Screen refresh rate switching method and electronic equipment
This application is a divisional application, the filing number of the original application is 202211021875.0, the filing date of the original application is 2022, month 08 and 24, and the entire contents of the original application are incorporated herein by reference.
Technical Field
The present disclosure relates to the field of image processing and display technologies, and in particular, to a method for switching a screen refresh rate and an electronic device.
Background
On the processing mechanism for switching the screen refresh rate of the display screen from a low refresh rate to a high refresh rate, according to the native mechanism of the Android system, the time of two signal periods at the screen refresh rate initiated by the display screen is required to be at least two, for example, if the screen refresh rate initiated by the display screen is 10Hz and the corresponding signal period is 100ms, 200ms is required to be at least required to switch the screen refresh rate of the display screen from the low refresh rate of 10Hz to the high refresh rate of 60Hz, 90Hz or 120 Hz. Under such a mechanism, a screen refresh rate of the display screen may experience a jam when switching from a low refresh rate back to a high refresh rate.
Disclosure of Invention
In view of this, the present application provides a screen refresh rate switching method and an electronic device, which can make the screen refresh rate of the display screen rapidly switch from a low refresh rate to a high refresh rate, and optimize the switching performance.
In a first aspect, the present application provides a method for switching a screen refresh rate, where the method may be applied to an electronic device, where the electronic device includes a display screen. The method comprises the following steps: in the case that the screen refresh rate of the display screen is the third refresh rate, in response to the electronic device switching from displaying a moving image to displaying a still image, the screen refresh rate of the display screen is switched from the third refresh rate to the first refresh rate, and the signal period of the first Vsync signal is set to a preset period. The third refresh rate is greater than the first refresh rate, the first refresh rate is less than or equal to a preset threshold, and the preset period is less than the reciprocal of the first refresh rate. And responding to the electronic equipment switching from displaying the static image to displaying the dynamic image, and receiving a first refresh rate switching instruction by the SurfaceFlinger of the electronic equipment. The first refresh rate switching instruction is used for indicating that the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate. The second refresh rate is greater than a preset threshold. In response to the end of the signal period of the current first Vsync signal, the SurfaceFlinger sends a first refresh rate switching command to a display driver of the electronic device. The first Vsync signal is used for triggering SurfaceFlinger to perform layer composition. The display driver responds to the first refresh rate switching instruction to switch the screen refresh rate of the display screen from the first refresh rate to the second refresh rate.
In the above technical solution, when the electronic device switches from displaying a dynamic image to displaying a static image, the screen refresh rate of the display screen is switched from the third refresh rate to the first refresh rate, and the first refresh rate is lower than or equal to the preset threshold value and is a low refresh rate, so that the power consumption of the electronic device when displaying the static image can be reduced. And the signal period of the first Vsync signal is set to be a preset period, so that after the electronic device is switched from displaying a static image to displaying a dynamic image, the electronic device can issue a corresponding first refresh rate switching instruction when the signal period (i.e. the preset period) of the current first Vsync signal is ended under the condition that the screen refresh rate of the display screen is required to be switched from the first refresh rate to the second refresh rate (high refresh rate), and the display screen can also timely receive and respond to the first refresh rate switching instruction to rapidly finish the screen refresh rate switching because the preset period is smaller than the reciprocal of the first refresh rate.
In a second aspect, the present application provides a method for switching a screen refresh rate, where the method may be applied to an electronic device, where the electronic device includes a display screen. The method comprises the following steps: the SurfaceFlinger of the electronic device receives a first refresh rate switching instruction from an upper layer. The first refresh rate switching instruction is used for indicating that the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate. The first refresh rate is smaller than or equal to a preset threshold value, and the second refresh rate is larger than the preset threshold value. The SurfaceFlinger sends a first refresh rate switching command to a display driver of the electronic device in response to the end of a signal period of a current first vertical synchronization Vsync signal. The first Vsync signal is used for triggering SurfaceFlinger to perform layer composition. The signal period of the first Vsync signal is set to a preset period in the case where the screen refresh rate of the display screen is the first refresh rate. The preset period is less than the inverse of the first refresh rate. The display driver responds to the first refresh rate switching instruction to switch the screen refresh rate of the display screen from the first refresh rate to the second refresh rate.
It should be appreciated that the first refresh rate is less than or equal to the predetermined threshold, and is a low refresh rate, and the second refresh rate is greater than the predetermined threshold, and is a high refresh rate.
In the above technical solution, in the case where the screen refresh rate of the display screen of the electronic device is the first refresh rate (low refresh rate), the signal period of the first Vsync signal is set to be a preset period. In this way, when the screen refresh rate of the display screen needs to be switched from the first refresh rate (low refresh rate) to the second refresh rate (high refresh rate), the SurfaceFlinger can send the first refresh rate switching instruction at the end of the signal period (preset period) of the current first Vsync signal, and because the preset period is smaller than the reciprocal of the first refresh rate, the SurfaceFlinger needs to wait until the end of a period with the length equal to the reciprocal of the first refresh rate under the native mechanism of the Android system to send the first refresh rate switching instruction, and the timeliness of the SurfaceFlinger sending the first refresh rate switching instruction is improved, so that the display screen can also receive the first refresh rate switching instruction in time and respond to the first refresh rate switching instruction in time to carry out screen refresh rate switching, thereby reducing the switching time of the screen refresh rate of the display screen, avoiding the catton, improving the heel of electronic equipment and improving the user experience.
In a possible implementation manner of the second aspect, after the display driver switches the screen refresh rate of the display screen from the first refresh rate to the second refresh rate in response to the first refresh rate switching instruction, the method further includes: the display driver sends a second Vsync signal to the SurfaceFlinger in accordance with the first signal period to indicate the screen refresh rate of the display screen to the SurfaceFlinger. The second Vsync signal may trigger the display screen to refresh the display image frame, and the first signal period is equal to the inverse of the second refresh rate.
That is, after the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate, the display driver periodically sends a second Vsync signal to the SurfaceFlinger for the SurfaceFlinger to perform the Vsync signal calibration in accordance with the first signal period (i.e., the inverse of the second refresh rate). Thus, the SurfaceFlinger may determine that the screen refresh rate of the display screen has been switched to the second refresh rate according to the period in which the second Vsync signal is received, and the SurfaceFlinger may periodically generate the first Vsync signal according to the inverse of the second refresh rate. Thereby, the first Vsync signal and the second Vsync signal can be kept periodically synchronized.
In another possible implementation manner of the second aspect, before the SurfaceFlinger of the electronic device receives the first refresh rate switching instruction from the upper layer, the method further includes: the display screen receives a second refresh rate switching instruction. The second refresh rate switching instruction is used for indicating that the screen refresh rate of the display screen is switched to the first refresh rate. And the display screen responds to a second refresh rate switching instruction, the screen refresh rate of the display screen is switched to a preset refresh rate, and a second Vsync signal is sent to the SurfaceFlinger through display driving according to a preset period. The preset period is equal to the reciprocal of a preset refresh rate, and the preset refresh rate is greater than a preset threshold. The SurfaceFlinger receives a second Vsync signal from the display driver. If the period of the second Vsync signal received from the display driver (i.e., the second signal period) is equal to the preset period, the SurfaceFlinger sets the signal period of the first Vsync signal to the preset period and stops receiving the second Vsync signal from the display driver.
That is, after the display screen receives the second refresh rate switching instruction, the screen refresh rate of the display screen may be switched to the preset refresh rate in response to the second refresh rate switching instruction, so that the second Vsync signal may be periodically sent to the SurfaceFlinger according to the preset period, for the SurfaceFlinger to calibrate the Vsync signal. After the surface eflinger finishes the calibration of the Vsync signal, the signal period of the first Vsync signal may be set to a preset period, and may run according to the preset period. Thus, when a new refresh rate switching instruction (such as a first refresh rate instruction) is subsequently received, the new refresh rate switching instruction can be issued in time.
In another possible implementation manner of the second aspect, the method further includes: and responding to the second refresh rate switching instruction by the display screen, and switching the screen refresh rate of the display screen to the first refresh rate after a preset time.
That is, after the display screen receives the second refresh rate switching command, the screen refresh rate of the display screen may be switched to the preset refresh rate in response to the second refresh rate switching command. In this way, the display screen may periodically send the second Vsync signal to the SurfaceFlinger according to the preset period, for the SurfaceFlinger to calibrate the Vsync signal. After the SurfaceFlinger finishes the calibration of the Vsync signal, the signal period of the first Vsync signal may be set to a preset period. And the display screen responds to the second refresh rate switching instruction, and after the preset time, the screen refresh rate of the display screen can be switched to the first refresh rate, namely the display screen operates according to the period with the length being the reciprocal of the first refresh rate, namely the display image frame is refreshed according to the period with the length being the reciprocal of the first refresh rate, so that the power consumption is reduced.
In another possible implementation manner of the second aspect, the preset refresh rate is a screen refresh rate supported by the display screen.
That is, after the display screen receives the second refresh rate switching command, the screen refresh rate of the display screen may be switched to the preset refresh rate in response to the second refresh rate switching command before the screen refresh rate of the display screen is switched to the first refresh rate. In this way, the display screen may send the second Vsync signal to the SurfaceFlinger according to the preset period, for the SurfaceFlinger to calibrate the Vsync signal.
In another possible implementation manner of the second aspect, the first refresh rate is a target refresh rate when the display screen displays a static image.
When the display screen displays a still image, the screen refresh rate of the display screen may be set to a first refresh rate (low refresh rate) to reduce power consumption.
In another possible implementation manner of the second aspect, the preset refresh rate is 120Hz; the first refresh rate is 10Hz or 1Hz; the second refresh rate is 60Hz, 90Hz, or 120Hz.
That is, after the display screen receives the second refresh rate switching command, the screen refresh rate of the display screen may be switched to the preset refresh rate of 120Hz in response to the second refresh rate switching command. Thus, the display screen may send the second Vsync signal to the SurfaceFlinger in a period of 8ms, for the SurfaceFlinger to perform Vsync signal calibration. After the SurfaceFlinger finishes the calibration of the Vsync signal, the signal period of the first Vsync signal may be set to 8ms, and may run according to the period of 8 ms. And the display screen responds to the second refresh rate switching command, and after the preset time, the screen refresh rate of the display screen can be switched to 10Hz or 1Hz, namely the display screen operates according to the period of 100ms or 1000ms, namely the display image frames are refreshed according to the period of 100ms or 1000ms, so that the power consumption is reduced. And then, if the surfeflinger receives the first refresh rate switching instruction, the surfeflinger can issue the first refresh rate switching instruction after the current period of 8ms is ended, so that the display screen timely receives the first refresh rate switching instruction, and timely responds to the first refresh rate switching instruction to switch the screen refresh rate to 60Hz, 90Hz or 120Hz.
In another possible implementation manner of the second aspect, the first refresh rate switching instruction is triggered by the electronic device receiving a notification or a user operation in a case where a static image is displayed. Wherein the notification or user action is used to trigger the electronic device to update the interface.
That is, in the case of displaying a still image, the electronic device may trigger the first refresh rate switching command if a notification or a user operation is received, thereby controlling the screen refresh rate of the display screen to switch from the first refresh rate (low refresh rate) to the second refresh rate (high refresh rate).
In another possible implementation manner of the second aspect, the second refresh rate switching instruction is triggered when the electronic device switches from displaying the dynamic image to displaying the static image.
That is, when the electronic device switches from displaying a dynamic image to displaying a static image, the second refresh rate switching command may be triggered to control the screen refresh rate of the display screen to switch to the first refresh rate (low refresh rate) to reduce power consumption.
In a third aspect, the present application provides an electronic device comprising a display screen, a memory, and one or more processors. The display, memory, and processor are coupled. The memory is for storing computer program code, the computer program code comprising computer instructions. When the processor executes computer instructions, the electronic device performs the method as described in the first aspect or the second aspect and any one of the possible designs thereof.
In a fourth aspect, the present application provides a chip system for use in an electronic device comprising a display screen. The system-on-chip includes one or more interface circuits and one or more processors. The interface circuit and the processor are interconnected by a wire. The interface circuit is for receiving signals from a memory of the electronic device and transmitting signals to the processor, the signals including computer instructions stored in the memory. When the processor executes the computer instructions, the electronic device performs the method as described in the first aspect or the second aspect and any one of its possible designs.
In a fifth aspect, the present application provides a computer storage medium comprising computer instructions which, when run on an electronic device, cause the electronic device to perform a method as described in the first or second aspect and any one of its possible designs.
In a sixth aspect, the present application provides a computer program product which, when run on a computer, causes the computer to perform the method according to the first or second aspect and any one of its possible designs.
It will be appreciated that the advantages achieved by the electronic device according to the third aspect, the chip system according to the fourth aspect, the computer storage medium according to the fifth aspect, and the computer program product according to the sixth aspect may refer to the advantages as in the first aspect or the second aspect and any of the possible designs thereof, and will not be repeated here.
Drawings
Fig. 1 is a schematic diagram of a Vsync mechanism of an Android system in an embodiment of the present application;
FIG. 2A is a block diagram of an electronic device software architecture according to an embodiment of the present application;
fig. 2B is a schematic hardware structure of an electronic device according to an embodiment of the present application;
fig. 3 is a flow chart for switching refresh rates of Android system native in an embodiment of the present application;
FIG. 4 is a flowchart of a refresh rate switching process according to an embodiment of the present disclosure;
FIG. 5 is a schematic diagram of refresh rate switching according to an embodiment of the present disclosure;
FIG. 6 is a flowchart of another refresh rate switching provided in an embodiment of the present application;
FIG. 7 is a schematic diagram of another refresh rate switching provided by an embodiment of the present application;
FIG. 8A is a flowchart of another refresh rate switching provided in an embodiment of the present application;
FIG. 8B is a schematic diagram of another refresh rate switching provided by an embodiment of the present application;
fig. 9 is a flowchart of interaction between each module in a method for switching a refresh rate of a screen according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of a chip system according to an embodiment of the present application.
Detailed Description
In order to better understand the technical solution in the embodiments of the present application, the following describes the display principle and related terms of the Android (Android) terminal device related in the embodiments of the present application.
The display flow of an Application (APP) in the Android terminal device can be divided into three stages of APP drawing and rendering, layer integrator (surface eflinger) synthesis and display screen refreshing and displaying.
(1) Screen Refresh Rate (Refresh Rate or Scanning Frequency)
The screen refresh rate is classified into a vertical refresh rate and a horizontal refresh rate, and a generally-mentioned screen refresh rate is generally referred to as a vertical refresh rate. The vertical refresh rate represents the number of refreshes per second of an image displayed by the display screen in Hz (hertz). For example, a 60Hz screen means that one display screen can complete 60 refreshes of the displayed image frames within 1 second. The higher the screen refresh rate, the more times the display screen can finish refreshing the display image frames within 1 second. Accordingly, the higher the picture smoothness.
(2) Frame Rate (also known as Frame Rate)
The frame rate refers to the number of frames of an image generated per second by a graphics card (graphics processor). Frame rate (frame) =frame number (Frames)/Time (Time), in Frames per second (Frames per second, i.e. f/s, also referred to as fps). A high frame rate may result in a smoother, more realistic animation. The higher the frame rate (fps), the smoother the displayed motion. The performance of the existing display card is greatly improved, and the frame rate which can be realized is higher and higher. However, if the frame rate exceeds the screen refresh rate, only graphics processing capability is wasted, and thus frame rates exceeding the refresh rate are wasted. And because the display screen cannot be updated at the same speed, frame tearing occurs when the frame rate is too high. For example, the screen refresh rate is 60Hz, and if the output of the graphics card is greater than 60fps, the two are not synchronized, and the picture will tear. The Android system solves the problem of picture tearing through a vertical synchronization (Vertical synchronization, vsync for short, also called field synchronization) mechanism.
(3) Vsync mechanism
The display principle of the Android system is based on a Vsync mechanism. Under the Vsync mechanism, there are 2 Vsync signals in the Android system: one is a hardware-generated Vsync signal, which may be referred to as a hardware Vsync signal (Vsync-HW signal, hereinafter referred to as a second Vsync signal); the other is a software-simulated Vsync signal, which may be referred to as a software Vsync signal (hereinafter referred to as a first Vsync signal). The first Vsync signal may include a Vsync-APP signal and a Vsync-SF signal.
The SurfaceFlinger may receive the second Vsync signal, perform Vsync signal calibration, that is, generate the first Vsync signal according to the second Vsync signal, and keep the first Vsync signal and the second Vsync signal in synchronization with each other in period, that is, make the signal period of the first Vsync signal vary with the signal period of the second Vsync signal. Wherein the signal period of the second Vsync signal is equal to the inverse of the screen refresh rate of the display screen. For example, during a screen refresh rate switch, surfeflinger turns on the Vsync signal calibration. Taking the example that the screen refresh rate of the display screen is switched from 60Hz to 120Hz, the frequency of the display screen reporting the second Vsync signal is switched from 60Hz to 120Hz, i.e. the signal period of the second Vsync signal is switched from 16ms to 8ms. At this time, the SurfaceFlinger starts the calibration of the Vsync signal, receives the second Vsync signal, and according to the period of receiving the second Vsync signal, determines that the display screen has completed the screen refresh rate switching, and switches the signal period of the first Vsync signal from 16ms to 8ms to keep the first Vsync signal and the second Vsync signal in synchronization.
The surfeflinger may use the DiscSync:: addResyncSample function to determine if the second Vsync signal also needs to be input. If not required, the surfeflinger may turn off the second Vsync signal input by the EventControlThread thread, thereby turning off the Vsync signal calibration. After a period of time, if the SurfaceFlinger needs to receive the second Vsync signal again to calibrate the first Vsync signal, the EventControlThread thread may turn on the second Vsync signal input again, thereby turning on the Vsync signal calibration.
The display screen refreshing process is left to right (horizontal refresh, horizontal Scanning), top to bottom (vertical refresh, vertical Scanning), and sequentially displays pixel points on the image. When the display screen is refreshed, i.e., a vertical refresh period is completed, there is a short blanking period (i.e., vertical Blanking Interval, VBI, vertical retrace period), and the display screen sends out a second Vsync signal. Therefore, V in Vsync refers to Vertical (Vertical) in Vertical refresh, and the period of the display screen emitting the second Vsync signal is equal to the time taken for the display screen to refresh and display one image frame.
For example, under the Vsync mechanism, APP drawing and rendering in the APP display flow in the Android terminal device are triggered by the Vsync-APP signal, surfeflinger synthesis is triggered by the Vsync-SF signal, and display screen refresh display is triggered by the second Vsync signal. After the APP receives a Vsync-APP signal, the next image frame is drawn and rendered by calling a central processing unit (Central Processing Unit, CPU) and a graphics processing unit (Graphic Processing Unit, GPU). After the surfeflinger receives a Vsync-SF signal, the next image frame synthesis starts. After receiving a Vsync-HW signal, the display screen starts displaying the next image frame. Therefore, APP drawing and rendering, surfaceFlinger synthesis and display screen refreshing display synchronization are completed. Referring to fig. 1, fig. 1 shows a schematic diagram of an androidsync mechanism. As shown in fig. 1, based on the Vsync mechanism of the Android system, the Android terminal device displays the following flow:
1) In the ith signal period, the display screen displays an image Frame0 synthesized by SurfaceFlinger; synthesizing an image Frame1 drawn and rendered by APP by SurfaceFlinger; APP draws and renders image Frame2;
2) In the (i+1) th signal period, the display screen displays an image Frame1 synthesized by SurfaceFlinger; synthesizing an image Frame2 drawn and rendered by APP by SurfaceFlinger; APP draws and renders image Frame3;
3) In the (i+2) th signal period, the display screen displays an image Frame2 synthesized by SurfaceFlinger; synthesizing an image Frame3 drawn and rendered by APP by SurfaceFlinger; APP draws and renders an image Frame4;
4) In the (i+3) signal period, the display screen displays an image Frame3 synthesized by SurfaceFlinger; synthesizing an image Frame4 drawn and rendered by APP by SurfaceFlinger; the APP draws and renders image Frame5, and so on.
The signal period refers to a signal period of the first Vsync signal and the second Vsync signal. The first Vsync signal is kept periodically synchronized with the second Vsync signal.
It can be seen that under the Vsync mechanism, the Android terminal device starts drawing an image frame, and then, the image frame is displayed on the display screen finally, 2 signal periods, that is, a delay of 2 signal periods, are passed.
The software system of the electronic device may employ a layered architecture, an event driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture. In the embodiment of the application, taking an Android system with a layered architecture as an example, a software structure of an electronic device is illustrated.
Fig. 2A is a software architecture block diagram of an electronic device according to an embodiment of the present application.
The layered architecture divides the software into several layers, each with distinct roles and branches. The layers communicate with each other through a software interface. In some embodiments, the Android system is divided into five layers, from top to bottom, an application layer, an application framework layer, an Zhuoyun row (ART) and native C/c++ libraries, a hardware abstraction layer (Hardware Abstract Layer, HAL), and a kernel layer, respectively.
The application layer may include a series of application packages.
As shown in fig. 2A, the application package may include applications for cameras, gallery, calendar, talk, map, navigation, WLAN, bluetooth, music, video, short message, etc.
The application framework layer provides an application programming interface (application programming interface, API) and programming framework for application programs of the application layer. The application framework layer includes a number of predefined functions.
As shown in FIG. 2A, the application framework layer may include a refresh rate control module, a surfaceFinger, a window manager, a content provider, a view system, a resource manager, a notification manager, an activity manager, an input manager, and the like.
Wherein the refresh rate control module has the ability to sense external events. For example, the refresh rate control module may detect User Interface (UI) events from an application of the application layer or a hardware abstraction layer or a kernel layer through an API. The UI event may be triggered by a user clicking or sliding the electronic device. Alternatively, the UI event may be automatically triggered by the electronic device. For example, the UI event may be triggered when a foreground application of the electronic device automatically switches screens. The foreground application is an application corresponding to an interface currently displayed by a display screen of the electronic device. For another example, the electronic device may need to display a pop-up window, i.e., trigger the UI event described above, upon receiving a message notification. Based on the detected UI event, a screen refresh rate suitable for the current display scene may be determined and the display screen may be controlled to switch the screen refresh rate to a screen refresh rate suitable for the current display scene.
And the switching process of the screen refresh rate of the display screen may include: the refresh rate control module sends a refresh rate switching instruction to the surfeflinger, the surfeflinger issues the refresh rate switching instruction to an HWC (hwcomponent), the HWC issues the refresh rate switching instruction to a display driver, the display driver notifies the display driver chip to switch to a target refresh rate after receiving the refresh rate switching instruction, the display driver chip drives a display screen (e.g., an OLED or an LCD) to complete screen refresh rate switching, performs image refresh display at a new screen refresh rate, and the display driver chip periodically sends a second Vsync signal to the display driver. The display driver reports the second Vsync signal. The SurfaceFlinger receives the second Vsync signal, determines whether the signal period of the second Vsync signal is a period corresponding to the target refresh rate according to the period of receiving the second Vsync signal, and if so, can determine that the screen refresh rate switching is completed. The SurfaceFlinger generates a corresponding first Vsync signal according to a period corresponding to the target refresh rate. APP and surfeflinger perform layer drawing, layer rendering, and layer composition operations after receiving the first Vsync signal. In this way, the frame rates of the operations of layer drawing, layer rendering and layer composition by APP and SurfaceFlinger can be switched to be consistent with the target refresh rate.
The window manager provides window management services (Window Manager Service, WMS) that may be used for window management, window animation management, surface management, and as a transfer station to the input system.
The content provider is used to store and retrieve data and make such data accessible to applications. The data may include video, images, audio, calls made and received, browsing history and bookmarks, phonebooks, etc.
The view system includes visual controls, such as controls to display text, controls to display pictures, and the like. The view system may be used to build applications. The display interface may be composed of one or more views. For example, a display interface including a text message notification icon may include a view displaying text and a view displaying a picture.
The resource manager provides various resources for the application program, such as localization strings, icons, pictures, layout files, video files, and the like.
The notification manager allows the application to display notification information in a status bar, can be used to communicate notification type messages, can automatically disappear after a short dwell, and does not require user interaction. Such as notification manager is used to inform that the download is complete, message alerts, etc. The notification manager may also be a notification in the form of a chart or scroll bar text that appears on the system top status bar, such as a notification of a background running application, or a notification that appears on the screen in the form of a dialog window. For example, a text message is prompted in a status bar, a prompt tone is emitted, the electronic device vibrates, and an indicator light blinks, etc.
The activity manager may provide activity management services (Activity Manager Service, AMS) that may be used for system component (e.g., activity, service, content provider, broadcast receiver) start-up, handoff, scheduling, and application process management and scheduling tasks.
The input manager may provide input management services (Input Manager Service, IMS), which may be used to manage inputs to the system, such as touch screen inputs, key inputs, sensor inputs, and the like. The IMS retrieves events from the input device node and distributes the events to the appropriate windows through interactions with the WMS.
The android runtime includes a core library and An Zhuoyun rows. The android runtime is responsible for converting source code into machine code. Android runtime mainly includes employing Advanced Or Time (AOT) compilation techniques and Just In Time (JIT) compilation techniques.
The core library is mainly used for providing the functions of basic Java class libraries, such as basic data structures, mathematics, IO, tools, databases, networks and the like. The core library provides an API for the user to develop the android application.
The native C/c++ library may include a plurality of functional modules. For example: surface manager (surface manager), media Framework (Media Framework), libc, openGL ES, SQLite, webkit, etc.
The surface manager is used for managing the display subsystem and providing fusion of 2D and 3D layers for a plurality of application programs. Media frames support a variety of commonly used audio, video format playback and recording, still image files, and the like. The media library may support a variety of audio and video encoding formats, such as MPEG4, h.264, MP3, AAC, AMR, JPG, PNG, etc. OpenGL ES provides for drawing and manipulation of 2D graphics and 3D graphics in applications. SQLite provides a lightweight relational database for applications of the electronic device 100.
The hardware abstraction layer runs in a user space (user space), encapsulates the kernel layer driver, and provides a call interface to the upper layer. The hardware abstraction layer may include HWC with the function or capability to complete image data combining and displaying with hardware, and specific image display may be cooperatively completed by multiple classes such as SurfaceFlinger, HWC, display screen, etc.
The HWC is a module of a hardware abstraction layer for window/layer synthesis and display in the Android system, and provides hardware support for SurfaceFlinger service.
Wherein, surfaceFlinger provides all soft layer information to HWC and inquires the HWC processing mode. Further, the HWC may decide whether to use hardware underlying the HWC (e.g., a hardware synthesizer) or GPU synthesis based on hardware performance; for example, the HWC may label each layer with a composition mode, whether synthesized by the GPU or by the HWC. On the one hand, surfaceFlinger processes a soft layer which needs GPU synthesis, and submits the result to a display screen through HWC; on the other hand, the soft layer requiring hardware synthesizer synthesis is handled by the HWC itself.
SurfaceFlinger may use a three-dimensional graphics processing library (e.g., openGLES) to synthesize the layers, which requires the occupation and consumption of GPU resources. Most GPUs are not optimized for graphics layers, and applications cannot use the GPU for their own rendering when surfeflinger synthesizes graphics layers through the GPU. And the HWC performs layer synthesis through a hardware synthesizer, so that the synthesis pressure of the GPU can be reduced.
The kernel layer is a layer between hardware and software. The inner core layer at least comprises a display driver, a camera driver, an audio driver and a sensor driver. In particular to the present application, the hardware involved may include a display driver chip (e.g., display driver integrated chip, display driver integrated circuit, DDIC) and a display screen (e.g., OLED or LCD). The display driver is used for driving the DDIC to complete the processing and implementation of the display.
Taking the example of the user starting the application a, after the user starts the application a, the display screen will display the interface of the application a. Specifically, the application a sends the display parameters of the interface to be displayed to the SurfaceFlinger. SurfaceFinger is responsible for the fusion of control interfaces (surfaces). By way of example, the interface herein may be an interface presented by status bar, system bar, application itself (interface to be displayed by application a), wallpaper, background, or the like. Therefore, the SurfaceFlinger not only can acquire the display parameters of the interface to be displayed by the application A, but also can acquire the display parameters of other interfaces. The SurfaceFlinger sends display parameters (such as memory address, color, etc.) of each interface to the HWC through interfaces (such as set Layer Buffer, set Layer Color, etc.) for interface fusion. In general, in image synthesis (for example, when an electronic device displays an image, a status bar, a system bar, an application itself and a wallpaper background are required to be synthesized), HWC obtains a synthesized image according to display parameters of each interface through hardware (such as a hardware synthesizer) of the HWC bottom layer. After the HWC obtains the synthesized image through the underlying hardware, the SurfaceFlinger ends the task of synthesizing the image this time. The HWC sends the image synthesized by the bottom hardware to the display driver of the kernel layer. The display driver of the kernel layer gives the synthesized image to the display driver chip of the hardware layer, the display driver chip of the hardware layer carries out secondary processing on the synthesized image, and the image after secondary processing is sent to the display screen for display. In practical applications, the secondary treatment may not be performed. If the secondary processing is not carried out, the display drive of the hardware layer directly sends the synthesized image to the display screen for display. According to the mode, the display screen can finish one-time refreshing display flow. The electronic device may execute the above-described refresh display flow at a certain period according to a screen refresh rate of the display screen. For example, the screen refresh rate of the display screen is 60Hz, and the corresponding signal period is 16ms, which corresponds to executing the refresh display process every 16 ms.
By way of example, the electronic device in the embodiments of the present application may be a mobile phone, a tablet computer, a desktop, a laptop, a handheld computer, a notebook, an ultra-mobile personal computer (ultra-mobile personal computer, UMPC), a netbook, a cellular phone, a personal digital assistant (personal digital assistant, PDA), an augmented reality (augmented reality, AR) \virtual reality (VR) device, or a device including a touch screen, and the specific form of the electronic device is not particularly limited in the embodiments of the present application.
The implementation of the examples of the present application will be described in detail below with reference to the accompanying drawings.
Fig. 2B is a schematic structural diagram of an electronic device 200 according to an embodiment of the present application. As shown in fig. 2B, the electronic device 200 may include a processor 210, an external memory interface 220, an internal memory 221, a universal serial bus (universal serial bus, USB) interface 230, a charge management module 240, a power management module 241, a battery 242, an antenna 1, an antenna 2, a mobile communication module 250, a wireless communication module 260, an audio module 270, a sensor module 280, keys 290, a motor 291, an indicator 292, a camera 293, a display 294, a subscriber identity module (subscriber identification module, SIM) card interface 295, and the like.
The sensor module 280 may include a touch sensor, among others. It is to be understood that the structure illustrated in this embodiment does not constitute a specific limitation on the electronic apparatus 200. In other embodiments, the electronic device 200 may include more or fewer components than shown, or certain components may be combined, or certain components may be split, or different arrangements of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
Processor 210 may include one or more processing units. Wherein the different processing units may be separate devices or may be integrated in one or more processors.
The controller may be a neural hub and command center of the electronic device 200. The controller can generate operation control signals according to the instruction operation codes and the time sequence signals to finish the control of instruction fetching and instruction execution.
A memory may also be provided in the processor 210 for storing instructions and data. In some embodiments, the memory in the processor 210 is a cache memory. The memory may hold instructions or data that the processor 210 has just used or recycled. If the processor 210 needs to reuse the instruction or data, it may be called directly from the memory. Repeated accesses are avoided and the latency of the processor 210 is reduced, thereby improving the efficiency of the system.
In some embodiments, processor 210 may include one or more interfaces. The interfaces may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous receiver transmitter (universal asynchronous receiver/transmitter, UART) interface, a mobile industry processor interface (mobile industry processor interface, MIPI), a general-purpose input/output (GPIO) interface, a subscriber identity module (subscriber identity module, SIM) interface, and/or a universal serial bus (universal serial bus, USB) interface, among others.
It should be understood that the connection relationship between the modules illustrated in this embodiment is only illustrative, and does not limit the structure of the electronic device 200. In other embodiments, the electronic device 200 may also employ different interfaces in the above embodiments, or a combination of interfaces.
The charge management module 240 is configured to receive a charge input from a charger. The charging management module 240 may also provide power to the electronic device through the power management module 241 while charging the battery 242.
The power management module 241 is used for connecting the battery 242, and the charge management module 240 and the processor 210. The power management module 241 receives input from the battery 242 and/or the charge management module 240 and provides power to the processor 210, the internal memory 221, the external memory, the display 294, the camera 293, the wireless communication module 260, and the like. In other embodiments, the power management module 241 may also be disposed in the processor 210. In other embodiments, the power management module 241 and the charge management module 240 may be disposed in the same device.
The wireless communication function of the electronic device 200 can be implemented by the antenna 1, the antenna 2, the mobile communication module 250, the wireless communication module 260, a modem processor, a baseband processor, and the like.
The antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in the electronic device 200 may be used to cover a single or multiple communication bands. Different antennas may also be multiplexed to improve the utilization of the antennas. For example: the antenna 1 may be multiplexed into a diversity antenna of a wireless local area network.
The mobile communication module 250 may provide a solution for wireless communication including 2G/3G/4G/5G, etc., applied on the electronic device 200. The mobile communication module 250 may include at least one filter, switch, power amplifier, low noise amplifier (low noise amplifier, LNA), etc. The mobile communication module 250 may receive electromagnetic waves from the antenna 1, perform processes such as filtering, amplifying, and the like on the received electromagnetic waves, and transmit the processed electromagnetic waves to the modem processor for demodulation. The mobile communication module 250 can amplify the signal modulated by the modem processor, and convert the signal into electromagnetic waves through the antenna 1 to radiate.
The modem processor may include a modulator and a demodulator. The modulator is used for modulating the low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is used for demodulating the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low frequency baseband signal to the baseband processor for processing. The low frequency baseband signal is processed by the baseband processor and then transferred to the application processor. The application processor outputs sound signals through an audio device or displays images or video through the display screen 294.
The wireless communication module 260 may provide solutions for wireless communication including wireless local area network (wireless local area networks, WLAN) (e.g., wireless fidelity (wireless fidelity, wi-Fi) network), bluetooth (BT), global navigation satellite system (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field wireless communication technology (near field communication, NFC), infrared technology (IR), etc., as applied on the electronic device 200. The wireless communication module 260 may be one or more devices that integrate at least one communication processing module. The wireless communication module 260 receives electromagnetic waves via the antenna 2, modulates the electromagnetic wave signals, filters the electromagnetic wave signals, and transmits the processed signals to the processor 210. The wireless communication module 260 may also receive a signal to be transmitted from the processor 210, frequency modulate it, amplify it, and convert it to electromagnetic waves for radiation via the antenna 2.
In some embodiments, antenna 1 and mobile communication module 250 of electronic device 200 are coupled, and antenna 2 and wireless communication module 260 are coupled, such that electronic device 200 may communicate with a network and other devices via wireless communication techniques.
The electronic device 200 implements display functions through a GPU, a display screen 294, an application processor, and the like. The GPU is a microprocessor for image processing, and is connected to the display screen 294 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 210 may include one or more GPUs that execute program instructions to generate or change display information.
The display 294 is used to display images, videos, and the like. The display 294 includes a display panel. The display panel may employ a liquid crystal display (liquid crystal display, LCD), an organic light-emitting diode (OLED), an active-matrixorganic light emitting diode (AMOLED), a flexible light-emitting diode (flex), a mini, a Micro led, a Micro-OLED, a quantum dot light-emitting diode (quantum dot light emitting diodes, QLED), or the like.
The display screen 294 in the embodiment of the present application may be a touch screen. I.e. the display 294 has a touch sensor integrated therein. The touch sensor may also be referred to as a "touch panel". That is, the display screen 294 may include a display panel and a touch panel, and a touch screen, also referred to as a "touch screen", is composed of a touch sensor and the display screen 294. The touch sensor is used to detect a touch operation acting on or near it. After a touch operation detected by the touch sensor, a driver (e.g., TP driver) of the kernel layer may be transferred to an upper layer to determine a touch event type. Visual output related to touch operations may be provided through the display 294. In other embodiments, the touch sensor may also be disposed on a surface of the electronic device 200 at a different location than the display 294.
The electronic device 200 may implement a photographing function through an ISP, a camera 293, a video codec, a GPU, a display 294, an application processor, and the like. The ISP is used to process the data fed back by the camera 293. The camera 293 is used to capture still images or video. The digital signal processor is used for processing digital signals, and can process other digital signals besides digital image signals. Video codecs are used to compress or decompress digital video. The electronic device 200 may support one or more video codecs. In this way, the electronic device 200 may play or record video in a variety of encoding formats, such as: dynamic picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4, etc.
The external memory interface 220 may be used to connect an external memory card, such as a Micro SD card, to enable expansion of the memory capabilities of the electronic device 200. The external memory card communicates with the processor 210 through an external memory interface 220 to implement data storage functions. For example, files such as music, video, etc. are stored in an external memory card. Internal memory 221 may be used to store computer executable program code that includes instructions. The processor 210 executes various functional applications of the electronic device 200 and data processing by executing instructions stored in the internal memory 221. For example, in an embodiment of the present application, the processor 210 may include a memory program area and a memory data area by executing instructions stored in the internal memory 221. The storage program area may store an application program (such as a sound playing function, an image playing function, etc.) required for at least one function of the operating system, etc. The storage data area may store data created during use of the electronic device 200 (e.g., audio data, phonebook, etc.), and so on. In addition, the internal memory 221 may include a high-speed random access memory, and may further include a nonvolatile memory such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (universal flash storage, UFS), and the like.
The electronic device 200 may implement audio functions through an audio module 270, a speaker 270A, a receiver 270B, a microphone 170C, an ear-headphone interface 270D, an application processor, and the like. Such as music playing, recording, etc.
The audio module 270 is used to convert digital audio information into an analog audio signal output and also to convert an analog audio input into a digital audio signal. The audio module 270 may also be used to encode and decode audio signals.
Keys 290 include a power on key, a volume key, etc. The keys 290 may be mechanical keys. Or may be a touch key. The electronic device 200 may receive key inputs, generating key signal inputs related to user settings and function controls of the electronic device 200. The motor 291 may generate a vibration alert. The motor 291 may be used for incoming call vibration alerting or for touch vibration feedback. The indicator 292 may be an indicator light, which may be used to indicate a state of charge, a change in power, a message indicating a missed call, a notification, etc. The SIM card interface 295 is for interfacing with a SIM card. The SIM card may be inserted into the SIM card interface 295 or removed from the SIM card interface 295 to enable contact and separation from the electronic device 200. The electronic device 200 may support 1 or N SIM card interfaces, N being a positive integer greater than 1. The SIM card interface 295 may support Nano SIM cards, micro SIM cards, and the like.
The methods in the following embodiments may be implemented in the electronic device 200 having the above-described hardware structure.
Under one scene, if the user does not operate the electronic equipment, the electronic equipment does not receive a notice and the like, and a popup window does not appear, when the display screen of the electronic equipment displays a static image, the screen refresh rate of the display screen is switched from a high refresh rate to a low refresh rate, so that electric energy and CPU resources can be saved. Wherein, the low refresh rate means that the screen refresh rate of the display screen is less than or equal to a preset threshold, for example, the screen refresh rate is 10Hz or 1Hz. High refresh rate means that the screen refresh rate of the display screen is greater than a preset threshold, such as 60Hz, 90Hz, or 120Hz. However, when the screen refresh rate of the display screen is low, if the user performs a click operation or a sliding operation, or the terminal receives a message notification, the display screen needs to display a popup window, or the electronic device display screen needs to display an animation, etc., the display screen needs to exit from the low refresh rate and switch back to the high refresh rate.
Referring to fig. 3, fig. 3 shows a screen refresh rate switching flowchart under the native mechanism of the Android system in a scenario where the display screen needs to exit from a low refresh rate and switch back to a high refresh rate. As shown in fig. 3, the screen refresh rate switching process under the Android system native mechanism includes the following steps:
S301, surfeflinger receives the first refresh rate switching command in the ith signal period (the signal period is a signal period T1 corresponding to the first refresh rate f1, where T1 is equal to the inverse of the first refresh rate, i.e. t1=1/f 1, such as t1=100 ms in the case of f1=10 Hz). The first refresh rate switching instruction is for instructing a screen refresh rate of the display screen to switch from a first refresh rate to a second refresh rate. The first refresh rate is smaller than or equal to a preset threshold value, and the second refresh rate is larger than the preset threshold value.
It should be understood that, if the electronic device receives a user operation (such as clicking or sliding operation) or receives a notification that an interface update needs to be performed in the ith signal period, the frame rate control module of the electronic device may issue a first refresh rate switching instruction to the SurfaceFlinger after sensing the above situation, so as to instruct the screen refresh rate of the display screen to switch from the first refresh rate to the second refresh rate.
S302, a SurfaceFlinger receives a first refresh rate switching instruction, responds to the end of an ith signal period, namely the start of an (i+1) th signal period, generates a first Vsync signal for triggering SurfaceFlinger to perform new layer composition, and issues the first refresh rate switching instruction to a display driver; and initiates Vsync signal calibration.
S303, the display driver receives the first refresh rate switching instruction and issues the first refresh rate switching instruction to the display screen.
S304, the display screen receives a first refresh rate switching instruction, and refreshes and displays an image frame in the (i+1) th signal period.
S305, refreshing and displaying an image frame by the display screen, switching the screen refresh rate of the display screen from a first refresh rate to a second refresh rate according to a first refresh rate switching instruction, refreshing and displaying the image frame according to the second refresh rate, and periodically sending a second Vsync signal to a display driver by the display screen according to the second refresh rate.
Through the steps, the signal period of the second Vsync signal can be switched from T1 to the signal period T2 corresponding to the second refresh rate f2, and every other T2 reports the second Vsync signal to the display driver. Where T2 is equal to the inverse of the second refresh rate, i.e., t2=1/f 2.
And S306, the display driver periodically receives a second Vsync signal from the display screen and reports the received second Vsync signal to the SurfaceFlinger.
S307, surfeflinger periodically receives the second Vsync signal. If the period of receiving the second Vsync signal (period, i.e., the interval time of receiving two adjacent second Vsync signals) is T2, the surfeflinger confirms that the screen refresh rate switching is completed, and closes the Vsync signal calibration. If the period in which the SurfaceFlinger receives the second Vsync signal is not equal to T2, the process continues to step S307.
Thus, after surfeflinger determines that the screen refresh rate switching is completed, the first Vsync signal may be periodically generated in accordance with the signal period after the Vsync signal calibration, i.e., T2, in response to the end of the current signal period (i+2th signal period). That is, the signal period of the first Vsync signal is adjusted to T2.
It should be understood that, in the above step S306, after the surfeflinger confirms that the screen refresh rate switching is completed, the signal period of the first Vsync signal is adjusted to T2, which needs to be effective only after the (i+2) th signal period ends, that is, the surfeflinger can periodically generate the first Vsync signal (including the Vsync-APP signal and the Vsync-SF signal) at the (i+2) th signal period ends with the second refresh rate as a frequency and with the T2 as a period.
Illustratively, the first refresh rate is 10Hz and the corresponding T1 is 100ms. The second refresh rate is 60Hz and the corresponding T2 is 16ms. The preset refresh rate is 120Hz and the corresponding preset period is 8ms.
According to the above screen refresh rate switching flow under the Android system native mechanism, when the screen refresh rate of the display screen needs to be switched from a low refresh rate (first refresh rate) to a high refresh rate (second refresh rate), after receiving the first refresh rate switching instruction, the SurfaceFlinger still needs to complete layer synthesis of the current image frame according to the current signal period (i-th signal period), and generates a first Vsync signal after the i-th signal period ends, i.e. the i+1th signal period begins, to trigger new layer synthesis, and at this time, the first refresh rate switching instruction is issued and the Vsync signal calibration is started. After the display screen receives the first refresh rate switching command, it still needs to execute one image frame refresh display according to the current signal period (i+1th signal period), and then switches the screen refresh rate of the display screen from the first refresh rate to the second refresh rate, i.e. switches the signal period of the second Vsync signal from T1 to T2 (e.g. 16 ms), and reports a second Vsync signal to the display driver every other T2. The SurfaceFlinger receives the second Vsync signals, and determines whether the signal period of the second Vsync signals is T2 according to the interval time between the two second Vsync signals, if yes, it can be confirmed that the screen refresh rate switching is completed. However, the surfeflinger needs to end in the current signal period (i+2th signal period) to generate the first Vsync signal with the second refresh rate as the frequency and T2 as the signal period. Thus, according to the screen refresh rate switching flow under the Android system native mechanism, the whole screen refresh rate switching process (from the receiving of the first refresh rate switching command from the surfeflinger to the generating of the first Vsync signal by the surfeflinger according to the second refresh rate) needs to consume at least two signal periods (the signal period is T1, and the two signal periods are 2 frame processing durations under the low refresh rate) to be completed.
For example, the first case: surfaceFlinger receives a first refresh rate switching command near the end of the ith signal period, i.e., near the end of the i signal periods at time t1 shown in FIG. 3, x1≡0. The SurfaceFlinger issues a first refresh rate switching instruction at the beginning of the (i+1) th signal period, the display screen receives the first refresh rate switching instruction in the (i+1) th signal period, performs image frame refresh display once according to the current signal period (i+1) th signal period), switches the screen refresh rate of the display screen from the first refresh rate to the second refresh rate, and reports a second Vsync signal to the display driver every other T2. The SurfaceFlinger receives the second Vsync signals, and determines whether the signal period of the second Vsync signals is T2 according to the interval time between the two second Vsync signals, if so, it can be confirmed that the screen refresh rate switching is completed, which is in the (i+2) th signal period. The surfeflinger needs to end at the current signal period (i+2th signal period) (time T2 shown in fig. 3) to generate the first Vsync signal with the second refresh rate as the frequency and T2 as the signal period. The first case is a case where the time required for the entire screen refresh rate switching process is shortest, and switching from the first refresh rate switching instruction to the screen refresh rate of the display screen from the surface eflinger needs to take a time of approximately one signal period (the signal period is T1, such as t1=100 ms, one signal period is 100 ms) and generating the first Vsync signal (from time T1 to time T2) from the surface eflinger to the surface eflinger at the second refresh rate needs to take a time of two signal periods (the signal period is T1, such as t1=100 ms, two signal periods are 200 ms).
For another example, the second case: surfaceFlinger receives the first refresh rate switching command immediately after the start of the ith signal period, i.e., the time t1 shown in FIG. 3 is near the start time of the i signal periods, x1≡100. However, the surfeflinger needs to wait until the current signal period is over, and issues a first refresh rate switching instruction when the (i+1) th signal period starts, the display screen receives the first refresh rate switching instruction in the (i+1) th signal period, and still needs to execute the image frame refresh display once according to the current signal period (i+1) th signal period), and then switches the screen refresh rate of the display screen from the first refresh rate to the second refresh rate, and reports a second Vsync signal to the display driver every other T2. The SurfaceFlinger receives the second Vsync signal, and when determining that the period of the second Vsync signal is T2, it can confirm that the screen refresh rate switching is completed, which is already in the i+2th signal period. The surfeflinger needs to end at the current signal period (i+2th signal period) (time T2 shown in fig. 3) to generate the first Vsync signal with the second refresh rate as the frequency and T2 as the signal period. The second case is a case where the time required for the entire screen refresh rate switching process to be longest, a switching from the first refresh rate to the screen refresh rate of the display screen from the SurfaceFlinger needs to take a time of approximately two signal periods (the signal period is T1, such as t1=100 ms, two signal periods are 200 ms) and a generating of the first Vsync signal from the SurfaceFlinger to the SurfaceFlinger at the second refresh rate (from time T1 to time T2) needs to take a time of three signal periods (the signal period is T1, such as t1=100 ms, three signal periods are 300 ms).
Whereas if the first refresh rate is 1Hz, the corresponding T1 is 1000ms. Then, according to the screen refresh rate switching flow under the native mechanism of the Android system, the whole screen refresh rate switching process needs to go through at least 2000ms, namely 2 s).
Therefore, when the screen refresh rate of the display screen is switched from the high refresh rate to the low refresh rate, the signal period corresponding to the high refresh rate is shorter, the screen refresh rate switching process takes shorter time, and the problem of blocking cannot occur. However, on the processing mechanism of switching the screen refresh rate of the display screen from a low refresh rate back to a high refresh rate, according to the native mechanism of the Android system, the whole screen refresh rate switching process can be completed only by at least two periods of time under the low refresh rate. For example, a screen refresh rate of 10Hz is initiated for a display screen, and at least 200ms is required to complete the screen refresh rate switching process. For another example, if the initial screen refresh rate of the display screen is 1Hz, it takes at least 2 seconds to complete the screen refresh rate switching process. The screen refresh rate switching process is long in time consumption and poor in switching performance. Under such a mechanism, a screen refresh rate of the display screen may be switched to cause a jam, which seriously affects the heel handedness of the electronic device.
The following performance of the electronic device may be embodied as a length of a user operation response delay. The user operation response delay may be understood as a delay time from "a click or slide operation performed on the electronic device by a user" to "the electronic device displays an image corresponding to the click or slide operation as perceived by human eyes".
Specifically, the longer the user operation response delay, the worse the follow-up performance; the shorter the user operation response delay, the better the hands-on performance. The better the following performance of the electronic device is, the better the user experience of the electronic device is controlled through clicking or sliding operation, and the smoother the user feel is.
Based on this, the embodiment of the application provides a screen refresh rate switching method, which can be applied to electronic equipment, wherein the electronic equipment comprises a display screen. The method comprises the following steps: the surfacef link of the electronic device receives a first refresh rate switch command from an upper layer (e.g., a frame rate control module of the electronic device). The first refresh rate switching instruction is used for indicating that the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate. The first refresh rate is smaller than or equal to a preset threshold value, and the second refresh rate is larger than the preset threshold value. The SurfaceFlinger sends a first refresh rate switching command to a display driver of the electronic device in response to the end of a signal period of a current first Vsync signal. The first Vsync signal is used for triggering SurfaceFlinger to perform layer composition. The signal period of the first Vsync signal is set to a preset period in the case where the screen refresh rate of the display screen is the first refresh rate. The preset period is less than the inverse of the first refresh rate. The display driver responds to the first refresh rate switching instruction to switch the screen refresh rate of the display screen from the first refresh rate to the second refresh rate.
It should be appreciated that the first refresh rate is less than or equal to the predetermined threshold, and is a low refresh rate. The second refresh rate is higher than a preset threshold value and is a high refresh rate.
The technical solution provided by the above embodiment of the present application may be applied to the following scenarios:
in the first application scenario, a display screen of the electronic device displays a still image, and a screen refresh rate of the display screen is low, and at this time, a user performs a click operation. And the electronic equipment responds to clicking operation of a user, and needs to update the display picture of the display screen, and the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate.
In the second application scenario, the display screen of the electronic device displays a still image, and the screen refresh rate of the display screen is low, and the user performs a sliding operation at this time. The electronic device responds to the sliding operation of a user, the display picture of the display screen needs to be updated, and the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate.
In a third application scenario, the display screen of the electronic device displays a static image, the screen refresh rate of the display screen is low, and at this time, the electronic device receives a message notification, and the display screen needs to display a popup window. I.e. the display screen needs to be updated, the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate.
In the fourth application scenario, the display screen of the electronic device displays a still image, and the screen refresh rate of the display screen is low, and at this time, the display screen needs to display an animation. I.e. the display screen needs to be updated, the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate.
In the application scenario and similar scenarios, by adopting the screen refresh rate switching method provided in the embodiment of the present application, when the screen refresh rate of the display screen of the electronic device is low when the display screen displays the still image, the signal period of the first Vsync signal is set to a preset period, and the SurfaceFlinger operates according to the preset period. Therefore, when the screen refresh rate of the display screen is required to be switched from a low refresh rate to a high refresh rate, the SurfaceFlinger can timely send a first refresh rate switching instruction, the display screen can timely receive the first refresh rate switching instruction and timely respond to the first refresh rate switching instruction to switch the screen refresh rate, so that the display screen can rapidly exit from the low refresh rate and switch back to the high refresh rate, the switching time of the screen refresh rate of the display screen is reduced, the display of new image frames according to the high refresh rate is ensured, the effects of sliding effect, moving-image effect display smoothness and the like of the display screen are ensured, the user is ensured not to feel a jam, and the user experience is ensured. By the method, the speed of switching the electronic equipment from the low refresh rate to the high refresh rate in response to user operation can be improved, and the switching performance is optimized. Therefore, the user operation response delay of the electronic equipment can be shortened, the following performance of the electronic equipment is improved, and the user experience is improved.
The display screen of the electronic device is a stage of switching from a screen refresh rate to a low refresh rate before switching from a low refresh rate back to a high refresh rate. According to the technical scheme provided by the embodiment of the application, when the screen refresh rate of the display screen is switched to the low refresh rate stage, some preparation work (such as controlling the SurfaceFlinger to set the signal period of the SurfaceFlinger to be a preset period under the low refresh rate) can be done in advance, so that when the electronic equipment is switched from the low refresh rate to the high refresh rate, the method (such as S601-S603) of the embodiment of the application can be executed, and the corresponding technical problem is solved.
Specifically, referring to fig. 4, the embodiment of the present application provides a screen refresh rate switching method for a scenario in which a screen refresh rate is switched to a low refresh rate. The method may be applied to an electronic device comprising a display screen. The method comprises steps S401-S405.
S401, the display screen receives a second refresh rate switching instruction. The second refresh rate switching instruction is used for indicating that the screen refresh rate of the display screen is switched to the first refresh rate. Wherein the first refresh rate is less than or equal to a preset threshold.
For example, in some scenarios, the display screen refresh rate of the electronic device may switch from a high refresh rate to a low refresh rate. For example, the refresh rate by the electronic device may be switched to the first refresh rate by another refresh rate (e.g., a third refresh rate) that is higher than the first refresh rate. For example, after the electronic device switches from displaying a dynamic image to displaying a static image, the screen refresh rate of the display screen may be switched from a high refresh rate to a low refresh rate to reduce power consumption.
For example, if the electronic device does not receive the user's operation for a certain period of time, the electronic device may automatically display the above-described still image. At this time, the upper layer may send a second refresh rate switching instruction to the display screen of the electronic device to instruct the screen refresh rate of the display screen to switch from the third refresh rate to the first refresh rate. At this time, the display screen may receive the above-mentioned second refresh rate switching instruction.
For another example, the electronic device may automatically display the still image after the moving image (e.g., video) is played. At this time, the upper layer may send a second refresh rate switching instruction to the display screen of the electronic device to instruct the screen refresh rate of the display screen to switch from the third refresh rate to the first refresh rate. The display screen may receive the second refresh rate switching command.
Of course, the scenario of switching the screen refresh rate of the display screen from the high refresh rate to the low refresh rate includes, but is not limited to, the case shown in the above example, and other cases are not described herein.
S402, the display screen responds to a second refresh rate switching instruction, the screen refresh rate of the display screen is switched to a preset refresh rate, and a second Vsync signal is sent to the SurfaceFlinger through display driving according to a preset period. The preset period is equal to the reciprocal of a preset refresh rate, and the preset refresh rate is greater than a preset threshold. The second Vsync signal is used to trigger the display screen to refresh the display image frame.
S403, surfaceFlinger receives a second Vsync signal from the display driver.
S404, surfeflinger determines whether a period for receiving the second Vsync signal from the display driver (i.e., a second signal period) is equal to a preset period.
If the period of receiving the second Vsync signal from the display driver (i.e., the second signal period) is equal to the preset period, step S404 is performed. If the period of receiving the second Vsync signal from the display driver (i.e., the second signal period) is not equal to the preset period, step 403 is continued.
S405, surfeflinger sets the signal period of the first Vsync signal to a preset period, and stops receiving the second Vsync signal from the display driving. The first Vsync signal is used for triggering SurfaceFlinger to perform layer composition.
That is, the display screen receives the second refresh rate switching command, and may switch the screen refresh rate of the display screen to a preset refresh rate before switching the screen refresh rate of the display screen to a low refresh rate in response to the second refresh rate switching command. Thus, the display screen may send the second Vsync signal to the SurfaceFlinger in a predetermined period (i.e., every other predetermined period, a second Vsync signal is reported to the SurfaceFlinger by the display driver). The second Vsync signal may be used for Vsync signal calibration by surfeflinger for achieving the first Vsync signal and the second Vsync signal to maintain period synchronization. After the surface eflinger finishes the calibration of the Vsync signal, the surface eflinger may operate according to a preset period, that is, the signal period of the first Vsync signal is a preset period. In this way, when a new refresh rate switching instruction (e.g., a first refresh rate switching instruction) is subsequently received, the refresh rate switching instruction can be issued in time.
In some embodiments, the display screen responds to the second refresh rate switching instruction, and the screen refresh rate of the display screen is switched to the first refresh rate after a preset duration.
It should be appreciated that, in response to the second refresh rate switching command, after the preset duration, surfeflinger has completed calibration of the Vsync signal, at this time, the screen refresh rate of the display screen may be switched to the first refresh rate, that is, the frequency of refreshing the display image frame by the display screen may be reduced, so as to save electric energy and CPU resources. While surfeflinger has turned off Vsync signal calibration at this time, surfeflinger continues to operate in accordance with a preset period. It should be noted that although the SurfaceFlinger operates according to a preset period, if the still image is displayed, the display screen needs to display the static content, and then the SurfaceFlinger in the display area is not updated, and the SurfaceFlinger does not need to perform the synthesizing operation. The APP also does not need to perform layer drawing and layer rendering operations. The SurfaceFlinger operates at a preset period and does not increase the power consumption of the layer composition operation.
In some embodiments, the preset threshold may be 30Hz. The preset threshold may be determined based on a screen refresh rate switching performance requirement of the electronic device for the display screen.
In some embodiments, the preset refresh rate is one screen refresh rate supported by the display screen.
In some embodiments, the preset refresh rate may be 120Hz, with the inverse of the preset refresh rate, i.e., the preset period, being 8ms. The first refresh rate may be 10Hz or 1Hz, with the inverse T1 of the first refresh rate being 100ms or 1s. The second refresh rate may be 60Hz, 90Hz, or 120Hz, with the inverse T2 of the second refresh rate being 16ms, 11ms, or 8ms.
It should be appreciated that the second refresh rate switching command in step S401 described above is issued to the display screen by surfeflinger. For example, when the electronic device (such as the frame rate control module of the electronic device) determines that the display content is not updated, the electronic device may sequentially issue the second refresh rate switching instruction to the display screen (such as the display driving chip of the display screen) through SurfaceFlinger, HWC and the display driver.
In some embodiments, the surfeflinger may receive a second refresh rate switching command from an upper layer, and in response to the second refresh rate switching command, begin receiving a second Vsync signal from a lower layer, and issue the second refresh rate switching command to the display screen.
That is, the surfeflinger may start receiving the second Vsync signal from the lower layer, that is, start the Vsync signal calibration after receiving the second refresh rate switching command, that is, when the surfeflinger determines that the screen refresh rate switching is required. Thus, the SurfaceFlinger may receive the period of the second Vsync signal (i.e., the signal period of the second Vsync signal). Judging whether the screen refresh rate switching is finished, and further finishing the Vsync signal calibration, namely adjusting the period of the SurfaceFlinger for generating a first Vsync signal (namely, the signal period of the first Vsync signal, wherein the first Vsync signal can comprise a Vsync-APP signal and a Vsync-SF signal) so that the signal period of the first Vsync signal is equal to the signal period of the second Vsync signal. After the SurfaceFlinger completes the Vsync signal calibration, the hardware Vsync calibration may be turned off, i.e., the reception of the second Vsync signal from the display driver is stopped. At this time, the SurfaceFlinger may periodically generate the first Vsync signal according to a signal period after the completion of the calibration of the Vsync signal, so as to control the period in which APP draws and renders, and the SurfaceFlinger draws. Thus, the surfeflinger can confirm that the screen refresh rate of the display screen has been switched to the preset refresh rate, and the surfeflinger operates according to a preset period to synchronize with the screen refresh rate of the display screen. If a new refresh rate switching instruction (such as a first refresh rate switching instruction) is received later, the surfeflinger can quickly respond to the new refresh rate switching instruction and issue the new refresh rate switching instruction after the current preset period is finished, so that the display screen can be quickly switched from a low refresh rate to a high refresh rate.
Illustratively, in an application scenario, the screen refresh rate of the display screen needs to be switched from 60Hz to 10Hz after the electronic device switches from displaying a dynamic image to displaying a static image. Referring to fig. 5, as shown in fig. 5, the screen refresh rate switching process may employ the screen refresh rate switching method provided in the foregoing embodiment (e.g. steps S401 to S405), and the signal transmission flow between the corresponding portions of the electronic device may include S501 to S507.
S501, in the ith signal period, the SurfaceFinger receives a second refresh rate switching instruction from an upper layer (such as a frame rate control module). The second refresh rate switching command is for instructing a screen refresh rate of the display screen to switch from 60Hz to 10Hz.
The signal period refers to a signal period of the first Vsync signal. In this embodiment the signal period is 16ms.
S502, responding to the end of the ith signal period (namely the beginning of the (i+1) th signal period), issuing a second refresh rate switching command to a display driver, and starting Vsync signal calibration.
For example, surfeflinger issues the second refresh rate switch command to the display driver via HWC in response to the end of the ith signal period.
S503, after receiving the second refresh rate switching command, the display driver issues the second refresh rate switching command to the display screen (such as a display driver chip of the display screen).
S504, the display screen receives a second refresh rate switching instruction.
S505, the display screen switches the screen refresh rate of the display screen to 120Hz according to the second refresh rate switching command, the refresh display of the image frames is carried out according to the period of 8ms, and the display screen periodically sends a second Vsync signal to the display driver according to the period of 8ms (i.e. reports a second Vsync signal to the display driver every 8 ms).
S506, the display driver periodically receives a second Vsync signal from the display screen and reports the received second Vsync signal to the SurfaceFlinger.
S507, periodically receiving the second Vsync signal by the SurfaceFlinger, judging whether the signal period of the second Vsync signal is 8ms according to the period of receiving the second Vsync signal (namely, the interval time of receiving two adjacent second Vsync signals), if so, determining that the screen refresh rate switching is finished, and closing the Vsync signal calibration. If the period of the second Vsync signal is not equal to 8ms, the process continues to step 507.
It should be appreciated that upon determining that the screen refresh rate switch is complete, the first Vsync signal may be periodically generated in accordance with the signal period after the Vsync signal calibration, i.e., the signal period of 8ms, in response to the end of the current signal period (16 ms). That is, the signal period of the first Vsync signal is adjusted to 8ms.
It should be appreciated that the display screen switches the screen refresh rate of the display screen to 10Hz after a preset period of time in response to the second refresh rate switching instruction.
In some application scenarios, after the screen refresh rate of the display screen is switched to a low refresh rate, a user operation (e.g., a click or slide operation) is received or a notification is received, etc., the screen refresh rate of the display screen needs to be switched back to a high refresh rate. Referring to fig. 6, an embodiment of the present application provides a screen refresh rate switching method for the above application scenario. The method may be applied to an electronic device comprising a display screen. The method comprises steps S601-S603.
S601, a SurfaceFlinger of the electronic equipment receives a first refresh rate switching instruction from an upper layer. The first refresh rate switching instruction is used for indicating that the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate. The first refresh rate is smaller than or equal to a preset threshold value, and the second refresh rate is larger than the preset threshold value.
S602, a SurfaceFlinger responds to the end of a signal period of a current first Vsync signal to send a first refresh rate switching command to a display driver. The first Vsync signal is used for triggering SurfaceFlinger to perform layer composition. The signal period of the first Vsync signal is set to a preset period in the case where the screen refresh rate of the display screen is the first refresh rate. The preset period is less than the inverse of the first refresh rate.
S603, the display driver responds to the first refresh rate switching instruction to switch the screen refresh rate of the display screen from the first refresh rate to the second refresh rate.
It should be appreciated that if the electronic device receives a user operation (such as a click or slide operation) or receives a notification in a signal period of the j-th first Vsync signal and needs to perform an interface update, the electronic device (such as a frame rate control module of the electronic device) may send a first refresh rate switching command to the surfeflinger after sensing the above situation. The SurfaceFlinger may sequentially issue a first refresh rate switching instruction to the display screen (e.g., a display driver chip of the display screen) through the HWC, the display driver, to instruct to switch the screen refresh rate of the display screen from the first refresh rate to the second refresh rate. The second refresh rate is greater than the first refresh rate.
In the above technical solution, in the case where the screen refresh rate of the display screen of the electronic device is the first refresh rate (low refresh rate), the signal period of the first Vsync signal is set to be a preset period. Therefore, when the screen refresh rate of the display screen is required to be switched from the first refresh rate (low refresh rate) to the second refresh rate (high refresh rate), the SurfaceFlinger can send the first refresh rate switching instruction at the end of the current signal period (preset period) of the first Vsync signal, and as the preset period is smaller than the reciprocal of the first refresh rate, the SurfaceFlinger can send the first refresh rate switching instruction only after waiting until the end of the period with the length being the reciprocal of the first refresh rate under the original mechanism of the Android system, the timeliness of the SurfaceFlinger sending the first refresh rate switching instruction is improved, so that the display screen can also receive the first refresh rate switching instruction in time and respond to the first refresh rate switching instruction in time to carry out screen refresh rate switching, the screen refresh rate switching time of the display screen is shortened, the blocking is avoided, the following handedness of electronic equipment is improved, and the user experience is improved.
In some embodiments, after the display driver switches the screen refresh rate of the display screen from the first refresh rate to the second refresh rate in response to the first refresh rate switching instruction, the method further comprises: the display driver sends a second Vsync signal to the SurfaceFlinger in accordance with the first signal period to indicate the screen refresh rate of the display screen to the SurfaceFlinger. The second Vsync signal is used for triggering the display screen to refresh the display image frame, and the period of the first signal is equal to the reciprocal of the second refresh rate.
That is, after the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate, the display driver periodically sends a second Vsync signal to the SurfaceFlinger for the SurfaceFlinger to perform the Vsync signal calibration in accordance with the first signal period (i.e., the inverse of the second refresh rate). Thus, the SurfaceFlinger may determine that the screen refresh rate of the display screen has been switched to the second refresh rate according to the period in which the second Vsync signal is received, and the SurfaceFlinger may periodically generate the first Vsync signal according to the inverse of the second refresh rate. Thereby, the first Vsync signal and the second Vsync signal can be kept periodically synchronized.
Illustratively, in an application scenario, after the screen refresh rate of the display screen is switched to 10Hz, a user operation (e.g., a click or slide operation) is received, and the screen refresh rate of the display screen needs to be switched from 10Hz back to 60Hz. Referring to fig. 7, as shown in fig. 7, the screen refresh rate switching process may employ the screen refresh rate switching method provided in the foregoing embodiment (as in steps S601-S603), and the signal transmission flow between the corresponding portions of the electronic device may include:
S701, a first refresh rate switching command from an upper layer (such as a frame rate control module of electronic equipment) is received in a j-th signal period, namely at a time t3 shown in FIG. 7.
The signal period refers to a signal period of the first Vsync signal. In this embodiment, the signal period is 8ms.
S702, responding to the end of the j-th signal period (the beginning of the j+1th signal period), issuing the first refresh rate switching command to a display driver (for example, issuing the second refresh rate switching command to the display driver through HWC), and starting Vsync signal calibration.
S703, after receiving the first refresh rate switching command, the display driver issues the first refresh rate switching command to the display screen (e.g. a display driver chip of the display screen).
S704, the display screen receives a first refresh rate switching instruction.
And S705, the display screen is driven to finish screen refresh rate switching according to the first refresh rate switching instruction, namely the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate, the refresh display of the image frames is carried out according to the second refresh rate, and the display screen periodically sends a second Vsync signal to the display driver according to the second refresh rate (a second Vsync signal is reported to the display driver every other first signal period).
S706, the display driver periodically receives a second Vsync signal from the display screen, and reports the received second Vsync signal to the SurfaceFlinger.
S707, periodically receiving the second Vsync signal by the SurfaceFlinger, judging whether the signal period of the second Vsync signal is 16ms according to the period of receiving the second Vsync signal (namely, the interval time of receiving two adjacent second Vsync signals), if so, determining that the screen refresh rate switching is completed, and closing the Vsync signal calibration. If the period of the second Vsync signal is not equal to 16ms, step 707 is continued.
It should be appreciated that after surfeflinger determines that the screen refresh rate switch is complete, the first Vsync signal may be periodically generated in response to the end of the current signal period (8 ms), i.e., at time t4 as shown in fig. 7, in accordance with the signal period after calibration of the Vsync signal, i.e., 16ms. That is, the signal period of the first Vsync signal is adjusted to 16ms.
Based on the technical scheme provided by the embodiment, when the display screen of the electronic device displays a static image, and the screen refresh rate of the display screen is the first refresh rate (low refresh rate), the period of the corresponding display screen refresh display image frame is the reciprocal T1 of the first refresh rate, and the SurfaceFlinger sets a preset refresh rate mode and operates according to the preset refresh rate (such as 120 Hz), that is, the signal period of the first Vsync signal is a preset period. The preset period is less than the inverse T1 of the first refresh rate. Thus, when the screen refresh rate of the display screen needs to be switched from the first refresh rate to the second refresh rate (high refresh rate), after the SurfaceFlinger receives the first refresh rate switching instruction, the SurfaceFlinger can issue the first refresh rate switching instruction at the end of the current signal period and start the Vsync signal calibration. And after receiving the first refresh rate switching command, the display screen can immediately switch the screen refresh rate of the display screen from the first refresh rate to the second refresh rate, so that the period of the second Vsync signal is switched from the reciprocal T1 of the first refresh rate to the reciprocal T2 of the second refresh rate, and the second Vsync signal is reported to the display driver every other reciprocal T2 of the second refresh rate. The SurfaceFlinger receives the second Vsync signals, and determines whether the signal period of the second Vsync signals is equal to the interval time between the two second Vsync signals, if so, it can be confirmed that the screen refresh rate switching is completed. The SurfaceFlinger may generate the first Vsync signal with the second refresh rate as a frequency and with the inverse T2 of the second refresh rate as a period after confirming that the screen refresh rate switching is completed and the current signal period ends. Compared with an Android primary Vsync mechanism, the switching performance is greatly optimized, and the chirality is improved.
Illustratively, the first refresh rate is 10Hz and the inverse T1 of the first refresh rate is 100ms. The second refresh rate is 60Hz and the inverse T2 of the second refresh rate is 16ms. The preset refresh rate is 120Hz, and the inverse of the preset refresh rate, i.e. the preset period, is 8ms.
For example, the first case: surfaceFlinger receives a first refresh rate switching command near the end of the jth signal period, i.e., near the end of the j signal periods at time t3 shown in FIG. 7, x2≡0. The SurfaceFlinger issues a first refresh rate switching instruction at the beginning of the j+1th signal period, the display screen receives the first refresh rate switching instruction in the j+1th signal period, the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate, and a second Vsync signal is reported to the display driver every other reciprocal T2 of the second refresh rate. The SurfaceFlinger receives the second Vsync signal, determines whether the signal period of the second Vsync signal is the inverse T2 of the second refresh rate according to the interval time between the two second Vsync signals, and if so, can confirm that the screen refresh rate switching is completed, which is in the j+3th signal period. The surfeflinger needs to end at the current signal period (j+3rd signal period) to generate the first Vsync signal with the second refresh rate as the frequency and the inverse T2 of the second refresh rate as the period. The first case is a case where the time required for the entire screen refresh rate switching process is the shortest, the switching from the first refresh rate to the screen refresh rate of the display screen from the SurfaceFlinger needs to go through less than one signal period (the signal period is a preset period, that is, 8 ms) and the switching from the first refresh rate to the SurfaceFlinger needs to go through three signal periods (the signal period is a preset period, that is, 8 ms) for a total of 24 ms.
For another example, the second case: surfaceFlinger receives the first refresh rate switching command immediately after the start of the j-th signal period, that is, at a time t3 shown in FIG. 7 near the start time of j signal periods, x2≡8. However, the surfeflinger needs to wait until the current signal period is over, and issues a first refresh rate switching instruction when the j+1th signal period starts, the display screen receives the first refresh rate switching instruction in the j+1th signal period, switches the screen refresh rate of the display screen from the first refresh rate to the second refresh rate, and reports a second Vsync signal to the display driver every other inverse T2 of the second refresh rate. The SurfaceFlinger receives the second Vsync signal, and when determining that the period of the second Vsync signal is the inverse T2 of the second refresh rate, it may confirm that the screen refresh rate switching is completed, which is already in the j+3th signal period. The surfeflinger needs to end at the current signal period (j+3rd signal period) to generate the first Vsync signal with the second refresh rate as the frequency and the inverse T2 of the second refresh rate as the period. The second case is a case where the time required for the entire screen refresh rate switching process is longest, but the screen refresh rate switching from the SurfaceFlinger to the display screen after receiving the first refresh rate switching instruction only needs to go through less than two signal periods (the signal period is a preset period, that is, 8ms, and two signal periods, that is, 16 ms) from the first refresh rate switching instruction, and the SurfaceFlinger after receiving the first refresh rate switching instruction to the SurfaceFlinger generates the first Vsync signal at the new refresh rate (from time t3 to time t 4) only needs to go through four signal periods (the signal period is a preset period) for 32ms in total.
In summary, in the case of setting the preset refresh rate to 120Hz, the effect of optimizing the time-consuming switching is shown in table 1, compared with the screen refresh rate switching process under the native mechanism of the Android system.
TABLE 1
In some embodiments, the first refresh rate is a target refresh rate at which the display screen displays a static image.
In some embodiments, the first refresh rate switching instruction is triggered by the electronic device upon receipt of a notification or user operation in the case of a display of a static image. Wherein the notification or user action is used to trigger the electronic device to update the interface.
That is, in the case of displaying a still image, the electronic device may trigger the first refresh rate switching command if a notification or a user operation is received, thereby controlling the screen refresh rate of the display screen to switch from the first refresh rate (low refresh rate) to the second refresh rate (high refresh rate).
In some embodiments, the second refresh rate switch instruction is triggered when the electronic device switches from displaying a dynamic image to displaying a static image.
That is, when the electronic device switches from displaying a dynamic image to displaying a static image, the second refresh rate switching command may be triggered to control the screen refresh rate of the display screen to switch to the first refresh rate (low refresh rate) to reduce power consumption.
Referring to fig. 8A, as shown in fig. 8A, in some embodiments, the screen refresh rate switching method provided in the embodiments of the present application may further include steps S401 to S405 before the step S601.
That is, the screen refresh rate switching method provided by the embodiment of the present application may be used to switch the screen refresh rate of the display screen from a certain refresh rate (e.g., the third refresh rate) to a low refresh rate, and then from the low refresh rate to the high refresh rate.
In an exemplary case where the screen refresh rate of the display screen is the third refresh rate, in response to the electronic device switching from displaying a moving image to displaying a still image, the screen refresh rate of the display screen is switched from the third refresh rate to the first refresh rate, and the signal period of the first Vsync signal is set to a preset period. The third refresh rate is greater than the first refresh rate, the first refresh rate is less than or equal to a preset threshold, and the preset period is less than the reciprocal of the first refresh rate. The specific implementation process may refer to the above steps S401 to S405, which are not described herein. It should be understood that, correspondingly, the second refresh rate switching command is used to instruct the screen refresh rate of the display screen to switch from the third refresh rate to the first refresh rate in step S401. The third refresh rate may be equal to the second refresh rate. Then, in response to the electronic device switching from displaying a still image to displaying a moving image, a surfacef link of the electronic device may receive a first refresh rate switching instruction. The first refresh rate switching instruction is used for indicating that the screen refresh rate of the display screen is switched from the first refresh rate to the second refresh rate. The second refresh rate is greater than a preset threshold. In response to the end of the signal period of the current first Vsync signal, the SurfaceFlinger sends a first refresh rate switching command to a display driver of the electronic device. The first Vsync signal is used for triggering SurfaceFlinger to perform layer composition. The display driver responds to the first refresh rate switching instruction to switch the screen refresh rate of the display screen from the first refresh rate to the second refresh rate. The specific implementation process may refer to the above steps S601 to S603, which are not described herein.
For example, referring to fig. 8B, fig. 8B shows signal transmission flows corresponding to steps S401 to S405 and steps S601 to S603 in the screen refresh rate switching method provided in the above embodiment. The left side of fig. 8B shows a signal transmission flow for switching the screen refresh rate of the display screen from a high refresh rate (e.g. 60Hz, corresponding to a signal period of 16 ms) to a low refresh rate (e.g. 10Hz, corresponding to a signal period of 100 ms), and the specific steps are S801-S807, and the specific implementation process of the steps S801-S807 is referred to the steps S501-S507 described above, which are not repeated herein. The right side of fig. 8B shows a signal transmission flow for switching the screen refresh rate of the display screen from a low refresh rate (e.g. 10Hz, corresponding to a signal period of 100 ms) to a high refresh rate (e.g. 60Hz, corresponding to a signal period of 16 ms), and the specific steps are S811-S817, and the specific implementation process of the steps S811-S817 is referred to the above steps S701-S707, which are not repeated herein.
It should be understood that, in the step S402, the display screen receives the second refresh rate switching command, and switches the screen refresh rate of the display screen to the preset refresh rate in response to the second refresh rate switching command, and sends the second Vsync signal to the SurfaceFlinger according to the preset period, so that the SurfaceFlinger completes the calibration of the Vsync signal, and in step S405, the period of the first Vsync signal is set to the preset period. After the display screen responds to the preset duration of the second refresh rate switching command, the screen refresh rate of the display screen is switched to the first refresh rate (e.g. 10 Hz), that is, after a certain delay time shown in fig. 8B, to 100ms. Thus, the display screen can display static images at a low refresh rate, saving power and CPU resources.
It should be understood that in a scenario where the screen refresh rate of the display screen needs to be switched from one high refresh rate to another high refresh rate, for example, from 90Hz to 60Hz, or from 60Hz to 90Hz, the screen refresh rate switching method under the native mechanism of the Android system may still be used.
In some embodiments, the display driver may set a true refresh rate (first refresh rate, such as 10Hz or 1 Hz) mode (or gear) and an analog refresh rate mode. The simulated refresh rate mode corresponds to a simulated refresh rate (i.e., a preset refresh rate) that is a high refresh rate (e.g., 120 Hz) and a real refresh rate that is a low refresh rate (10 Hz or 1 Hz). The display driver may report its supported refresh rate modes to the surfefliger and/or frame rate control module via HWC. The surfefliger and/or frame rate control module may determine whether each refresh rate is a real refresh rate or a simulated refresh rate based on an identification (id) attribute of each refresh rate in the refresh rate mode. For example, the frame rate control module may obtain the refresh rate mode supported by the display driver through the display, getsupported modes () query display driver, and the display driver may respond to the query request and report the refresh rate mode supported by the display driver to the frame rate control module through the HWC.
As shown in fig. 9, fig. 9 is a flowchart illustrating interaction between modules in a method for switching a refresh rate of a screen according to an embodiment of the present application.
Exemplary is the signaling flow shown by the solid arrows in fig. 9. The display driver sets an analog refresh rate mode (analog 120Hz mode) which corresponds to an analog 120Hz refresh rate and a true 10Hz or 1Hz refresh rate. The display driver may report its information supporting the analog 120Hz mode to the surfeflinger via the HWC.
Illustratively, a signaling flow, indicated by the dashed arrow in fig. 9, corresponds to steps S501-S505 described above. After the frame rate control module of the electronic device detects that the electronic device is switched from displaying the dynamic image to displaying the static image, the frame rate control module controls the screen refresh rate of the display screen to be switched to 10Hz (or 1 Hz). The flow is as follows: the frame rate control module sends an instruction (such as a second refresh rate switching instruction) for switching the screen refresh rate of the display screen to the analog 120Hz mode to the SurfaceFlinger. After receiving the second refresh rate switching command sent by the frame rate control module, the SurfaceFlinger can send the second refresh rate switching command to the display driver through the HWC. It will be appreciated that upon receipt of the second refresh rate switching command by the display driver, the display driver may be aware of the simulated 120Hz mode in the second refresh rate switching command corresponding to a simulated 120Hz refresh rate and a true 10Hz or 1Hz refresh rate, based on the id attribute of the refresh rate in the command. In this way, after receiving the second refresh rate switching command, the display driver switches the screen refresh rate of the display screen to 120Hz, so that the SurfaceFlinger finishes the calibration of the Vsync signal, i.e., adjusts the signal period of the first Vsync signal to 8ms (i.e., 1/120 ms). After the display drive is in a preset time period, the screen refresh rate of the display screen is switched to 10Hz or 1Hz, so that electric energy and CPU resources are saved.
Illustratively, a signaling flow, indicated by the dashed arrow in fig. 9, corresponds to steps S701-S705 described above. When the frame rate control module of the electronic device detects that the current display scene is clicked and slid by a user or a popup notification occurs, the frame rate control module sends an instruction (such as a first refresh rate switching instruction) for switching the screen refresh rate of the display screen to 60Hz, 90Hz or 120Hz to the surfeFlinger. When the SurfaceFlinger sends the first refresh rate switching instruction to the display driver, the first refresh rate switching instruction can be sent to the display driver through the HWC. And after receiving the first refresh rate switching instruction, the display driver switches the screen refresh rate of the display screen to 60Hz, 90Hz or 120Hz.
Some embodiments of the present application provide an electronic device that may include: a display screen, a memory, and one or more processors. The display, memory, and processor are coupled. The memory is for storing computer program code, the computer program code comprising computer instructions. When the processor executes the computer instructions, the electronic device may perform the various functions or steps performed by the electronic device in the method embodiments described above. The structure of the electronic device may refer to the structure of the electronic device 200 shown in fig. 2B.
Embodiments of the present application also provide a chip system, as shown in fig. 10, comprising at least one processor 1001 and at least one interface circuit 1002. The processor 1001 and the interface circuit 1002 may be interconnected by wires. For example, interface circuit 1002 may be used to receive signals from other devices (e.g., a memory of an electronic apparatus). For another example, the interface circuit 1002 may be used to send signals to other devices (e.g., the processor 1001 or a touch screen of an electronic apparatus). The interface circuit 1002 may, for example, read instructions stored in a memory and send the instructions to the processor 1001. The instructions, when executed by the processor 1001, may cause the electronic device to perform the various steps of the embodiments described above. Of course, the chip system may also include other discrete devices, which are not specifically limited in this embodiment of the present application.
The embodiment of the application also provides a computer storage medium, which comprises computer instructions, when the computer instructions are executed on the electronic device, the electronic device is caused to execute the functions or steps executed by the electronic device in the embodiment of the method.
Embodiments of the present application also provide a computer program product, which when run on a computer, causes the computer to perform the functions or steps performed by the electronic device in the method embodiments described above.
It will be apparent to those skilled in the art from this description that, for convenience and brevity of description, only the above-described division of the functional modules is illustrated, and in practical application, the above-described functional allocation may be performed by different functional modules according to needs, i.e. the internal structure of the apparatus is divided into different functional modules to perform all or part of the functions described above.
In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the modules or units is merely a logical functional division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another apparatus, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and the parts displayed as units may be one physical unit or a plurality of physical units, may be located in one place, or may be distributed in a plurality of different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in each embodiment of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a readable storage medium. Based on such understanding, the technical solution of the embodiments of the present application may be essentially or a part contributing to the prior art or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium, including several instructions for causing a device (may be a single-chip microcomputer, a chip or the like) or a processor (processor) to perform all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a usb disk, a removable hard disk, a read-only memory (read on ly memory, ROM), a random access memory (random access memory, RAM), a magnetic disk, or an optical disk, or the like, which can store program codes.
The foregoing is merely a specific embodiment of the present application, but the scope of the present application is not limited thereto, and any changes or substitutions within the technical scope of the present disclosure should be covered in the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (19)

1. A screen refresh rate switching method, characterized by being applied to an electronic device, the electronic device including a display screen, the method comprising:
displaying an image at a first refresh rate;
detecting a first operation of a user, wherein the first operation is a click operation or a sliding operation;
switching a refresh rate of the display screen from the first refresh rate to a second refresh rate in response to the first operation, the first refresh rate being less than the second refresh rate;
and in a time interval from the detection of the first operation to the start of the execution of the refresh rate switching, the Vsync-APP signal is periodically generated according to a first period, wherein the first period is smaller than the reciprocal of the first refresh rate.
2. The method of claim 1, wherein the method further comprises:
after the refresh rate of the display screen is switched from the first refresh rate to the second refresh rate, the Vsync-APP signal is periodically generated according to a second period;
And after the refresh rate of the display screen is switched from the first refresh rate to the second refresh rate, the Vsync-SF signal is periodically generated according to the second period, and the second period is equal to the reciprocal of the second refresh rate.
3. A method as defined in claim 2, wherein the electronic device comprises an image synthesizer surfeflinger, the method further comprising:
the SurfaceFlinger receives a Vsync-HW signal, wherein the Vsync-HW signal is a signal periodically generated according to a third period, and the third period is equal to the reciprocal of the second refresh rate.
4. A method as claimed in claim 3, wherein the method further comprises:
the surfeflinger stops receiving the Vsync-HW signal.
5. The method of any of claims 1-4, wherein the first refresh rate is less than or equal to a preset threshold and the second refresh rate is greater than the preset threshold.
6. The method of claim 5, wherein the predetermined threshold is 30HZ.
7. The method of any of claims 1-6, wherein the first period is less than or equal to an inverse of the second refresh rate.
8. The method of claim 7, wherein the first refresh rate is 10Hz, the second refresh rate is 60Hz, the first period is the inverse of a preset refresh rate, and the preset refresh rate is 120Hz.
9. The method of claim 7, wherein the first refresh rate is 10Hz, the second refresh rate is 120Hz, the first period is the inverse of a preset refresh rate, and the preset refresh rate is 120Hz.
10. The method of any of claims 1-9, wherein displaying the image at the first refresh rate comprises:
displaying a static image at the first refresh rate;
after switching the refresh rate of the display screen from the first refresh rate to the second refresh rate, the method further comprises:
and displaying the dynamic image at the second refresh rate.
11. A screen refresh rate switching method, characterized by being applied to an electronic device, the electronic device including a display screen, the method comprising:
displaying the image at a second refresh rate;
switching the refresh rate of the display screen from the second refresh rate to a first refresh rate;
displaying an image at the first refresh rate;
switching the refresh rate of the display screen from the first refresh rate to the second refresh rate, the first refresh rate being less than the second refresh rate;
After displaying images at a second refresh rate from the display screen, a time interval from when refresh rate switching is performed to when the first refresh rate is switched to the second refresh rate is a first interval, wherein the first interval consists of a first subinterval and a second subinterval, and the first subinterval is positioned before the second subinterval;
in the first subinterval, the generation period of the Vsync-APP signal is set to be a first period, and the first period is equal to the reciprocal of the second refresh rate;
in the second subinterval, the generation period of the Vsync-APP signal is set to a second period, which is less than the inverse of the first refresh rate.
12. The method of claim 11, wherein the method further comprises:
after the refresh rate of the display screen is switched from the first refresh rate to the second refresh rate, the Vsync-APP signal is periodically generated according to a second period;
and after the refresh rate of the display screen is switched from the first refresh rate to the second refresh rate, the Vsync-SF signal is periodically generated according to the second period, and the second period is equal to the reciprocal of the second refresh rate.
13. A method as defined in claim 12, wherein the electronic device comprises an image synthesizer surfeflinger, the method further comprising:
the SurfaceFlinger receives a Vsync-HW signal, wherein the Vsync-HW signal is a signal periodically generated according to a third period, and the third period is equal to the reciprocal of the second refresh rate.
14. The method of claim 13, wherein the method further comprises:
the surfeflinger stops receiving the Vsync-HW signal.
15. The method of any one of claims 11-14, wherein the method further comprises:
detecting a first operation of a user, wherein the first operation is a click operation or a sliding operation;
the switching the refresh rate of the display screen from the first refresh rate to the second refresh rate includes:
and responding to the first operation, and switching the refresh rate of the display screen from the first refresh rate to a second refresh rate.
16. The method of any of claims 11-15, wherein the first refresh rate is 10Hz, the second refresh rate is 60Hz, the second period is the inverse of a preset refresh rate, and the preset refresh rate is 120Hz.
17. An electronic device comprising a display screen, a memory, and one or more processors; the display screen and the memory are coupled with the processor; the memory has stored therein computer program code comprising computer instructions which, when executed by the processor, cause the electronic device to perform the method of any of claims 1-16.
18. A computer readable storage medium comprising computer instructions which, when run on an electronic device, cause the electronic device to perform the method of any of claims 1-16.
19. A chip system comprising a processor for invoking a computer program in memory to perform the method of any of claims 1-16.
CN202311461319.XA 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment Pending CN117711355A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311461319.XA CN117711355A (en) 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211021875.0A CN116052618B (en) 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment
CN202311461319.XA CN117711355A (en) 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN202211021875.0A Division CN116052618B (en) 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment

Publications (1)

Publication Number Publication Date
CN117711355A true CN117711355A (en) 2024-03-15

Family

ID=86114080

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202211021875.0A Active CN116052618B (en) 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment
CN202311461319.XA Pending CN117711355A (en) 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment
CN202311465533.2A Pending CN117711356A (en) 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202211021875.0A Active CN116052618B (en) 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202311465533.2A Pending CN117711356A (en) 2022-08-24 2022-08-24 Screen refresh rate switching method and electronic equipment

Country Status (2)

Country Link
CN (3) CN116052618B (en)
WO (1) WO2024041047A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116052618B (en) * 2022-08-24 2023-11-07 荣耀终端有限公司 Screen refresh rate switching method and electronic equipment
CN116578261B (en) * 2023-07-10 2024-03-29 荣耀终端有限公司 Electronic device and display method thereof

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8692822B2 (en) * 2006-07-31 2014-04-08 Sharp Kabushiki Kaisha Display controller, display device, display system, and method for controlling display device
US8334857B1 (en) * 2007-12-14 2012-12-18 Nvidia Corporation Method and system for dynamically controlling a display refresh rate
US20120017074A1 (en) * 2010-07-16 2012-01-19 International Business Machines Corporation Dynamic system mode switching
JP6061637B2 (en) * 2012-11-16 2017-01-18 株式会社半導体エネルギー研究所 Information processing method and program
US9905199B2 (en) * 2014-09-17 2018-02-27 Mediatek Inc. Processor for use in dynamic refresh rate switching and related electronic device and method
US9811388B2 (en) * 2015-05-14 2017-11-07 Qualcomm Innovation Center, Inc. VSync aligned CPU frequency governor sampling
US20190087144A1 (en) * 2017-09-20 2019-03-21 Qualcomm Incorporated Frame-based power efficient timing engine for smart display panels
CN113160748B (en) * 2020-01-22 2022-03-29 Oppo广东移动通信有限公司 Display screen frequency conversion method, display driving integrated circuit chip and application processor
CN114842816A (en) * 2020-03-06 2022-08-02 华为技术有限公司 Refresh rate switching method and electronic device
US11782540B2 (en) * 2020-06-26 2023-10-10 Ati Technologies Ulc Front buffer rendering for variable refresh rate display
CN114531519B (en) * 2020-10-31 2024-04-26 华为技术有限公司 Control method based on vertical synchronous signal and electronic equipment
CN113144594A (en) * 2021-04-20 2021-07-23 努比亚技术有限公司 Screen display control method and device, mobile terminal and readable storage medium
CN114089933B (en) * 2021-06-09 2022-09-02 荣耀终端有限公司 Display parameter adjusting method, electronic device, chip and readable storage medium
CN114443269B (en) * 2021-08-27 2023-08-01 荣耀终端有限公司 Frame rate adjusting method and related device
CN113805831B (en) * 2021-09-15 2024-01-30 Oppo广东移动通信有限公司 Image data transmission method, device, terminal and medium
CN114242003B (en) * 2021-12-14 2023-06-02 Tcl华星光电技术有限公司 Display panel and driving method thereof
CN116501210A (en) * 2022-01-10 2023-07-28 荣耀终端有限公司 Display method, electronic equipment and storage medium
CN114495791B (en) * 2022-01-25 2023-07-25 昆山龙腾光电股份有限公司 Display control method and device of display panel and display device
CN114579075B (en) * 2022-01-30 2023-01-17 荣耀终端有限公司 Data processing method and related device
CN114648951B (en) * 2022-02-28 2023-05-12 荣耀终端有限公司 Method for controlling dynamic change of screen refresh rate and electronic equipment
CN116052618B (en) * 2022-08-24 2023-11-07 荣耀终端有限公司 Screen refresh rate switching method and electronic equipment

Also Published As

Publication number Publication date
CN116052618B (en) 2023-11-07
CN117711356A (en) 2024-03-15
WO2024041047A1 (en) 2024-02-29
CN116052618A (en) 2023-05-02

Similar Documents

Publication Publication Date Title
CN116052618B (en) Screen refresh rate switching method and electronic equipment
EP4207777A1 (en) Application interface display method under multi-window mirroring scenario, and electronic device
CN114648951B (en) Method for controlling dynamic change of screen refresh rate and electronic equipment
CN115631258B (en) Image processing method and electronic equipment
CN114579075B (en) Data processing method and related device
CN113556598A (en) Multi-window screen projection method and electronic equipment
CN114518817A (en) Display method, electronic equipment and storage medium
CN115048012B (en) Data processing method and related device
WO2023015961A1 (en) Playing interface display method and electronic device
WO2023231655A1 (en) Bullet subtitle recognition method and related device
CN115097994B (en) Data processing method and related device
WO2022089153A1 (en) Vertical sync signal-based control method, and electronic device
WO2023005751A1 (en) Rendering method and electronic device
CN115686403A (en) Display parameter adjusting method, electronic device, chip and readable storage medium
CN116684521B (en) Audio processing method, device and storage medium
WO2023124227A9 (en) Frame rate switching method and device
WO2023124225A9 (en) Frame rate switching method and apparatus
WO2023169276A1 (en) Screen projection method, terminal device, and computer-readable storage medium
CN115904184B (en) Data processing method and related device
WO2024093431A1 (en) Image drawing method and electronic device
WO2024016798A1 (en) Image display method and related apparatus
WO2024046317A1 (en) Content display method and electronic device
CN117707406A (en) Bright screen display method, electronic equipment and storage medium
CN116719587A (en) Screen display method, electronic device and computer readable storage medium
CN117133232A (en) Display method, chip and electronic equipment

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