Frame rate adjustment method and device, equipment and storage medium

By obtaining the object type and power mode, the display frame rate of the terminal device is dynamically adjusted, which solves the frame rate adjustment problem in different application scenarios and improves user experience and power utilization efficiency.

CN121635653APending Publication Date: 2026-03-10BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-02
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

How to adjust the display frame rate of terminal devices according to the image display requirements of different application scenarios in order to improve the smoothness of image content display and save power resources.

Method used

By obtaining the object type, resource file, and power mode of the terminal device, the target display frame rate is determined, and the current display frame rate is dynamically adjusted by successively increasing or decreasing it according to the preset frame rate adjustment strategy.

Benefits of technology

Without the user's awareness, the display frame rate of the terminal device is dynamically adjusted to improve the user experience and optimize power consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121635653A_ABST
    Figure CN121635653A_ABST
Patent Text Reader

Abstract

The invention provides a frame rate adjustment method and device, equipment and a storage medium, and the method comprises the steps: obtaining an object type of an object, a resource file of the object, and / or a current electric quantity mode of terminal equipment in response to a triggering instruction for the object; determining a target display frame rate of the object according to an object type of the object, a resource file of the object and / or a current electric quantity mode of the terminal equipment; and adjusting the current display frame rate of the object to be the target display frame rate of the object according to a preset frame rate adjustment strategy. According to the embodiment of the invention, the display frame rate of the terminal equipment can be dynamically adjusted under the condition that a user does not perceive according to image display requirements in different application scenes, so that the use experience of the user can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a frame rate adjustment method, apparatus, device, and storage medium. Background Technology

[0002] With the widespread adoption of terminal devices and the rapid development of technology, people can now view various image content, such as videos and animations, through these devices.

[0003] In related technologies, terminal devices need to adjust the display frame rate to improve the smoothness of image display during image content display, in order to meet the image display requirements of different application scenarios. For example, in scenarios where smoothness and visual effects are highly demanding, such as movies or live broadcasts, terminal devices typically need to use a higher display frame rate to display images to users, thus providing a smoother and more detailed visual experience. Conversely, in scenarios where smoothness requirements are not high, such as static images, terminal devices can typically use a lower display frame rate to display images to users, thereby reducing power consumption and saving energy resources.

[0004] Therefore, how to adjust the display frame rate of terminal devices according to the image display requirements of different application scenarios has become an urgent problem to be solved. Summary of the Invention

[0005] This application provides a frame rate adjustment method, apparatus, device, and storage medium, which can dynamically adjust the display frame rate of the terminal device without the user's awareness according to the image display requirements of different application scenarios, thereby improving the user experience.

[0006] In a first aspect, embodiments of this application provide a frame rate adjustment method applied to a terminal device, the method comprising:

[0007] In response to a trigger command for an object, obtain the object type of the object, the resource file of the object, and / or the current power mode of the terminal device;

[0008] The target display frame rate of the object is determined based on the object type, the resource file of the object, and / or the current power mode of the terminal device;

[0009] According to the preset frame rate adjustment strategy, the current display frame rate of the object is adjusted to the target display frame rate of the object.

[0010] Secondly, embodiments of this application provide a frame rate adjustment device, configured in a terminal device, comprising:

[0011] The information acquisition module is used to acquire the object type, the resource file of the object, and / or the current power mode of the terminal device in response to a trigger command for the object.

[0012] A frame rate determination module is used to determine the target display frame rate of the object based on the object type, the resource file of the object, and / or the current power mode of the terminal device;

[0013] The frame rate adjustment module is used to adjust the current display frame rate of the object to the target display frame rate of the object according to a preset frame rate adjustment strategy.

[0014] Thirdly, embodiments of this application provide an electronic device, including:

[0015] A processor and a memory, the memory being used to store a computer program, and the processor being used to call and run the computer program stored in the memory to perform the frame rate adjustment method described in the first aspect embodiment or its various implementations.

[0016] Fourthly, embodiments of this application provide a computer-readable storage medium for storing a computer program that causes a computer to perform the frame rate adjustment method as described in the first aspect embodiment or its various implementations.

[0017] Fifthly, embodiments of this application provide a computer program product containing program instructions that, when executed on an electronic device, cause the electronic device to perform the frame rate adjustment method as described in the first aspect embodiment or its various implementations.

[0018] The technical solution disclosed in this application, in response to a trigger command for an object, obtains the object type, the object's resource file, and / or the current power mode of the terminal device. Based on the object type, the object's resource file, and / or the terminal device's current power mode, the target display frame rate of the object is determined. Then, according to a preset frame rate adjustment strategy, the current display frame rate of the object is adjusted to the target display frame rate of the object. In this way, the display frame rate of the terminal device can be dynamically adjusted according to the image display requirements of different application scenarios without the user's awareness, thereby improving the user experience. Attached Figure Description

[0019] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0020] Figure 1 A flowchart illustrating a frame rate adjustment method provided in an embodiment of this application;

[0021] Figure 2 A schematic diagram illustrating a frame rate adjustment method provided in an embodiment of this application;

[0022] Figure 3 A schematic diagram illustrating a process for determining a target display frame rate, provided as an embodiment of this application;

[0023] Figure 4 A flowchart illustrating another frame rate adjustment method provided in an embodiment of this application;

[0024] Figure 5 This is an overall schematic diagram of a terminal device displaying any image frame, provided in an embodiment of this application.

[0025] Figure 6 A schematic block diagram of a frame rate adjustment device provided in an embodiment of this application;

[0026] Figure 7 This is a schematic block diagram of an electronic device provided in an embodiment of this application. Detailed Implementation

[0027] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.

[0028] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or server that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or devices.

[0029] In this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or solution described as "exemplary" or "for example" in this application should not be construed as being better or more advantageous than other embodiments or solutions. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0030] To facilitate understanding of the embodiments of this application, before describing the various embodiments, some concepts involved in all embodiments of this application will be appropriately explained as follows:

[0031] 1) Virtual Reality (VR) is a technology for creating and experiencing virtual worlds. It computationally generates a virtual environment, which is a multi-source information (the virtual reality mentioned in this application includes at least visual perception, and may also include auditory perception, tactile perception, motion perception, and even taste perception, olfactory perception, etc.) that realizes the fusion of virtual environment, interactive three-dimensional dynamic visual scenes and simulation of physical behavior, so that users can immerse themselves in the simulated virtual reality environment and realize applications in various virtual environments such as maps, games, videos, education, medical care, simulation, collaborative training, sales, assisted manufacturing, maintenance and repair.

