Frame rate processing method, apparatus, and readable storage medium
Patent Information
- Application Number
- CN202111072625.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-09-14
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2041-09-14
AI Technical Summary
[0004]在一些情况下,CPU的时钟频率和GPU的时钟频率大多被控制在最低频率,从而导致手机的处理性能大幅下降,导致所述应用发生视频播放卡顿、延迟等问题
[0075]本公开的实施例提出了针对目标应用根据历史帧率调整当前的参考帧率的方式,根据目标应用的真实的历史帧率确定当前的参考帧率,从而使设置出的参考帧率更符合目标应用的实际运行情况,从而使设置出的参考帧率更合理,使目标应用的实际帧率的变化更为平滑。
Smart Images

Figure CN115808954B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of electronic equipment technology, and in particular to a frame rate processing method, apparatus and readable storage medium. Background Technology
[0002] With the rapid development of electronic device technology, mobile phones have gradually increased their processing power. Large-scale video-based applications, such as online games, competitive games, and live video streaming, can now run on mobile phones.
[0003] Large-scale video-based applications place high demands on the processing power of a mobile phone's central processing unit (CPU) and graphics processing unit (GPU). As the application runs longer, the temperature of the phone's CPU and GPU will gradually rise. When the temperature rises to a set temperature threshold (e.g., between 40 and 50 degrees Celsius), a temperature rise regulation mechanism (i.e., thermal mechanism) will be triggered. This temperature rise regulation mechanism includes the control of the CPU clock frequency and GPU clock frequency, as well as the control of the number of CPU cores online.
[0004] In some cases, the CPU clock frequency and GPU clock frequency are mostly controlled at the lowest frequency, which leads to a significant decrease in the phone's processing performance, causing problems such as video playback stuttering and latency in the application. Summary of the Invention
[0005] In view of this, the present disclosure provides a frame rate processing method, apparatus and readable storage medium.
[0006] According to a first aspect of the present disclosure, a frame rate processing method is provided, comprising:
[0007] During the operation of the target application, multiple historical frame rates of the target application within a first historical time period are determined, and a reference frame rate of the target application is adjusted based on the multiple historical frame rates.
[0008] In one embodiment, determining multiple historical frame rates of the target application within a first historical time period includes:
[0009] When the current time is determined to be the adjustment time corresponding to the first interval, the historical frame rate within multiple second intervals prior to the adjustment time is determined;
[0010] Adjusting the reference frame rate of the target application based on the plurality of historical frame rates includes:
[0011] Determine the historical representation frame rate corresponding to the historical frame rate within each second interval, and adjust the reference frame rate of the target application based on the historical representation frame rate.
[0012] In one embodiment, determining multiple historical frame rates of the target application within a first historical time period includes:
[0013] When the current time is determined to be the set adjustment time, the historical frame rate within multiple second intervals prior to the set adjustment time is determined;
[0014] Adjusting the reference frame rate of the target application based on the plurality of historical frame rates includes:
[0015] Determine the historical representation frame rate corresponding to the historical frame rate within each second interval, and adjust the reference frame rate of the target application based on the historical representation frame rate.
[0016] In one embodiment, determining the historical representation frame rate corresponding to the historical frame rate within each second interval includes one of the following:
[0017] Determine the average of the historical frame rates within each second interval;
[0018] Determine the average value of the historical frame rates that have the largest proportion in the distribution of historical frame rates within each second interval.
[0019] In one embodiment, adjusting the reference frame rate of the target application based on the historical characterization frame rate includes:
[0020] When each of the historical frame rates is less than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is reduced by a first set step size.
[0021] and / or;
[0022] When each of the historical frame rates is greater than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is increased by a first set step size.
[0023] The first set step size is positively correlated with the set value.
[0024] In one embodiment, the first set step size is the product of a series and a fixed step size, wherein the series is positively correlated with the set value.
[0025] In one embodiment, the method further includes:
[0026] The initial value of the reference frame rate of the target application is determined based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal.
[0027] In one embodiment, determining the initial value of the reference frame rate of the target application based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal includes:
[0028] The product of the target application's expected frame rate, the target application's refresh processing capability, and a first ratio is determined as the initial value of the target application's reference frame rate.
[0029] The refresh processing capability of the target application is the normalized value corresponding to the maximum frame rate that the target application can achieve under the set test environment and the set clock frequency.
[0030] The first ratio is the ratio of the limited frequency of the mobile terminal to the ideal frequency of the mobile terminal.
[0031] In one embodiment, adjusting the reference frame rate of the target application based on the historical characterization frame rate includes:
[0032] When the reference frame rate of the target application is greater than the set frame rate and the difference between the reference frame rate and the set frame rate is less than a first value, and when the absolute value of the difference between the historical characterization frame rate and the reference frame rate of the target application is less than a second value, the reference frame rate of the target application is increased.
[0033] In one embodiment, the method further includes:
[0034] When it is determined that the mobile terminal has not received any control signal for the target application during the second historical period, the reference frame rate of the target application is reduced.
[0035] In one embodiment, after lowering the reference frame rate of the target application, when a control signal for the target application is received, the reference frame rate of the target application is increased.
[0036] According to a second aspect of the present disclosure, a frame rate processing apparatus is provided, applied to a mobile terminal, comprising:
[0037] The first determining module is used to determine multiple historical frame rates of the target application within a first historical time period during the operation of the target application.
[0038] The first adjustment module is used to adjust the reference frame rate of the target application based on the multiple historical frame rates.
[0039] In one embodiment, the first determining module includes:
[0040] The first determining unit is configured to determine the historical frame rate within a plurality of second intervals prior to the adjustment time when the current time is determined to be the adjustment time corresponding to the first interval.
[0041] The first adjustment module includes:
[0042] The second determining unit is used to determine the historical representation frame rate corresponding to the historical frame rate within each second interval.
[0043] An adjustment unit is used to adjust the reference frame rate of the target application based on the historical characterization frame rate.
[0044] In one embodiment, the first determining module includes:
[0045] The second determining unit is used to determine the historical frame rate within a plurality of second intervals before the set adjustment time when the current time is determined to be the set adjustment time.
[0046] The first adjustment module includes:
[0047] The second determining unit is used to determine the historical representation frame rate corresponding to the historical frame rate within each second interval.
[0048] An adjustment unit is used to adjust the reference frame rate of the target application based on the historical characterization frame rate.
[0049] In one embodiment, the second determining unit is configured to determine the historical representation frame rate corresponding to the historical frame rate within each second interval using one of the following methods:
[0050] Determine the average of the historical frame rates within each second interval;
[0051] Determine the average value of the historical frame rates that have the largest proportion in the distribution of historical frame rates within each second interval.
[0052] In one embodiment, the adjustment unit is further configured to adjust the reference frame rate of the target application based on the historical characterization frame rate using the following method:
[0053] When each of the historical frame rates is less than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is reduced by a first set step size.
[0054] and / or;
[0055] When each of the historical frame rates is greater than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is increased by a first set step size.
[0056] The first set step size is positively correlated with the set value.
[0057] In one embodiment, the first set step size is the product of a series and a fixed step size, wherein the series is positively correlated with the set value.
[0058] In one embodiment, the apparatus further includes:
[0059] The second determining module is used to determine an initial value of the reference frame rate of the target application based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal.
[0060] In one embodiment, the second determining module is further configured to determine an initial value of a reference frame rate for the target application using the following method based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal:
[0061] The product of the target application's expected frame rate, the target application's refresh processing capability, and a first ratio is determined as the initial value of the target application's reference frame rate.
[0062] The refresh processing capability of the target application is the normalized value corresponding to the maximum frame rate that the target application can achieve under the set test environment and the set clock frequency.
[0063] The first ratio is the ratio of the limited frequency of the mobile terminal to the ideal frequency of the mobile terminal.
[0064] In one embodiment, the first adjustment module is further configured to adjust the reference frame rate of the target application based on the historical characterization frame rate using the following method:
[0065] When the reference frame rate of the target application is greater than the set frame rate and the difference between the reference frame rate and the set frame rate is less than a first value, and when the absolute value of the difference between the historical characterization frame rate and the reference frame rate of the target application is less than a second value, the reference frame rate of the target application is increased.
[0066] In one embodiment, the apparatus further includes:
[0067] The second adjustment module is used to reduce the reference frame rate of the target application when the mobile terminal does not receive a control signal for the target application during the second historical time period.
[0068] In one embodiment, the apparatus further includes:
[0069] The third adjustment module, after lowering the reference frame rate of the target application, raises the reference frame rate of the target application upon receiving a control signal for the target application.
[0070] According to a third aspect of the present disclosure, a frame rate processing apparatus is provided, applied to a terminal, comprising:
[0071] processor;
[0072] Memory used to store processor-executable instructions;
[0073] The processor is configured to execute executable instructions in the memory to implement the frame rate processing method.
[0074] According to a fourth aspect of the present disclosure, a non-transitory computer-readable storage medium is provided, on which executable instructions are stored, wherein the executable instructions, when executed by a processor, implement the steps of the frame rate processing method.
[0075] The embodiments of this disclosure propose a method for adjusting the current reference frame rate for a target application based on historical frame rates. The current reference frame rate is determined based on the actual historical frame rate of the target application, thereby making the set reference frame rate more consistent with the actual operation of the target application, making the set reference frame rate more reasonable, and making the changes in the actual frame rate of the target application smoother.
[0076] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0077] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure.
[0078] Figure 1 This is a flowchart illustrating a frame rate processing method according to an exemplary embodiment;
[0079] Figure 2 This is a diagram illustrating the relationship between CPU temperature and the frame rate of the target application, based on relevant technologies.
[0080] Figure 3 This is a schematic diagram illustrating CPU temperature and the frame rate of a target application according to an exemplary embodiment;
[0081] Figure 4 This is a structural diagram of a frame rate processing apparatus according to an exemplary embodiment;
[0082] Figure 5 This is a structural diagram of another frame rate processing apparatus according to an exemplary embodiment. Detailed Implementation
[0083] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with those in this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the embodiments in this disclosure as detailed in the appended claims.
[0084] The terminology used in this disclosure is for the purpose of describing particular embodiments only and is not intended to be limiting of the present disclosure. The singular forms “a,” “the,” and “the” as used in this disclosure and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any and all possible combinations of one or more of the associated listed items.
[0085] For applications involving video display processing, frequency refers to the number of frames of images displayed per second. It is a measure used to measure the number of displayed frames, and the unit is frames per second.
[0086] In one approach, to slow down the rate of temperature rise and save power, a lookup table method is used to change the application's frame rate in a stepped manner as the temperature changes.
[0087] In another approach, to slow down the rate of temperature rise and save power, the application's frame rate is reduced in steps based on a preset temperature.
[0088] While the two solutions mentioned above can change the application's frame rate with temperature variations, they are typically suitable for high-end mobile terminals (with powerful chips) and often fail to meet the needs of mobile terminals with medium to low processing capabilities.
[0089] This disclosure provides a frame rate processing method applied to a mobile terminal. (Refer to...) Figure 1 , Figure 1 This is a flowchart illustrating a frame rate processing method according to an exemplary embodiment. Figure 1 As shown, this method may include:
[0090] Step S11: During the operation of the target application, determine multiple historical frame rates of the target application within a first historical time period, and adjust the reference frame rate of the target application based on the multiple historical frame rates.
[0091] The reference frame rate is the target for adjusting the real-time frame rate of the target application. During the operation of the target application, the real-time frame rate changes accordingly with the reference frame rate. Generally, the difference between the real-time frame rate and the reference frame rate is within a small set range.
[0092] In one implementation, the target application may be an application that includes video display. For example, the target application is a massively multiplayer online game.
[0093] In this embodiment of the disclosure, a method is proposed to adjust the current reference frame rate for a target application based on the historical frame rate. The current reference frame rate is determined based on the actual historical frame rate of the target application, so that the set reference frame rate is more in line with the actual operation of the target application, making the set reference frame rate more reasonable and the change of the actual frame rate of the target application smoother.
[0094] The following illustrations compare the results of other solutions with those of this embodiment.
[0095] like Figure 2 As shown, in one scheme, a first application runs on a mobile terminal. As the first application is used continuously, the temperature of the mobile terminal's CPU gradually increases until the temperature rises to a temperature threshold T1, triggering a temperature rise regulation mechanism (i.e., thermal mechanism). The temperature rise regulation mechanism controls the frame rate of the first application, resulting in a significant drop in frame rate and subsequent severe jitter.
[0096] like Figure 3 As shown, using the method in this embodiment, the frame rate of the target application is adjusted in advance before the CPU temperature of the mobile terminal rises to the temperature threshold T1, so that the frame rate decrease process is smoother, and the frame rate adjustment in advance can also slow down the rate of CPU temperature rise.
[0097] This disclosure provides a frame rate processing method applied to a mobile terminal. This method includes... Figure 1 The method shown, and:
[0098] The reference frame rate of the target application can be adjusted in the following two ways.
[0099] The first type:
[0100] Set a first duration, and adjust it once every first duration.
[0101] Step S11 involves determining multiple historical frame rates of the target application within a historical time period, including:
[0102] Step 1-A: When it is determined that the current time is the adjustment time corresponding to the first interval, determine the historical frame rate within multiple second intervals before the adjustment time;
[0103] Step S11, adjusting the reference frame rate of the target application based on the multiple historical frame rates, includes:
[0104] Step 2: Determine the historical representation frame rate corresponding to the historical frame rate within each second interval, and adjust the reference frame rate of the target application according to the historical representation frame rate.
[0105] In one embodiment, step 2, determining the historical representation frame rate corresponding to the historical frame rate within each second interval, includes one of the following:
[0106] Determine the average of the historical frame rates within each second interval;
[0107] Determine the average value of the historical frame rates that have the largest proportion in the distribution of historical frame rates within each second interval.
[0108] In one implementation, the first interval and the second interval are the same.
[0109] The following example illustrates this.
[0110] For example:
[0111] The first interval corresponds to a duration of 1 minute, and the reference frame rate is adjusted every 1 minute. The second interval corresponds to a duration of 1 minute.
[0112] After adjusting the reference frame rate at time t1, one minute later, time t2 is reached. This time t2 is the adjustment time corresponding to the first interval. The historical frame rates within the five second intervals prior to time t2 are determined, i.e., the historical frame rates within the five minutes prior to time t2 are determined. The average frame rate corresponding to the historical frame rate within each second interval is determined, i.e., the average frame rate corresponding to each historical frame rate within each minute of the five minutes prior to time t2 is determined. The reference frame rate of the target application is adjusted based on the determined five average frame rates.
[0113] In one implementation, the first interval and the second interval are not the same.
[0114] In one implementation, the first interval and the second interval are not the same, and the second interval is larger than the first interval.
[0115] In one implementation, the first interval and the second interval are not the same, and the second interval is N times the first interval. Here, N is an integer greater than 1.
[0116] The following example illustrates this.
[0117] For example:
[0118] The first interval corresponds to a duration of 1 minute, and the reference frame rate is adjusted every 1 minute. The second interval corresponds to a duration of 2 minutes.
[0119] After adjusting the reference frame rate at time t1, one minute later, time t2 is reached. This time t2 is the adjustment time corresponding to the first interval. The historical frame rates within the five second intervals prior to time t2 are determined, i.e., the historical frame rates within the 10 minutes prior to time t2 are determined. The average frame rate corresponding to the historical frame rate within each second interval is determined, i.e., the average frame rate corresponding to each historical frame rate within every 2 minutes within the 10 minutes prior to time t2 is determined. The reference frame rate of the target application is adjusted based on the determined five average frame rates.
[0120] In this first method, the reference frame rate is adjusted at equal intervals. The mobile terminal only needs to know the set first interval, and can use this first interval as a basis to repeatedly execute the same process, which can simplify the processing of the mobile terminal and improve processing efficiency.
[0121] The second type:
[0122] Set the adjustment time, and make adjustments at the set adjustment time.
[0123] Step S11 involves determining multiple historical frame rates of the target application within a historical time period, including:
[0124] Step 1-B: When the current time is determined to be the set adjustment time, determine the historical frame rate within multiple second intervals before the set adjustment time;
[0125] Step S11, adjusting the reference frame rate of the target application based on the multiple historical frame rates, includes:
[0126] Step 2: Determine the historical representation frame rate corresponding to the historical frame rate within each second interval, and adjust the reference frame rate of the target application according to the historical representation frame rate.
[0127] In one embodiment, step 2, determining the historical representation frame rate corresponding to the historical frame rate within each second interval, includes one of the following:
[0128] First, determine the average historical frame rate within each second interval;
[0129] Second, determine the average value of the historical frame rates with the largest proportion in the distribution of historical frame rates within each second interval.
[0130] In one implementation, the time interval between adjacent adjustment times is the same. For example, the adjustment time is the midpoint between any two consecutive minutes in the system time.
[0131] In one implementation, the time intervals between adjacent adjustment times are not the same. For example, the adjustment times are set at 1 / 3 and 4 / 5 of every two adjacent minutes.
[0132] The following example illustrates this.
[0133] For example:
[0134] The adjustment time is set to the midpoint between any two consecutive minutes in the system time. The reference frame rate is adjusted once every set adjustment time. The second interval corresponds to a duration of 2 minutes.
[0135] At system time A month B day C hour D minute 30 seconds, the set adjustment time is determined. The historical frame rate within the five second intervals prior to this time is determined, i.e., the historical frame rate within the 10 minutes prior to this time is determined. The average frame rate corresponding to the historical frame rate within each second interval is determined, i.e., the average frame rate corresponding to each historical frame rate within every 2 minutes within the 10 minutes prior to this time is determined. The reference frame rate of the target application is adjusted based on the determined five average frame rates.
[0136] In this second approach, the reference frame rate is adjusted at non-uniform intervals. The mobile terminal determines whether the current time is the set adjustment time according to the set adjustment time rules. This non-uniform interval approach makes the timing of the mobile terminal's adjustment of the reference frame rate more flexible, thus adapting to the usage needs of different applications in different scenarios.
[0137] In one implementation, adjusting the reference frame rate of the target application based on the historical characterization frame rate includes:
[0138] When each of the historical frame rates is less than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is reduced by a first set step size.
[0139] and / or;
[0140] When each of the historical frame rates is greater than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is increased by a first set step size.
[0141] The first set step size is positively correlated with the set value.
[0142] In one embodiment, the first set step size is the product of a series and a fixed step size, wherein the series is positively correlated with the set value.
[0143] The following example illustrates this.
[0144] For example:
[0145] With a fixed step size of 5,
[0146] When the value is set to 5, the corresponding level is 1, and the first set step size is 5.
[0147] When the value is set to 10, the corresponding level is 2, and the first set step size is 10.
[0148] When the value is set to 15, the corresponding level is 3, and the first set step size is 15.
[0149] And so on.
[0150] In one example, the fixed step size is positively correlated with the computing power of the mobile terminal; that is, the stronger the computing power of the mobile terminal, the larger the fixed step size, and the weaker the computing power of the mobile terminal, the smaller the fixed step size. For high-end terminals, the fixed step size is larger, and for mid-to-low-end terminals, the fixed step size is smaller.
[0151] In one embodiment, the method further includes:
[0152] The initial value of the reference frame rate of the target application is determined based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal.
[0153] In one example, determining an initial value for the reference frame rate of the target application based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal includes:
[0154] The product of the target application's expected frame rate, the target application's refresh processing capability, and a first ratio is determined as the initial value of the target application's reference frame rate; specifically:
[0155] The initial value of the reference frame rate = expected frame rate * refresh processing capacity * first ratio.
[0156] The refresh processing capability of the target application is the normalized value corresponding to the maximum frame rate that the target application can achieve under the set test environment and the set clock frequency.
[0157] The first ratio is the ratio of the limited frequency of the mobile terminal to the ideal frequency of the mobile terminal.
[0158] In one embodiment, adjusting the reference frame rate of the target application based on the historical characterization frame rate includes:
[0159] When the reference frame rate of the target application is greater than the set frame rate and the difference between the reference frame rate and the set frame rate is less than a first value, and when the absolute value of the difference between the historical characterization frame rate and the reference frame rate of the target application is less than a second value, the reference frame rate of the target application is increased.
[0160] The frame rate setting can be a percentage of the target application's desired frame rate. For example, the percentage could be set to 70%.
[0161] The following example illustrates this.
[0162] Set the frame rate to 70% of the desired frame rate, with a first value of 5 and a second value of 2.
[0163] When the reference frame rate of the target application is greater than 70% of the expected frame rate, and the difference between the reference frame rate and 70% of the expected frame rate is less than 5, and the absolute value of the difference between the historical characterization frame rate and the reference frame rate of the target application is less than 2, the reference frame rate of the target application is increased.
[0164] This disclosure provides a frame rate processing method applied to a mobile terminal. This method includes... Figure 1 The method shown also includes:
[0165] When it is determined that the mobile terminal has not received any control signal for the target application during the second historical period, the reference frame rate of the target application is reduced.
[0166] In one implementation, the control signal for the target application is a click touch, for example, the control signal is a click touch on the display interface of the target application.
[0167] In one embodiment, the control signal for the target application is a voice control signal, for example: a voice control signal is a signal that controls the display interface of the target application through voice control commands.
[0168] In one implementation, the control signal for the target application is a hardware button press signal, such as increasing the volume of background music in the target application.
[0169] In one example, when the target application is an online game, if the user does not operate the online game for an extended period of time without exiting the target application's interface, it is determined that the mobile terminal did not receive any control signals for the target application during the second historical period.
[0170] In one embodiment, reducing the reference frame rate of the target application includes: reducing the reference frame rate of the target application by a second set step size.
[0171] In one embodiment, when it is determined that the mobile terminal has not received a control signal for the target application during the second historical period, after lowering the reference frame rate of the target application, a first identifier is set to a first value (e.g., the first value is 1) to record this operation based on human-computer interaction. This operation is to lower the reference frame rate of the target application in the scenario where the mobile terminal has not received a control signal for the target application during the second historical period.
[0172] In this embodiment of the disclosure, if it is determined that the mobile terminal has not received any control signal for the target application during the second historical period, it is considered that the user has not operated the target application for a long time, but has not exited the target application interface. The reference frame rate of the target application is lowered in advance to save the power consumption of the processor (CPU) and slow down the rise of CPU temperature.
[0173] This disclosure provides a frame rate processing method applied to a mobile terminal. This method includes... Figure 1 The method shown also includes:
[0174] When it is determined that the mobile terminal has not received a control signal for the target application during the second historical period, the reference frame rate of the target application is lowered; after the reference frame rate of the target application is lowered, when a control signal for the target application is received, the reference frame rate of the target application is increased.
[0175] In one embodiment, increasing the reference frame rate of the target application includes: decreasing the reference frame rate of the target application by a third predetermined step size. The third predetermined step size is equal to or less than a second predetermined step size.
[0176] In one embodiment, when it is determined that the mobile terminal has not received a control signal for the target application during a second historical period, the reference frame rate of the target application is reduced, and a first identifier is set to a first value (e.g., the first value is 1); after reducing the reference frame rate of the target application, when a control signal for the target application is received, and it is determined that the first identifier is the first value, the reference frame rate of the target application is increased, and the value of the first identifier is set to a second value (e.g., the second value is 0).
[0177] The first identifier is set to different values at different stages of adjusting the reference frame rate based on human interaction information. The first identifier is used to record the corresponding stage of adjusting the reference frame rate based on human interaction information, and the corresponding processing is performed based on the specific value of the first identifier.
[0178] In this embodiment of the disclosure, when a user does not operate the target application for a long time without exiting the target application's interface, and then resumes operating the target application, the reference frame rate of the target application is promptly increased to ensure the smoothness of the target application's screen.
[0179] The following is a detailed explanation using a specific example.
[0180] Example:
[0181] Each level is set to correspond to 3 frames.
[0182] When a user runs a large online game on a mobile device, the system obtains the mobile device's limited frequency F1, ideal frequency F2, expected frame rate F3 of the target application, and refresh processing capability of the target application.
[0183] Determine the ratio of the mobile terminal's limited frequency F1 to its ideal frequency F2.
[0184] The initial value for determining the reference frame rate is the product of the desired frame rate F3, the refresh processing capability, and the aforementioned ratio.
[0185] Calculate the average frame rate for each first interval, with 5 minutes as the first interval, and store the average frame rate of the most recent 4 first intervals.
[0186] At the adjustment time corresponding to the first interval, it is determined that all historical representation frame rates are less than the reference frame rate, and when the absolute value of the difference between each historical representation frame rate and the reference frame rate is greater than 5, the reference frame rate of the target application at level one is reduced. It is determined that all historical representation frame rates are less than the reference frame rate, and when the absolute value of the difference between each historical representation frame rate and the reference frame rate is greater than 10, the reference frame rate of the target application at levels two is reduced.
[0187] At the adjustment time corresponding to the first interval, it is determined that all historical representation frame rates are greater than the reference frame rate, and when the absolute value of the difference between each historical representation frame rate and the reference frame rate is greater than 5, the reference frame rate of the target application at one level is increased. It is determined that all historical representation frame rates are greater than the reference frame rate, and when the absolute value of the difference between each historical representation frame rate and the reference frame rate is greater than 10, the reference frame rate of the target application at two levels is increased.
[0188] When the reference frame rate of the target application is greater than 70% of the expected frame rate, and the difference between the reference frame rate and 70% of the expected frame rate is less than 5, and the absolute value of the difference between the historical frame rate and the reference frame rate of the target application is less than 2, the reference frame rate of the target application is increased by one level.
[0189] When it is determined that the mobile terminal has not received any control signal for the online game during the second historical period, the reference frame rate is lowered by two levels and the first flag is set to 1; after lowering the reference frame rate by two levels, when a control signal for the online game is received and the first flag is determined to be 1, the reference frame rate is increased by one level and the value of the first flag is set to 0.
[0190] This disclosure provides a frame rate processing apparatus applied to a mobile terminal. (Refer to...) Figure 4 , Figure 4 This is a structural diagram illustrating a frame rate processing apparatus according to an exemplary embodiment. Figure 4 As shown, this device may include:
[0191] The first determining module 41 is used to determine multiple historical frame rates of the target application within a first historical time period during the operation of the target application.
[0192] The first adjustment module 42 is used to adjust the reference frame rate of the target application according to the plurality of historical frame rates.
[0193] This disclosure provides a frame rate processing apparatus for a mobile terminal, the apparatus comprising: Figure 1 The device shown, and
[0194] The first determining module 41 includes:
[0195] The first determining unit is configured to determine the historical frame rate within a plurality of second intervals prior to the adjustment time when the current time is determined to be the adjustment time corresponding to the first interval.
[0196] The first adjustment module includes:
[0197] The second determining unit is used to determine the historical representation frame rate corresponding to the historical frame rate within each second interval.
[0198] An adjustment unit is used to adjust the reference frame rate of the target application based on the historical characterization frame rate.
[0199] This disclosure provides a frame rate processing apparatus for a mobile terminal, the apparatus comprising: Figure 4 The device shown, and
[0200] The first determining module 41 includes:
[0201] The second determining unit is used to determine the historical frame rate within a plurality of second intervals before the set adjustment time when the current time is determined to be the set adjustment time.
[0202] The first adjustment module 42 includes:
[0203] The second determining unit is used to determine the historical representation frame rate corresponding to the historical frame rate within each second interval.
[0204] An adjustment unit is used to adjust the reference frame rate of the target application based on the historical characterization frame rate.
[0205] In one embodiment, the second determining unit is configured to determine the historical representation frame rate corresponding to the historical frame rate within each second interval using one of the following methods:
[0206] Determine the average of the historical frame rates within each second interval;
[0207] Determine the average value of the historical frame rates that have the largest proportion in the distribution of historical frame rates within each second interval.
[0208] In one embodiment, the adjustment unit is further configured to adjust the reference frame rate of the target application based on the historical characterization frame rate using the following method:
[0209] When each of the historical frame rates is less than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is reduced by a first set step size.
[0210] and / or;
[0211] When each of the historical frame rates is greater than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is increased by a first set step size.
[0212] The first set step size is positively correlated with the set value.
[0213] In one embodiment, the first set step size is the product of a series and a fixed step size, wherein the series is positively correlated with the set value.
[0214] In one embodiment, the apparatus further includes:
[0215] The second determining module is used to determine an initial value of the reference frame rate of the target application based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal.
[0216] In one embodiment, the second determining module is further configured to determine an initial value of a reference frame rate for the target application using the following method based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal:
[0217] The product of the target application's expected frame rate, the target application's refresh processing capability, and a first ratio is determined as the initial value of the target application's reference frame rate.
[0218] The refresh processing capability of the target application is the normalized value corresponding to the maximum frame rate that the target application can achieve under the set test environment and the set clock frequency.
[0219] The first ratio is the ratio of the limited frequency of the mobile terminal to the ideal frequency of the mobile terminal.
[0220] This disclosure provides a frame rate processing apparatus for a mobile terminal, the apparatus comprising: Figure 4 The apparatus shown, and:
[0221] The first adjustment module 42 is further configured to adjust the reference frame rate of the target application based on the historical characterization frame rate using the following method:
[0222] When the reference frame rate of the target application is greater than the set frame rate and the difference between the reference frame rate and the set frame rate is less than a first value, and when the absolute value of the difference between the historical characterization frame rate and the reference frame rate of the target application is less than a second value, the reference frame rate of the target application is increased.
[0223] This disclosure provides a frame rate processing apparatus for a mobile terminal, the apparatus comprising: Figure 4 The apparatus shown, and:
[0224] The device further includes:
[0225] The second adjustment module is used to reduce the reference frame rate of the target application when the mobile terminal does not receive a control signal for the target application during the second historical time period.
[0226] In one embodiment, the apparatus further includes:
[0227] The third adjustment module, after lowering the reference frame rate of the target application, raises the reference frame rate of the target application upon receiving a control signal for the target application.
[0228] This disclosure provides a frame rate processing apparatus for use in a terminal, comprising:
[0229] processor;
[0230] Memory used to store processor-executable instructions;
[0231] The processor is configured to execute executable instructions in the memory to implement the frame rate processing method.
[0232] This disclosure provides a non-transitory computer-readable storage medium storing executable instructions that, when executed by a processor, implement the steps of the frame rate processing method.
[0233] Figure 5 This is a block diagram illustrating a frame rate processing apparatus 500 according to an exemplary embodiment. For example, apparatus 500 may be a mobile phone, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, etc.
[0234] Reference Figure 5 The device 500 may include one or more of the following components: a processing component 502, a memory 504, a power supply component 506, a multimedia component 508, an audio component 510, an input / output (I / O) interface 512, a sensor component 514, and a communication component 516.
[0235] Processing component 502 typically controls the overall operation of device 500, such as operations associated with display, telephone calls, data communication, camera operation, and recording. Processing component 502 may include one or more processors 520 to execute instructions to complete all or part of the steps of the methods described above. Furthermore, processing component 502 may include one or more modules to facilitate interaction between processing component 502 and other components. For example, processing component 502 may include a multimedia module to facilitate interaction between multimedia component 508 and processing component 502.
[0236] Memory 504 is configured to store various types of data to support the operation of device 500. Examples of this data include instructions for any application or method operating on device 500, contact data, phonebook data, messages, pictures, videos, etc. Memory 504 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.
[0237] Power supply component 506 provides power to various components of device 500. Power supply component 506 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to device 500.
[0238] Multimedia component 508 includes a screen that provides an output interface between the device 500 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 508 includes a front-facing camera and / or a rear-facing camera. When the device 500 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.
[0239] Audio component 510 is configured to output and / or input audio signals. For example, audio component 510 includes a microphone (MIC) configured to receive external audio signals when device 500 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 504 or transmitted via communication component 516. In some embodiments, audio component 510 also includes a speaker for outputting audio signals.
[0240] I / O interface 512 provides an interface between processing component 502 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.
[0241] Sensor assembly 514 includes one or more sensors for providing status assessments of various aspects of device 500. For example, sensor assembly 514 may detect the on / off state of device 500, the relative positioning of components such as the display and keypad of device 500, changes in the position of device 500 or a component of device 500, the presence or absence of user contact with device 500, the orientation or acceleration / deceleration of device 500, and temperature changes of device 500. Sensor assembly 514 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 514 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 514 may also include an accelerometer, a gyroscope, a magnetometer, a pressure sensor, or a temperature sensor.
[0242] Communication component 516 is configured to facilitate wired or wireless communication between device 500 and other devices. Device 500 can access wireless networks based on communication standards, such as WiFi, 2G, or 3G, or combinations thereof. In one exemplary embodiment, communication component 516 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 516 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0243] In an exemplary embodiment, the apparatus 500 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.
[0244] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 504 including instructions, which can be executed by a processor 520 of the device 500 to perform the above-described method. For example, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.
[0245] Other embodiments of the embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of this disclosure. This application is intended to cover any variations, uses, or adaptations of the embodiments of this disclosure that follow the general principles of the embodiments of this disclosure and include common knowledge or customary techniques in the art not disclosed in the embodiments. The specification and embodiments are to be considered exemplary only, and the true scope and spirit of the embodiments of this disclosure are indicated by the following claims.
[0246] It should be understood that the embodiments in this disclosure are not limited to the precise structures described above and shown in the accompanying drawings, and various combinations, substitutions, modifications, and changes can be made to the method steps or terminal components disclosed in this application without departing from its scope. All such combinations, substitutions, modifications, and changes are considered to be included within the scope of this disclosure. The scope of protection claimed in this disclosure is limited by the appended claims.
[0247] It should be noted that, in this disclosure, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
Claims
1. A frame rate processing method, applied to a mobile terminal, characterized in that, include: During the operation of the target application, multiple historical frame rates of the target application within a first historical time period are determined, and the reference frame rate of the target application is adjusted according to the multiple historical frame rates. The step of determining the target application's multiple historical frame rates within the first historical time period includes: When the current time is determined to be the adjustment time corresponding to the first interval, the historical frame rates within multiple second intervals prior to the adjustment time are determined; Adjusting the reference frame rate of the target application based on the plurality of historical frame rates includes: Determine the historical representation frame rate corresponding to the historical frame rate within each second interval, and adjust the reference frame rate of the target application according to the historical representation frame rate, wherein the reference frame rate is adjusted once for each interval corresponding to the duration of the first interval.
2. The method as described in claim 1, characterized in that, Determining the target application's multiple historical frame rates within a first historical time period includes: When the current time is determined to be the set adjustment time, the historical frame rates within multiple second intervals prior to the set adjustment time are determined; Adjusting the reference frame rate of the target application based on the plurality of historical frame rates includes: Determine the historical representation frame rate corresponding to the historical frame rate within each second interval, and adjust the reference frame rate of the target application based on the historical representation frame rate.
3. The method as described in claim 1 or 2, characterized in that, Determining the historical representation frame rate corresponding to the historical frame rate within each second interval includes one of the following: Determine the average of the historical frame rates within each second interval; Determine the average value of the historical frame rates that have the largest proportion in the distribution of historical frame rates within each second interval.
4. The method as described in claim 1 or 2, characterized in that, Adjusting the reference frame rate of the target application based on the historical characterization frame rate includes: When each of the historical frame rates is less than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is reduced by a first set step size. and / or; When each of the historical frame rates is greater than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is increased by a first set step size. The first set step size is positively correlated with the set value.
5. The method as described in claim 4, characterized in that, The first set step size is the product of a series and a fixed step size, and the series is positively correlated with the set value.
6. The method as described in claim 1 or 2, characterized in that, The method further includes: The initial value of the reference frame rate of the target application is determined based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal.
7. The method as described in claim 6, characterized in that, The step of determining the initial value of the reference frame rate of the target application based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal includes: The product of the target application's expected frame rate, the target application's refresh processing capability, and a first ratio is determined as the initial value of the target application's reference frame rate. The refresh processing capability of the target application is the normalized value corresponding to the maximum frame rate that the target application can achieve under the set test environment and the set clock frequency. The first ratio is the ratio of the limited frequency of the mobile terminal to the ideal frequency of the mobile terminal.
8. The method as described in claim 1 or 2, characterized in that, Adjusting the reference frame rate of the target application based on the historical characterization frame rate includes: When the reference frame rate of the target application is greater than the set frame rate and the difference between the reference frame rate and the set frame rate is less than a first value, and when the absolute value of the difference between the historical characterization frame rate and the reference frame rate of the target application is less than a second value, the reference frame rate of the target application is increased.
9. The method as described in claim 1, characterized in that, The method further includes: When it is determined that the mobile terminal has not received any control signal for the target application during the second historical period, the reference frame rate of the target application is reduced.
10. The method as described in claim 9, characterized in that, After lowering the reference frame rate of the target application, when a control signal for the target application is received, the reference frame rate of the target application is increased.
11. A frame rate processing device, applied to a mobile terminal, characterized in that, include: The first determining module is used to determine multiple historical frame rates of the target application within a first historical time period during the operation of the target application. The first adjustment module is used to adjust the reference frame rate of the target application based on the multiple historical frame rates; The first determining module includes: The first determining unit is configured to determine the historical frame rate within a plurality of second intervals prior to the adjustment time when the current time is determined to be the adjustment time corresponding to the first interval; The first adjustment module includes: The second determining unit is used to determine the historical representation frame rate corresponding to the historical frame rate within each second interval. An adjustment unit is configured to adjust the reference frame rate of the target application based on the historical characterization frame rate, wherein the reference frame rate is adjusted once every interval corresponding to the duration of the first interval.
12. The apparatus as claimed in claim 11, characterized in that, The first determining module includes: The second determining unit is configured to determine the historical frame rate within a plurality of second intervals prior to the set adjustment time when the current time is determined to be the set adjustment time; The first adjustment module includes: The second determining unit is used to determine the historical representation frame rate corresponding to the historical frame rate within each second interval. An adjustment unit is used to adjust the reference frame rate of the target application based on the historical characterization frame rate.
13. The apparatus as claimed in claim 11 or 12, characterized in that, The second determining unit is configured to determine the historical representation frame rate corresponding to the historical frame rate within each second interval using one of the following methods: Determine the average of the historical frame rates within each second interval; Determine the average value of the historical frame rates that have the largest proportion in the distribution of historical frame rates within each second interval.
14. The apparatus as claimed in claim 11 or 12, characterized in that, The adjustment unit is further configured to adjust the reference frame rate of the target application based on the historical characterization frame rate using the following method: When each of the historical frame rates is less than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is reduced by a first set step size. and / or; When each of the historical frame rates is greater than the reference frame rate of the target application, and the absolute value of the difference between each of the historical frame rates and the reference frame rate of the target application is greater than a set value, the reference frame rate of the target application is increased by a first set step size. The first set step size is positively correlated with the set value.
15. The apparatus as claimed in claim 14, characterized in that, The first set step size is the product of a series and a fixed step size, and the series is positively correlated with the set value.
16. The apparatus as claimed in claim 11 or 12, characterized in that, The device further includes: The second determining module is used to determine an initial value of the reference frame rate of the target application based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal.
17. The apparatus as claimed in claim 16, characterized in that, The second determining module is further configured to determine an initial value of the reference frame rate of the target application using the following method based on the expected frame rate of the target application, the refresh processing capability of the target application, and the clock frequency of the mobile terminal: The product of the target application's expected frame rate, the target application's refresh processing capability, and a first ratio is determined as the initial value of the target application's reference frame rate. The refresh processing capability of the target application is the normalized value corresponding to the maximum frame rate that the target application can achieve under the set test environment and the set clock frequency. The first ratio is the ratio of the limited frequency of the mobile terminal to the ideal frequency of the mobile terminal.
18. The apparatus as claimed in claim 11 or 12, characterized in that, The first adjustment module is further configured to adjust the reference frame rate of the target application based on the historical characterization frame rate using the following method: When the reference frame rate of the target application is greater than the set frame rate and the difference between the reference frame rate and the set frame rate is less than a first value, and when the absolute value of the difference between the historical characterization frame rate and the reference frame rate of the target application is less than a second value, the reference frame rate of the target application is increased.
19. The apparatus as claimed in claim 11, characterized in that, The device further includes: The second adjustment module is used to reduce the reference frame rate of the target application when the mobile terminal does not receive a control signal for the target application during the second historical time period.
20. The apparatus as claimed in claim 19, characterized in that, The device further includes: The third adjustment module, after lowering the reference frame rate of the target application, raises the reference frame rate of the target application upon receiving a control signal for the target application.
21. A frame rate processing device, applied to a terminal, characterized in that, include: processor; Memory used to store processor-executable instructions; The processor is configured to execute executable instructions in the memory to implement the steps of the frame rate processing method according to any one of claims 1 to 10.
22. A non-transitory computer-readable storage medium having executable instructions stored thereon, characterized in that, When executed by a processor, the executable instructions implement the steps of the frame rate processing method according to any one of claims 1 to 10.
Citation Information
Patent Citations
Frame rate adjustment method and device, terminal equipment and storage medium
CN108693948A
Frame rate control method, device thereof, storage medium and terminal
CN109157839A
Processor frequency adjusting method and device, storage medium and electronic equipment
CN112114975A