[0032] 2) Virtual reality devices (VR devices) are terminals that realize virtual reality effects. They can usually be provided in the form of glasses, head-mounted displays (HMDs), or contact lenses to realize visual perception and other forms of perception. Of course, the form of virtual reality devices is not limited to these, and they can be further miniaturized or enlarged according to actual needs.

[0033] Optionally, the virtual reality devices described in the embodiments of this application may include, but are not limited to, the following types:

[0034] 2.1) PC-based virtual reality (PCVR) devices utilize a PC for calculations and data output related to virtual reality functions. External PC-based virtual reality devices use the data output from the PC to achieve virtual reality effects.

[0035] 2.2) Mobile virtual reality devices support setting up mobile terminals (such as smartphones) in various ways (such as head-mounted displays with dedicated card slots). Through wired or wireless connection with the mobile terminal, the mobile terminal performs relevant calculations for virtual reality functions and outputs data to the mobile virtual reality device, such as watching virtual reality videos through the mobile terminal's APP.

[0036] 2.3) All-in-one virtual reality devices have processors for performing virtual functions, thus having independent virtual reality input and output functions. They do not need to be connected to a PC or mobile terminal, and have a high degree of freedom of use.

[0037] 3) Augmented Reality (AR): A technology that calculates the camera's pose parameters in the real world (or 3D world, real world) in real time during image acquisition, and adds virtual elements to the captured images based on these parameters. Virtual elements include, but are not limited to, images, videos, and 3D models. The goal of AR technology is to overlay the virtual world onto the real world on a screen for interactive experiences.

[0038] 4) Mixed Reality (MR): A simulated scene that integrates computer-created sensory input (e.g., virtual objects) with sensory input or its representation from a physical setting. In some MR scenes, the computer-created sensory input can adapt to changes in sensory input from the physical setting. Additionally, some electronic systems used to present MR scenes can monitor orientation and / or position relative to the physical setting, enabling virtual objects to interact with real objects (i.e., physical elements from the physical setting or their representations). For example, the system can monitor motion so that virtual plants appear stationary relative to physical buildings.

[0039] 5) Extended Reality (XR) refers to all real and virtual combined environments and frame rate adjustments generated by computer technology and wearable devices, including virtual reality (VR), augmented reality (AR), and mixed reality (MR).

[0040] 6) A virtual scene (also known as a virtual space) is a virtual scene displayed (or provided) by an application when it runs on an electronic device. This virtual scene can be a simulation of the real world, a semi-simulated / semi-fictional virtual scene, or a purely fictional virtual scene. A virtual scene can be any of a two-dimensional, 2.5-dimensional, or three-dimensional virtual scene; this application does not limit the dimension of the virtual scene. For example, a virtual scene may include the sky, land, ocean, etc., and the land may include environmental elements such as deserts and cities.

[0041] 7) Virtual objects (also known as virtual objects) are objects that interact in a virtual scene, controlled by the user or a robot program (e.g., an AI-based robot program), and can remain still, move, and perform various behaviors in the virtual scene.

[0042] As mentioned earlier, terminal devices need to adjust the display frame rate to improve the smoothness of image display and meet the image display requirements of different application scenarios. For example, terminal devices can use a higher display frame rate to display content with high requirements for smoothness and visual effects, such as movies or live videos; for scenarios with lower requirements for smoothness, such as static images, terminal devices can use a lower display frame rate to display image content, thereby reducing power consumption and saving energy resources. However, how to adjust the display frame rate of terminal devices according to the image display requirements of different application scenarios has become an urgent problem to be solved.

[0043] To address the aforementioned technical problems, embodiments of this application provide a frame rate adjustment method, apparatus, device, and storage medium to solve the problem of adjusting the display frame rate of a terminal device according to image display requirements in different application scenarios.

[0044] The technical solutions provided by the embodiments of this application will be described in detail below through some examples. The embodiments described below can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments.

[0045] Figure 1 This is a flowchart illustrating a frame rate adjustment method provided in an embodiment of this application. The frame rate adjustment method provided in this application can be executed by a frame rate adjustment device. This frame rate adjustment device can consist of hardware and / or software and can be integrated into an electronic device equipped with a screen and at least one application (app). In this embodiment, the electronic device may be, but is not limited to, mobile phones, tablets, desktop / laptop computers, ultra-mobile personal computers (UMPCs), handheld computers, netbooks, personal digital assistants (PDAs), XR devices, and other wearable devices. This application does not specifically limit the specific form of the electronic device. It should be understood that the above-mentioned electronic device can be understood as a terminal device or user equipment (UE).

[0046] like Figure 1 As shown, the method may include the following steps:

[0047] S101, in response to a trigger command for an object, obtains the object type, the object's resource file, and / or the current power mode of the terminal device.

[0048] It should be understood that the above object refers to any application installed on the terminal device. That is, the object is an application.

[0049] The above object types can be understood as application types, such as video applications, game applications, and shopping applications. There are no restrictions on application types here.

[0050] The aforementioned resource files can be understood as resource data that needs to be displayed to the user during the object's operation. Furthermore, these resource data files correspond to specific objects. For example, when the object is a video application, the resource file is a video resource; when the object is a game application, the resource file is a game resource; when the object is a shopping application, the resource file is a shopping resource, and so on.

[0051] The aforementioned current power mode can be understood as the current power mode of the terminal device. In this application, the power mode of the terminal device may include, but is not limited to, power-saving mode and standard mode. Power-saving mode refers to reducing the performance of the terminal device when its battery is low, such as reducing processor frequency, decreasing screen brightness, and disabling unnecessary functions, thereby reducing power consumption. Standard mode refers to the default power usage mode of the terminal device, which automatically adjusts its functions according to the current usage of the electronic device to maintain battery life and stability.

[0052] In some optional embodiments, when a user uses a terminal device, they can send a trigger command to any object on the terminal device, causing the terminal device to start and run the object according to the trigger command for that object. The trigger command sent by the user can be sent by clicking an icon of any object on the terminal device screen, or it can be sent via voice, etc. This application does not impose any restrictions on the implementation method of the user sending a trigger command for any object.

[0053] When running an object, this application can obtain at least one of the object type, the object's resource file, and the current power mode of the terminal device, and thus determine the target display frame rate of the object based on at least one of the obtained object type, object's resource file, and the current power mode of the terminal device.

[0054] It should be understood that the target display frame rate refers to the expected display frame rate achieved during object runtime. Specifically, the display frame rate is the frame rate. Furthermore, frame rate (Frames Per Second, FPS) refers to the number of times the graphics processing unit (GPU) refreshes the image per second.

[0055] In some optional embodiments, the object type obtained by this application may include, but is not limited to, the following methods:

[0056] Method 1: Obtain the main functional information of the object and determine the object type based on this main functional information.

[0057] For example, if an object's main function is to provide video functionality to users, then its object type can be determined as a video object. Similarly, if an object's main function is to provide users with news, industry updates, or other information, then its object type can be determined as a news / information object, and so on.

[0058] Method 2: Obtain the object's identification information and determine the object type based on that identification information.

[0059] The object's identification information can be unique information about the object, such as the object's name, and there are no restrictions on it here.

[0060] Optionally, this application can analyze whether the object's identification information includes keywords that explicitly point to a certain type or function. If so, the object type can be determined based on the type or function. If not, the object's identification information can be entered into a search engine to obtain search results, and then the object type can be determined by analyzing the descriptions or user reviews in the search results.

[0061] In some optional embodiments, the resource files of the object obtained by this application may include, but are not limited to, the following methods:

[0062] In the first approach, considering that the application's installation package may include various required files, such as configuration files, code files, and resource files, this application can obtain the object's resource files from the object's installation package.

[0063] The second method is to obtain the object's resource files from the server based on the object's identification information.

[0064] In some optional embodiments, when this application obtains the current power mode of the terminal device, it can obtain information such as battery power, voltage and / or current through a power monitoring module or power monitoring system in the terminal device, and then determine the current power mode of the terminal device based on the obtained power, voltage and / or current information.

[0065] S102, determine the target display frame rate of the object based on the object type, the object's resource file, and / or the current power mode of the terminal device.

[0066] Optionally, when determining the target display frame rate of an object, it can be achieved based on at least one of the obtained object type, object resource file, and current power mode of the terminal device.

[0067] In some alternative embodiments, determining the target display frame rate of the object may include one of the following:

[0068] Scenario 1: Based on the object's object type, obtain the target display frame rate of the object from the mapping relationship between object type and display frame rate.

[0069] Scenario 2: Based on the object's resource file, obtain the object's target display frame rate from the mapping relationship between resource type and display frame rate.

[0070] Scenario 3: Based on the current power mode of the terminal device, obtain the target display frame rate of the object from the mapping relationship between power mode and display frame rate.

[0071] Case 4: Based on the object type, the object's resource file, and the terminal device's current power mode, obtain the object's target display frame rate from the mapping relationship between object type, resource type, power mode, and display frame rate.

[0072] It should be understood that the resource type of the aforementioned resource file can be determined based on the object type. For example, if the object type is a video object, then the resource type of the object's resource file can be determined to be a video resource, etc. Alternatively, the resource type of the resource file can also be obtained by analyzing and processing the resource data in the resource file, and so on. There are no restrictions on determining the resource type of the resource file here.

[0073] Furthermore, the mapping relationships between object types and display frame rates, resource types and display frame rates, power modes and display frame rates, as well as the mapping relationships between object types, resource types, power modes and display frame rates, are all pre-created mapping tables based on extensive experiments. Each of these mapping relationships supports update operations, thus meeting the usage needs of different application scenarios.

[0074] For example, assuming the object type is a video object, the target display frame rate of the object can be determined to be 90Hz from the mapping relationship between object type and display frame rate in Table 1 below.

[0075] Table 1

[0076] object type Display frame rate Reading 60Hz Video 90Hz Games 120Hz XX category 72Hz ...... ......

[0077] S103, adjust the object's current display frame rate to the object's target display frame rate according to the preset frame rate adjustment strategy.

[0078] In this application, the preset frame rate adjustment strategy can be to adjust the display frame rate by gradually increasing or decreasing it according to a preset frame rate interval.

[0079] The preset frame rate interval can be selected as 1Hz. It should be understood that this preset frame rate interval can be set according to brightness changes that are not easily perceived by the human eye, and there are no restrictions on it here.

[0080] The current display frame rate mentioned above refers to the actual display frame rate during the object's runtime.

[0081] In some alternative embodiments, it can be first determined whether the target display frame rate is greater than the current display frame rate. Then, based on the relationship between the target display frame rate and the current display frame rate, the current display frame rate of the object is adjusted.

[0082] The adjustment of the current display frame rate of an object based on the relationship between the target display frame rate and the current display frame rate can include the following scenarios:

[0083] Scenario 1: If the target display frame rate is greater than the current display frame rate, then the current display frame rate of the object is adjusted in an incremental manner according to the preset frame rate interval.

[0084] Scenario 2: If the target display frame rate is lower than the current display frame rate, the current display frame rate of the object will be adjusted in a progressively decreasing manner according to the preset frame rate interval.

[0085] Scenario 3: If the target display frame rate is equal to the current display frame rate, then no display frame rate adjustment operation will be performed.

[0086] This application, by employing one of the three scenarios described above for display frame rate adjustment, can not only dynamically adjust the display frame rate of the terminal device according to the application scenario, but also gradually adjust the display frame rate of the terminal device according to a preset frame rate interval. This allows for dynamic adjustment of the display frame rate of the terminal device without the user's awareness, making the adjustment of the display frame rate smoother and more natural.

[0087] For example, suppose the terminal device's display frame rate is 72Hz before the user launches the object. After the user launches the object, the object type is determined to be a video object, and the target display frame rate is determined to be 90Hz. Therefore, it can be determined that the target display frame rate of 90Hz is greater than the object's current display frame rate of 72Hz. At this point, according to a preset frame rate adjustment strategy, the current display frame rate of 72Hz can be gradually adjusted 18 times at preset frame rate intervals of 1Hz, until the object's display frame rate reaches 90Hz.

[0088] The first adjustment was 72Hz + 1Hz = 73Hz, the second adjustment was 73Hz + 1Hz = 74Hz, and so on, until the eighteenth adjustment was 89Hz + 1Hz = 90Hz.

[0089] In some optional embodiments, considering that the object runs in the foreground of the terminal device and continuously displays images to the user through the terminal device screen, when this application gradually adjusts the current display frame rate of the object according to a preset frame rate adjustment strategy and a target display frame rate, the application processor (AP) may optionally generate a frame rate adjustment instruction and a brightness adjustment instruction for controlling the screen backlight brightness according to the desired display frame rate to be adjusted. Then, the application processor (AP) sends the frame rate adjustment instruction and the brightness adjustment instruction to the display driver integrated circuit (DDIC) through the target interface, so that the display driver integrated circuit (DDIC) outputs the desired display frame rate carried by the frame rate adjustment instruction and the desired pulse width modulation (PWM) signal carried by the brightness adjustment instruction to the screen during the display of the current image frame, so that the screen can display the next image frame according to the desired display frame rate, and control the screen backlight brightness according to the desired PWM signal when displaying the next image frame. In other words, the adjustment of the display frame rate and the screen backlight PWM signal of the terminal device needs to maintain a certain timing sequence to ensure the consistency of the screen backlight brightness adjustment timestamp and the display frame rate adjustment timestamp. For example... Figure 2 As shown.

[0090] In this application, the target interface can be a Mobile Industry Processor Interface (MIPI).

[0091] The desired display frame rate can be understood as the display frame rate of the object's current display frame rate or the adjusted current display frame rate plus a preset frame rate interval. The desired PWM signal can be understood as a PWM signal with a corresponding width (duty cycle) obtained based on the desired display frame rate. That is, a PWM signal with a corresponding duty cycle can be calculated based on each desired display frame rate.

[0092] Furthermore, when the application processor (AP) transmits frame rate adjustment instructions and brightness adjustment instructions through the MIPI interface, it can be executed after the MIPI interface has finished transmitting the current image frame and before the next image frame has finished transmitting. This ensures that the adjusted current display frame rate and screen backlight PWM signal can take effect when the next image frame after the current image frame is displayed.

[0093] In some optional embodiments, considering that the adjustment of the display frame rate of the terminal device by this application takes effect when the next image frame is displayed, after each adjustment of the current display frame rate of the object according to the preset frame rate adjustment strategy and the target display frame rate, this application may optionally display the first image frame according to the adjusted current display frame rate when the adjusted current display frame rate is in effect. The first image frame is a frame of image data in the resource file of the object.

[0094] The first image frame can be understood as the next image frame after the current image frame displayed by the object.

[0095] The technical solution disclosed in this application, in response to a trigger command for an object, obtains the object type, the object's resource file, and / or the current power mode of the terminal device. Based on the object type, the object's resource file, and / or the terminal device's current power mode, the target display frame rate of the object is determined. Then, according to a preset frame rate adjustment strategy, the current display frame rate of the object is adjusted to the target display frame rate of the object. In this way, the display frame rate of the terminal device can be dynamically adjusted according to the image display requirements of different application scenarios without the user's awareness, thereby improving the user experience.

[0096] Based on the foregoing embodiments, considering that users may switch between objects running in the foreground of the terminal device during use, such as switching from a first object to a second object, where the first object is the object currently running in the foreground (i.e., the current object), and the second object is the new object to be switched to. Since the second object may be of a different type than the current object, or the terminal device's power mode may change when running the second object, this application may further include: in response to a switching instruction to switch the object to another object, obtaining the target display frame rate of the other object; and gradually adjusting the current display frame rate of the other object to the target display frame rate of the other object according to a preset frame rate adjustment strategy. In this application, "other object" can be understood as a second object different from the current object.

[0097] The implementation principle of obtaining the target display frame rate of other objects and adjusting the current display frame rate of other objects is the same as or similar to the aforementioned implementation method of obtaining the target display frame rate of objects and adjusting the current display frame rate of objects. For details, please refer to the aforementioned embodiment section, which will not be elaborated on here.

[0098] In other words, this application can obtain the target display frame rate corresponding to the object running in the foreground of the terminal device, and then dynamically adjust the current display frame rate of the object according to the target display frame rate.

[0099] It should be understood that the application's dynamic adjustment of the current display frame rate of an object running in the foreground of a terminal device can refer to the dynamic adjustment of the current display frame rate of the terminal device.

[0100] In some optional implementations, considering that the resource file of any object in the terminal device may include multiple resource units of different resource types, such as the resource file of a live streaming application including live content and live transition content, and that the image content display requirements of different resource units may differ—for example, the live content requires a lower display frame rate of 36Hz, while the live transition content requires a higher display frame rate of 72Hz—this application can also determine the target display frame rate of the object based on the current resource unit of the object. The following section combines… Figure 3 The method for determining the target display frame rate of an object based on its resource file in the above embodiments will be further explained.

[0101] like Figure 3 As shown, step S102 above may include the following steps S102-1 to S102-2:

[0102] S102-1, Determine the current resource unit of the object.

[0103] In some alternative embodiments, the current image frame displayed by the object can be determined to be a resource unit in its own resource file by analyzing the timeline, progress bar, chapter information, and changes in the content of multiple consecutive image frames displayed to the user, such as color changes or shape changes.

[0104] For example, when the object is a video object, it can be determined whether the current image content displayed to the user belongs to the main video content or the video transition content. If it is determined that the current image content belongs to the main video content, then the current resource unit of the object is determined to be the main video unit.

[0105] S102-2, Determine the target display frame rate of the object based on the current resource unit of the object.

[0106] In some alternative embodiments, this application may obtain the target display frame rate of the object from the mapping relationship between resource units and display frame rates based on the current resource unit of the object.

[0107] In other words, when determining the target display frame rate of an object based on its resource files, this application can further refine the determination to which resource unit the object is currently displaying to the user. Then, based on the resource unit, the corresponding target display frame rate is determined from the pre-built mapping relationship between resource units and display frame rates. This enables the dynamic adjustment of the terminal device's display frame rate according to the real-time image content displayed by the object, thus satisfying the requirement to automatically adjust the terminal device's display frame rate in any scenario where adjustment is needed. Moreover, this automatic adjustment of the display frame rate is always imperceptible to the user, thereby improving the user experience.

[0108] In some optional embodiments, considering that frame drops may occur when dynamically adjusting the display frame rate of the terminal device, resulting in discontinuous, stuttering, or delayed image display, this application determines the appropriate time to adjust the display frame rate before doing so, based on the at least one frame displayed by the object at its previous display frame rate. This avoids frame drops during frame rate adjustments. The following section discusses... Figure 4 The frame rate adjustment method provided in the embodiments of this application will be further explained.

[0109] like Figure 4 As shown, the method may include the following steps:

[0110] S201, based on the image display duration of at least one second image frame, determine the number of other vertical synchronization signals to be generated when the third image frame is reached, wherein the display time of the second image frame is earlier than the display time of the third image frame.

[0111] The second image frame refers to the image frame that is located before the third image frame and belongs to the same object as the third image frame.

[0112] In this application, when the third image frame is the current image frame, at least one second image frame includes at least one historical image frame located before the current image frame.

[0113] Furthermore, the aforementioned image display duration can be understood as the image rendering time (Motion-To-Photon, MTP).

[0114] It should be understood that the image rendering time (MTP) mentioned above refers to the total time from when the user begins to move until the image changes and is displayed to the user by the terminal device.

[0115] In some optional embodiments, this application can obtain the image display duration of each second image frame, and then use the phase synchronization signal (phaseSync) to calculate the number of vertical synchronization signals (VSync) to be crossed when reaching the third image frame based on the image display duration of all second image frames. The vertical synchronization signals to be crossed here are the other vertical synchronization signals mentioned above.

[0116] As an optional implementation, the above method utilizes a phase synchronization signal (phaseSync) to calculate the vertical synchronization signal required to reach the third image frame based on the image display duration of all second image frames. This can include the following steps:

[0117] Step 11: Obtain the display refresh rate of the terminal device.

[0118] Step 12: Calculate the interval of the vertical synchronization signal based on the display refresh rate of the terminal device.

[0119] For example, if the display refresh rate of the terminal device is 72Hz, then according to Therefore, the interval of the vertical synchronization signal can be determined to be 13.89 milliseconds.

[0120] Step 13: Determine the image display duration of the third image frame.

[0121] The image display duration of the third image frame mentioned above refers to the image display duration of the image frame that is currently being rendered or has finished rendering and is ready to be displayed.

[0122] Step 14: Calculate the time difference between the most recently recorded historical image frame MTP and the third image frame MTP.

[0123] Step 15: Divide the time difference calculated in Step 14 by the interval of the vertical synchronization signal calculated in Step 12 to obtain the calculation result.

[0124] Because the vertical synchronization signal is discrete, this application can round up the calculation result of step 15 and use the rounded value as the number of vertical synchronization signals crossed.

[0125] S202, the vertical synchronization signal time of the third image frame is determined sequentially based on the time of each other vertical synchronization signal, the preset frame rate interval, the frame rate adjustment method, and the display frame rate of the object. The display frame rate of the object corresponds to each other vertical synchronization signal.

[0126] In this application, the vertical synchronization signal time can be understood as the time it takes to generate the vertical synchronization signal.

[0127] The display frame rate of the aforementioned object (the display frame rate of the terminal device) corresponds to each other vertical synchronization signal. It can be understood that each other vertical synchronization signal corresponds to a display frame rate, and adjacent display frame rates may be the same or different.

[0128] Optionally, when it is determined that the display frame rate needs to be adjusted, the aforementioned adjacent display frame rates are different. When it is determined that the display frame rate does not need to be adjusted, the aforementioned adjacent display frame rates are the same.

[0129] Considering that the refresh rate of the terminal device's display screen is available, this application can calculate the time of each other vertical synchronization signal based on the refresh rate of the terminal device's display screen and the number of other vertical synchronization signals to be generated.

[0130] Therefore, when it is determined that the display frame rate needs to be adjusted, this application does not directly adjust the display frame rate. Instead, it first determines the vertical synchronization signal time of the third image frame based on the number of other vertical synchronization signals to be generated when the third image frame is reached, and in advance, according to the generation time of each other vertical synchronization signal, the preset frame rate interval, the frame rate adjustment method, and the display frame rate of the object. Then, when the vertical synchronization signal time of the third image frame is reached, the display frame rate adjustment operation is performed.

[0131] The specific process of adjusting the display frame rate can be found in the aforementioned embodiments section, and will not be elaborated further here.

[0132] In some alternative embodiments, the vertical synchronization signal time of the third image frame can be determined according to the following formula (1), in sequence based on each other vertical synchronization signal time, the preset frame rate interval, the frame rate adjustment method, and the display frame rate of the object:

[0133]

[0134] Among them, predictV i Let nowV be the vertical synchronization signal time of the i-th image frame, where i is greater than 1 and less than or equal to j, and j is the position information corresponding to the third image frame. i-1 Let rate be the vertical synchronization signal time of the (i-1)th image frame. i-1 The display frame rate is the (i-1)th image frame, gradient is the preset frame rate interval, and trend is the frame rate adjustment trend value. When the display frame rate is adjusted from a small display frame rate to a large display frame rate, the trend is -1; when the display frame rate is adjusted from a large display frame rate to a small display frame rate, the trend is 0.

[0135] For example, if the current display frame rate of the terminal device is 72Hz and the target display frame rate is 90Hz, it means that the display frame rate of the terminal device is being adjusted from a small display frame rate of 72Hz to a large display frame rate of 90Hz, then trend is -1.

[0136] S203, determine the vertical synchronization signal time of the first image frame based on the vertical synchronization signal time of the third image frame.

[0137] Since the target display frame rate has been determined when adjusting the display frame rate, this application can use formula (1) in the aforementioned step S202 to determine the vertical synchronization signal time of the first image frame based on the vertical synchronization signal of the third image frame.

[0138] In formula (1), predictV i NowV is the vertical synchronization signal time for the first image frame. i-1 This is the vertical synchronization signal time for the third image frame.

[0139] S204, determine the execution timestamp of the asynchronous time warp thread of the first image frame based on the vertical synchronization signal time of the first image frame.

[0140] S205, when the execution timestamp of the asynchronous time warp thread that reaches the first image frame is determined, the asynchronous time warp thread of the first image frame is executed to warp the first image frame to obtain a new first image frame.

[0141] In this application, the execution timestamp of the asynchronous time warp (ATW) thread of the first image frame can be understood as the start working timestamp of the asynchronous time warp thread of the first image frame.

[0142] In some alternative embodiments, the execution timestamp of the asynchronous time warp (ATW) thread for the first image frame can be determined by the following steps:

[0143] Step 21: Obtain the first working time of the asynchronous time warp thread for each second image frame, and the second working time of the asynchronous time warp thread for the third image frame.

[0144] In this application, a timer or similar device can be used to count the first working time of the asynchronous time warp thread for each second image frame and the second working time of the asynchronous time warp thread for the third image frame while the asynchronous time warp thread processes each second and third image frame.

[0145] Step 22: Determine the average and variance of the working hours based on at least one first working hour and one second working hour.

[0146] Step 23: Determine the working time of the asynchronous time warp thread for the first image frame based on the average and variance of the working time.

[0147] In some embodiments, the working duration of the asynchronous time warp thread for the first image frame can be determined by the following formula (2):

[0148] T n =T ave +T var *α........................................(2)

[0149] Among them, T n T is the working duration of the asynchronous time-warped thread for the first image frame. ave T is the average working hours. var Here is the variance of working hours, and α is an adjustable parameter.

[0150] Step 24: Determine the execution timestamp of the asynchronous time warp thread of the first image frame based on the vertical synchronization signal time of the first image frame and the working duration of the asynchronous time warp thread of the first image frame.

[0151] Considering that each image frame corresponds to at least one vertical sync signal, and each vertical sync signal corresponds to one MIPI interface (i.e., the target interface), and that the reading interval between each vertical sync signal and its corresponding MIPI interface is fixed, the interval of the vertical sync signals is calculated based on 1 divided by the display refresh rate.

[0152] Furthermore, there is a preset time interval Δt between the vertical synchronization signal and the MIPI interface. This preset time interval Δt is a fixed value. Therefore, after obtaining the working duration of the asynchronous time-warping thread of the first image frame, this application can first determine the execution timestamp of the target interface based on the vertical synchronization signal of the first image frame and the preset time interval. Then, based on the execution timestamp of the target interface and the working time of the asynchronous time-warping thread of the first image frame, the execution timestamp of the asynchronous time-warping thread of the first image frame is determined.

[0153] In some embodiments, the execution timestamp of the target interface is determined based on the vertical synchronization signal of the first image frame and a preset time interval. This can be based on the vertical synchronization signal time of the first image frame plus the preset time interval Δt, and the sum is used as the start time of the MIPI interface.

[0154] In some embodiments, the execution timestamp of the asynchronous time warp thread of the first image frame is determined based on the execution timestamp of the target interface and the working time of the asynchronous time warp thread of the first image frame. This can be achieved by subtracting the working time of the asynchronous time warp thread of the first image frame from the start working time of the MIPI interface.

[0155] Furthermore, when the execution timestamp of the asynchronous time-warping thread for the first image frame is determined, this application can execute the asynchronous time-warping thread for the first image frame to warp the already rendered first image frame and obtain a new first image frame. In this way, the start time of the asynchronous time-warping thread can be accurately predicted, thereby avoiding frame drops when adjusting the display frame rate of the terminal device. Figure 5 The image shown is a schematic diagram of the terminal device displaying any image frame.

[0156] In some optional embodiments, since the execution timestamp of the target interface has already been obtained in the foregoing description, the asynchronous time warp thread of the first image frame performs warping processing on the first image frame to generate a new first image frame. When the execution timestamp of the target interface is reached, this application can control the target interface to transmit the new first image frame to the screen of the terminal device so that the screen displays the new first image frame. In this way, the conflict problem that occurs when the image frame is written to a single buffer and when the screen MIPI interface reads the image frame from the single buffer can be solved, thereby avoiding the screen tearing problem.

[0157] Considering that the PWM signal controlling the screen backlight brightness may not accurately predict its operating time when the terminal device's screen display MIPI interface reads image frames, this application determines the predicted display duration of the object based on the object's display frame rate and the object's desired display frame rate. The object's display frame rate is either the current display frame rate or the current display frame rate after each adjustment; the desired display frame rate can be understood as the display frame rate obtained by adding a preset frame rate interval to the object's current display frame rate or the adjusted current display frame rate.

[0158] Furthermore, based on the predicted display duration of the object, the execution timestamp of the target pulse modulation signal for illuminating the screen is determined. Then, when the execution timestamp of the target pulse modulation signal is reached, the screen backlight is illuminated according to the target pulse modulation signal, and a new first image frame is displayed on the screen.

[0159] In some alternative embodiments, the determination of the predicted display duration of the object based on the object's display frame rate and the object's expected display frame rate can be achieved by the following formula (3):

[0160]

[0161] Among them, t Y p is the predicted display duration of the object, p is the display frame rate of the object, and q is the expected display frame rate of the object.

[0162] In some embodiments, the execution timestamp of the target pulse modulation signal for illuminating the screen is determined based on the predicted display duration of the object. The predicted display duration can be used as a time period. Each time a new time period is reached, the execution timestamp of the target pulse modulation signal is determined. At this time, the screen backlight circuit illuminates the screen backlight according to the target pulse modulation signal and displays a new first image frame on the illuminated screen. In this way, the operating time of the PWM signal controlling the screen backlight brightness can be accurately predicted, thereby enabling accurate screen illumination to display image frames at the adjusted current display frame rate.

[0163] In this application, the aforementioned target pulse modulation signal refers to the desired pulse width modulation signal carried by the brightness adjustment command in the foregoing embodiments.

[0164] In other words, when this application adjusts the current display frame rate of the terminal device according to the target display frame rate, on the one hand, it can dynamically adjust the display frame rate of the terminal device without the user's awareness, based on the image display requirements of different application scenarios. On the other hand, it can also avoid problems such as frame dropping, screen tearing, and inaccurate screen backlight lighting time that occur when adjusting the display frame rate, thereby further improving the user experience.

[0165] The following is a reference to the appendix. Figure 6 The present application describes a frame rate adjustment device proposed in its embodiments. Figure 6 This is a schematic block diagram of a frame rate adjustment device provided in an embodiment of this application. The frame rate adjustment device proposed in this application is configured in a terminal device.

[0166] like Figure 6 As shown, the frame rate adjustment device 300 includes: an information acquisition module 310, a frame rate determination module 320, and a frame rate adjustment module 330.

[0167] The information acquisition module 310 is used to acquire the object type, the resource file of the object, and / or the current power mode of the terminal device in response to a trigger command for the object.

[0168] The frame rate determination module 320 is used to determine the target display frame rate of the object based on the object type of the object, the resource file of the object, and / or the current power mode of the terminal device;

[0169] The frame rate adjustment module 330 is used to adjust the current display frame rate of the object to the target display frame rate of the object according to a preset frame rate adjustment strategy.

[0170] In one or more optional implementations of the embodiments of this application, the frame rate adjustment device 300 further includes:

[0171] The display module is used to display a first image frame based on the adjusted current display frame rate when the adjusted current display frame rate is in effect. The first image frame is a frame of image data in the resource file of the object.

[0172] In one or more optional implementations of the embodiments of this application, the preset frame rate adjustment strategy is to adjust the display frame rate by gradually increasing or decreasing it according to a preset frame rate interval.

[0173] In one or more optional implementations of the embodiments of this application, the resource file of the object includes at least two resource units, and the resource types of each resource unit are different;

[0174] Accordingly, the frame rate determination module 320 includes:

[0175] The first determining unit is used to determine the current resource unit of the object;

[0176] The second determining unit is used to determine the target display frame rate of the object based on the current resource unit of the object.

[0177] In one or more optional implementations of the embodiments of this application, the second determining unit is specifically used to obtain the target display frame rate of the object from the mapping relationship between resource units and display frame rates based on the current resource units of the object.

[0178] In one or more optional implementations of this application embodiment, the frame rate determination module 320 is specifically configured to obtain the target display frame rate of the object from the mapping relationship between object type and display frame rate based on the object type of the object; or, obtain the target display frame rate of the object from the mapping relationship between resource type and display frame rate based on the resource file of the object; or, obtain the target display frame rate of the object from the mapping relationship between power mode and display frame rate based on the current power mode of the terminal device; or, obtain the target display frame rate of the object from the mapping relationship between object type, resource type, power mode and display frame rate based on the object type of the object, the resource file of the object, and the current power mode of the terminal device.

[0179] In one or more optional implementations of the embodiments of this application, the frame rate adjustment device 300 further includes:

[0180] The first determining module is used to determine the number of other vertical synchronization signals to be generated when the third image frame is reached, based on the image display duration of at least one second image frame, wherein the display time of the second image frame is earlier than the display time of the third image frame.

[0181] The second determining module is used to determine the vertical synchronization signal time of the third image frame in sequence based on the time of each of the other vertical synchronization signals, the preset frame rate interval, the frame rate adjustment method, and the display frame rate of the object, wherein the display frame rate of the object corresponds to each of the other vertical synchronization signals.

[0182] In one or more optional implementations of the embodiments of this application, the frame rate adjustment device 300 further includes:

[0183] The third determining module is used to determine the vertical synchronization signal time of the first image frame based on the vertical synchronization signal time of the third image frame.

[0184] The fourth determining module is used to determine the execution timestamp of the asynchronous time warp thread of the first image frame based on the vertical synchronization signal time of the first image frame;

[0185] The first processing module is configured to execute the asynchronous time warp thread of the first image frame when the execution timestamp of the asynchronous time warp thread of the first image frame is determined, so as to perform warp processing on the first image frame to obtain a new first image frame.

[0186] In one or more optional implementations of this application embodiment, the fourth determining module is specifically configured to: obtain the first working duration of the asynchronous time-warping thread of each second image frame and the second working duration of the asynchronous time-warping thread of the third image frame; determine the average value and variance of the working duration based on the at least one first working duration and the second working duration; determine the working duration of the asynchronous time-warping thread of the first image frame based on the average value and variance of the working duration; and determine the execution timestamp of the asynchronous time-warping thread of the first image frame based on the vertical synchronization signal time of the first image frame and the working duration of the asynchronous time-warping thread of the first image frame.

[0187] In one or more optional implementations of the embodiments of this application, the frame rate adjustment device 300 further includes:

[0188] The fifth determining module is used to determine the execution timestamp of the target interface based on the vertical synchronization signal time of the first image frame and a preset time interval;

[0189] The second processing module is used to control the target interface to transmit the new first image frame to the screen of the terminal device for display when the execution timestamp of the target interface is determined.

[0190] In one or more optional implementations of the embodiments of this application, the frame rate adjustment device 300 further includes:

[0191] The sixth determining module is used to determine the predicted display duration of the object based on the object's display frame rate and the object's expected display frame rate, wherein the display frame rate is the current display frame rate or the current display frame rate after each adjustment;

[0192] The seventh determining module is used to determine the execution timestamp of the target pulse modulation signal used to light up the screen based on the predicted display duration of the object.

[0193] The third processing module is used to, when the execution timestamp of the target pulse modulation signal is reached, turn on the screen backlight according to the target pulse modulation signal and display the new first image frame on the screen.

[0194] It should be understood that the device embodiments and the foregoing method embodiments can correspond to each other, and similar descriptions can be referred to the method embodiments. To avoid repetition, further details will not be provided here. Specifically, Figure 6 The device 300 shown can perform Figure 1 The corresponding method embodiments, and the foregoing and other operations and / or functions of each module in device 300 are respectively implemented to achieve Figure 1 For the sake of brevity, the corresponding processes in each method are not described in detail here.

[0195] The apparatus 300 of this application embodiment has been described above from the perspective of functional modules in conjunction with the accompanying drawings. It should be understood that this functional module can be implemented in hardware, in software instructions, or in a combination of hardware and software modules. Specifically, the steps of the first aspect method embodiment in this application can be completed by integrated logic circuits in the processor's hardware and / or by software instructions. The steps of the first aspect method disclosed in this application embodiment can be directly embodied as being executed by a hardware decoding processor, or by a combination of hardware and software modules in the decoding processor. Optionally, the software module can be located in a mature storage medium in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, etc. This storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the first aspect method embodiment described above.

[0196] Figure 7 This is a schematic block diagram of an electronic device provided as an embodiment of this application. Figure 7 As shown, the electronic device 400 may include:

[0197] The system includes a memory 410 and a processor 420. The memory 410 stores computer programs and transfers the program code to the processor 420. In other words, the processor 420 can retrieve and run the computer program from the memory 410 to implement the frame rate adjustment method in this embodiment.

[0198] For example, the processor 420 can be used to execute the above-described frame rate adjustment method embodiment according to instructions in the computer program.

[0199] In some embodiments of this application, the processor 420 may include, but is not limited to:

[0200] General-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.

[0201] In some embodiments of this application, the memory 410 includes, but is not limited to:

[0202] Volatile memory and / or non-volatile memory. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced Synchronous DRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), and Direct Rambus RAM (DR RAM).

[0203] In some embodiments of this application, the computer program may be divided into one or more modules, which are stored in the memory 410 and executed by the processor 420 to complete the frame rate adjustment method provided in this application. The one or more modules may be a series of computer program instruction segments capable of performing specific functions, which describe the execution process of the computer program in the electronic device.

[0204] like Figure 7 As shown, the electronic device 400 may further include:

[0205] Transceiver 430, which can be connected to processor 420 or memory 410.

[0206] The processor 420 can control the transceiver 430 to communicate with other devices; specifically, it can send information or data to other devices or receive information or data sent by other devices. The transceiver 430 may include a transmitter and a receiver. The transceiver 430 may further include antennas, and the number of antennas may be one or more.

[0207] It should be understood that the various components in the electronic device are connected through a bus system, which includes a data bus, a power bus, a control bus, and a status signal bus.

[0208] This application also provides a computer storage medium storing a computer program thereon, which, when executed by a computer, enables the computer to perform the frame rate adjustment method of the above-described method embodiments.

[0209] This application also provides a computer program product containing program instructions, which, when executed on an electronic device, cause the electronic device to perform the frame rate adjustment method described in the above method embodiments.

[0210] When implemented using software, it can be implemented entirely or partially as a computer program product. This computer program product includes one or more computer instructions. When these computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., digital video disc (DVD)), or a semiconductor medium (e.g., solid-state disk (SSD)).

[0211] Those skilled in the art will recognize that the modules and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0212] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or modules may be electrical, mechanical, or other forms.

[0213] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical modules; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. For example, the functional modules in the various embodiments of this application may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.

[0214] In this application embodiment, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.

[0215] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A frame rate adjustment method, characterized by, The method is applied to a terminal device, and comprises the following steps: In response to a trigger instruction for an object, an object type of the object, a resource file of the object, and / or a current power mode of the terminal device are obtained; A target display frame rate of the object is determined according to the object type of the object, the resource file of the object, and / or the current power mode of the terminal device; The current display frame rate of the object is adjusted to the target display frame rate of the object according to a preset frame rate adjustment strategy.

2. The method of claim 1, wherein, The method further comprises the following steps: When the current display frame rate after each adjustment is at an effective time, a first image frame is displayed according to the current display frame rate after each adjustment, the first image frame being a frame of image data in the resource file of the object.

3. The method of claim 1, wherein, The preset frame rate adjustment strategy is to adjust the display frame rate in a step-by-step increasing or step-by-step decreasing manner according to a preset frame rate interval.

4. The method of claim 1, wherein, The resource file of the object comprises at least two resource units, and the resource types of each of the resource units are different; Correspondingly, the target display frame rate of the object is determined according to the resource file of the object, and comprises the following steps: A current resource unit of the object is determined; The target display frame rate of the object is determined according to the current resource unit of the object.

5. The method of claim 4, wherein, The target display frame rate of the object is determined according to the current resource unit of the object, and comprises the following steps: The target display frame rate of the object is obtained from a mapping relationship between resource units and display frame rates according to the current resource unit of the object.

6. The method of claim 1, wherein, The target display frame rate of the object is determined according to the object type of the object, the resource file of the object, and / or the current power mode of the terminal device, and comprises the following steps: The target display frame rate of the object is obtained from a mapping relationship between object types and display frame rates according to the object type of the object; Or, the target display frame rate of the object is obtained from a mapping relationship between resource types and display frame rates according to the resource file of the object; Or, the target display frame rate of the object is obtained from a mapping relationship between power modes and display frame rates according to the current power mode of the terminal device; Or, the target display frame rate of the object is obtained from a mapping relationship between object types, resource types, power modes, and display frame rates according to the object type of the object, the resource file of the object, and the current power mode of the terminal device.

7. The method according to any one of claims 1 to 6, characterized in that, The method further comprises the following steps: According to the image display time length of at least one second image frame, the number of other vertical synchronization signals to be generated when a third image frame is reached is determined, the display time of the second image frame being earlier than the display time of the third image frame; The vertical synchronization signal time of the third image frame is determined according to each of the other vertical synchronization signal times, the preset frame rate interval, the frame rate adjustment manner, and the display frame rate of the object, the display frame rate of the object corresponding to each of the other vertical synchronization signals.

8. The method of claim 7, wherein, The method further comprises the following steps: The vertical synchronization signal time of the first image frame is determined according to the vertical synchronization signal time of the third image frame; determining, according to the vertical synchronization signal time of the first image frame, an execution time stamp of the asynchronous time warping thread of the first image frame; determining, when the execution time stamp of the asynchronous time warping thread of the first image frame is reached, to execute the asynchronous time warping thread of the first image frame to warp the first image frame to obtain a new first image frame.

9. The method of claim 8, wherein, The determining, according to the vertical synchronization signal time of the first image frame, of the execution time stamp of the asynchronous time warping thread of the first image frame comprises: obtaining a first working duration of the asynchronous time warping thread of each second image frame and a second working duration of the asynchronous time warping thread of the third image frame; determining, according to the at least one first working duration and the second working duration, a mean value and a variance value of the working duration; determining, according to the mean value and the variance value of the working duration, the working duration of the asynchronous time warping thread of the first image frame; determining, according to the vertical synchronization signal time of the first image frame and the working duration of the asynchronous time warping thread of the first image frame, the execution time stamp of the asynchronous time warping thread of the first image frame.

10. The method of claim 8, wherein, The method further comprises: determining, according to the vertical synchronization signal time of the first image frame and a preset time interval, an execution time stamp of a target interface; determining, when the execution time stamp of the target interface is reached, to control the target interface to transmit the new first image frame to a screen of a terminal device for display operation.

11. The method of claim 8, wherein, The method further comprises: determining, according to the display frame rate of the object and the expected display frame rate of the object, a predicted display duration of the object, wherein the display frame rate is a current display frame rate or a current display frame rate after each adjustment; determining, according to the predicted display duration of the object, an execution time stamp of a target pulse modulation signal for lighting the screen; when the execution time stamp of the target pulse modulation signal is reached, lighting the screen backlight according to the target pulse modulation signal and displaying the new first image frame through the screen.

12. A frame rate adjustment apparatus characterized by comprising: configured in a terminal device, comprising: an information obtaining module, configured to, in response to a trigger instruction for an object, obtain an object type of the object, a resource file of the object, and / or a current power mode of the terminal device; a frame rate determining module, configured to determine a target display frame rate of the object according to the object type of the object, the resource file of the object, and / or the current power mode of the terminal device; a frame rate adjusting module, configured to adjust a current display frame rate of the object to the target display frame rate of the object according to a preset frame rate adjusting strategy.

13. An electronic device, comprising: comprising: a processor and a memory, the memory being configured to store a computer program, and the processor being configured to invoke and run the computer program stored in the memory to execute the frame rate adjusting method in any one of claims 1-11.

14. A computer-readable storage medium, characterized in that, a computer program for storing, the computer program causing a computer to execute the frame rate adjusting method in any one of claims 1-11.

15. A computer program product comprising program instructions, characterized in that, when the program instructions are run on an electronic device, causing the electronic device to execute the frame rate adjusting method in any one of claims 1-11.