WO2022095673A1 - 帧率调整方法、装置、设备、计算机可读存储介质及计算机程序产品 - Google Patents

帧率调整方法、装置、设备、计算机可读存储介质及计算机程序产品 Download PDF

Info

Publication number
WO2022095673A1
WO2022095673A1 PCT/CN2021/123826 CN2021123826W WO2022095673A1 WO 2022095673 A1 WO2022095673 A1 WO 2022095673A1 CN 2021123826 W CN2021123826 W CN 2021123826W WO 2022095673 A1 WO2022095673 A1 WO 2022095673A1
Authority
WO
WIPO (PCT)
Prior art keywords
frame rate
client
terminal device
running
target
Prior art date
Application number
PCT/CN2021/123826
Other languages
English (en)
French (fr)
Inventor
徐士立
洪楷
吴海洋
张其田
刘专
陈晶晶
Original Assignee
腾讯科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Priority to EP21888370.0A priority Critical patent/EP4239454A4/en
Publication of WO2022095673A1 publication Critical patent/WO2022095673A1/zh
Priority to US17/954,842 priority patent/US11922906B2/en

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/005Adapting incoming signals to the display format of the display terminal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3265Power saving in display device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1407General aspects irrespective of display type, e.g. determination of decimal point position, display with fixed or driving decimal point, suppression of non-significant zeros
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/02Details of power systems and of start or stop of display operation
    • G09G2330/021Power management, e.g. power saving
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/04Display protection
    • G09G2330/045Protection against panel overheating
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • G09G2340/0435Change or adaptation of the frame rate of the video stream
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present application relates to the technical field of image processing, and relates to, but is not limited to, a frame rate adjustment method, apparatus, device, computer-readable storage medium, and computer program product.
  • the frame rate supported by smart terminals is getting higher and higher, and 120 frames or even 144 frames is more and more common.
  • the high frame rate brings users a smooth screen display and a faster touch response experience, but it also brings higher power consumption and heat.
  • smart terminals cannot maintain a high frame rate for a long time. After running for a period of time, the high temperature protection mechanism will be activated due to excessive temperature, thereby reducing performance and making it impossible to support high frame rate.
  • An embodiment of the present application provides a frame rate adjustment method, which is executed by a terminal device, including:
  • the client performs image output according to the target running frame rate, and triggers the operating system of the terminal device to adjust the refresh rate of the screen according to the target running frame rate.
  • An embodiment of the present application provides a frame rate adjustment device, including:
  • a first obtaining module configured to obtain running data of the client when the client runs in the foreground when the client in the terminal device supports dynamic frame rate switching
  • a first determination module configured to determine an operation scenario of the client based on the operation data
  • a second determining module configured to determine the target running frame rate of the client based on the running scene
  • the first output module is configured to control the client to output images according to the target running frame rate, and trigger the operating system of the terminal device to adjust the refresh rate of the screen according to the target running frame rate.
  • An embodiment of the present application provides a terminal device for frame rate adjustment, including:
  • the processor is configured to implement the above frame rate adjustment method when executing the executable instructions stored in the memory.
  • An embodiment of the present application provides a computer-readable storage medium storing executable instructions for causing a processor to implement the above frame rate adjustment method when executed.
  • An embodiment of the present application provides a computer program product, including a computer program or an instruction, when the computer program or instruction is executed by a processor, the above-mentioned frame rate adjustment method is implemented.
  • the client in the terminal device supports dynamic frame rate switching
  • the running data of the client when it is running in the foreground is obtained, and then the client determines the running scene based on the running data.
  • Different running scenes can correspond to different target running frame rates. Therefore, after the running scene is determined, the target running frame rate of the client is determined based on the running scene, and then the client performs image output according to the target running frame rate to dynamically adjust the running frame rate of the client, so as to realize the client Real-time dynamic adjustment of the running frame rate based on the running scene, and the dynamic adjustment is also used to trigger the operating system of the terminal device to adjust the refresh rate of the screen, which can effectively reduce power consumption while ensuring user experience.
  • FIG. 1 is a schematic diagram of a network architecture of a frame rate adjustment system 10 according to an embodiment of the present application
  • FIG. 2 is a schematic structural diagram of a terminal device 300 provided by an embodiment of the present application.
  • FIG. 3 is a schematic flowchart of a frame rate adjustment method provided by an embodiment of the present application.
  • FIG. 4 is a schematic flowchart of a frame rate adjustment method provided by an embodiment of the present application.
  • FIG. 5 is a schematic flowchart of a frame rate adjustment method provided by an embodiment of the present application.
  • FIG. 6 is a schematic flowchart of an implementation of scene division provided by an embodiment of the present application.
  • FIG. 7 is a schematic diagram of an interaction flow between a terminal device and a game client according to an embodiment of the present application.
  • Terminal equipment refers to a type of equipment that has rich human-computer interaction methods, has the ability to access the Internet, is usually equipped with various operating systems, and has strong processing capabilities. Terminal equipment can be divided into mobile terminal equipment and inconvenient mobile terminal equipment, wherein mobile terminal equipment includes smart phones, tablet computers, vehicle terminals, handheld game consoles, etc., and inconvenient mobile terminal equipment includes desktop computers, desktop computers, etc.
  • Frame rate, frame rate number of frames (Frames)/time (Time), the unit is frame per second (F/S, Frame Per Second, FPS), that is, when the frame rate of an animation is When it is constant at 60 frames per second, then it has 60 frames per second.
  • F/S Frame Per Second
  • Running frame rate the number of pictures the client can output per second during running.
  • Refresh rate refers to the number of times the screen can be refreshed per second, in Hertz (Hz).
  • Hz Hertz
  • a 144Hz high refresh rate display means that the upper limit of the display's physical refresh rate is 144 pictures displayed in 1 second.
  • Client various applications running in the terminal device. Classification according to usage scenarios can include game clients and player clients. According to the classification of the operating platform, it may include a mobile application (APP) on a mobile terminal device and a client on a computer device.
  • APP mobile application
  • the terminal device gives priority to ensuring a high frame rate, and is forced to reduce the frame rate when an abnormally high temperature occurs and cannot provide sufficient performance support.
  • the user can obviously feel that the temperature of the terminal device is too high, and at the same time can obviously feel the reduction of the frame rate, which has a significant impact on the application experience.
  • an embodiment of the present application provides a frame rate adjustment method.
  • a game APP as an example, by identifying the game scene, for the scene where the user has an operation, it dynamically supports a high running frame rate, so as to provide the user with the best display and touch control.
  • the frame rate is dynamically reduced in real time, thereby reducing the power consumption and heat generation of the terminal device.
  • accurate scene recognition it ensures that scenes with low running frame rates have no significant impact on the user's game interaction and experience, and at the same time achieves a significant reduction in overall power consumption and terminal device operating temperature.
  • the terminal device for frame rate adjustment provided by the embodiment of the present application may be implemented as a notebook computer, a tablet computer, a desktop computer, a mobile device ( For example, mobile phones, portable music players, personal digital assistants, dedicated message devices, portable game devices), intelligent robots and other user terminals with screen display function.
  • FIG. 1 is a schematic diagram of a network architecture of a frame rate adjustment system 10 provided by an embodiment of the present application.
  • the frame rate adjustment system 10 includes a server 100 , a network 200 and a terminal device 300 .
  • the terminal device 300 is connected to the server 100 through the network 200, and the network 200 may be a wide area network or a local area network, or a combination of the two.
  • various clients are installed on the terminal device 300 , for example, a game client, a shopping client, a video playing client, and the like.
  • the terminal device 300 displays the content displayed by the currently running client on the current display interface.
  • the terminal device 300 runs the game client as For example, the game client obtains the game running data from the server 100 through the network 200, determines the current scene in real time based on the game running data, and then adjusts the running frame rate of the game client based on the determined scene.
  • the client notifies the operating system of the terminal device 300 to trigger the operating system of the terminal device 300 to adjust the refresh rate of the screen, which can not only realize the real-time adjustment of the frame rate based on the scene, but also effectively reduce the power consumption of the terminal device, thereby ensuring that the terminal device performance.
  • FIG. 2 is a schematic structural diagram of a terminal device 300 provided by an embodiment of the present application.
  • the terminal device 300 shown in FIG. The various components in terminal device 300 are coupled together by bus system 340 .
  • bus system 340 is used to implement the connection communication between these components.
  • the bus system 340 also includes a power bus, a control bus and a status signal bus.
  • the various buses are labeled as bus system 340 in FIG. 2 .
  • the processor 310 may be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP, Digital Signal Processor), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., where a general-purpose processor may be a microprocessor or any conventional processor or the like.
  • DSP Digital Signal Processor
  • User interface 330 includes one or more output devices 331 that enable presentation of media content, including one or more speakers and/or one or more visual display screens.
  • User interface 330 also includes one or more input devices 332, including user interface components that facilitate user input, such as a keyboard, mouse, microphone, touch screen display, camera, and other input buttons and controls.
  • Memory 350 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid state memory, hard drives, optical drives, and the like. Memory 350 optionally includes one or more storage devices that are physically remote from processor 310 . Memory 350 includes volatile memory or non-volatile memory, and may also include both volatile and non-volatile memory. The non-volatile memory may be a read-only memory (ROM, Read Only Memory), and the volatile memory may be a random access memory (RAM, Random Access Memory). The memory 350 described in the embodiments of the present application is intended to include any suitable type of memory. In some embodiments, memory 350 is capable of storing data to support various operations, examples of which include programs, modules, and data structures, or subsets or supersets thereof, as exemplified below.
  • the operating system 351 includes system programs for processing various basic system services and performing hardware-related tasks, such as a framework layer, a core library layer, a driver layer, etc., for implementing various basic services and processing hardware-based tasks;
  • An input processing module 353 for detecting one or more user inputs or interactions from one of the one or more input devices 332 and translating the detected inputs or interactions.
  • FIG. 2 shows a frame rate adjustment apparatus 354 stored in the memory 350 , and the frame rate adjustment apparatus 354 may be in the terminal device 300
  • the frame rate adjustment device which can be software in the form of programs and plug-ins, includes the following software modules: a first acquisition module 3541, a first determination module 3542, a second determination module 3543 and a first output module 3544, these modules are logical Therefore, any combination or further split can be carried out according to the realized functions. The function of each module will be explained below.
  • the apparatus provided by the embodiments of the present application may be implemented in hardware.
  • the apparatus provided by the embodiments of the present application may be a processor in the form of a hardware decoding processor, which is programmed to execute the present application
  • the frame rate adjustment method provided by the embodiment for example, a processor in the form of a hardware decoding processor may adopt one or more application specific integrated circuits (ASIC, Application Specific Integrated Circuit), DSP, Programmable Logic Device (PLD, Programmable Logic) Device), Complex Programmable Logic Device (CPLD, Complex Programmable Logic Device), Field Programmable Gate Array (FPGA, Field-Programmable Gate Array) or other electronic components.
  • ASIC Application Specific Integrated Circuit
  • DSP Programmable Logic Device
  • PLD Programmable Logic Device
  • CPLD Complex Programmable Logic Device
  • FPGA Field-Programmable Gate Array
  • FIG. 3 is a schematic flowchart of a frame rate adjustment method provided by an embodiment of the present application, which will be described with reference to the steps shown in FIG. 3 .
  • Step S101 when the client in the terminal device supports dynamic frame rate switching, obtain the running data of the client running in the foreground.
  • the client may be a game client, an instant messaging client, a video playing client, a shopping client, a browser, or the like.
  • the client when the client supports dynamic frame rate switching, the client obtains running data when it runs in the foreground, wherein the running data may include screen information of the presented screen and user operation data, for example
  • the picture information may be the image data of the image rendered and output by the client during the running process, for example, it may include the pixel value of each pixel of the rendered output image;
  • the user operation data may include the time when the user triggers each operation Point information, the location of the user's operation, and the pressure value of the user's operation.
  • Step S102 determining an operation scenario of the client based on the operation data.
  • the running scenario may at least include a high frame rate running scenario (a scenario where the running frame rate is higher than a frame rate threshold), a low frame rate running scenario (a scenario where the running frame rate is lower than the frame rate threshold), and in some embodiments, It is also possible to include medium frame rate running scenes.
  • the embodiment of the present application does not specifically limit the division method of the running scene, and only needs to satisfy the running frame rate corresponding to the high frame rate running scene, the medium frame rate running scene and the low frame rate running scene respectively obtained after the division.
  • the value can be decreased in turn.
  • the operation data may be analyzed to determine the picture motion situation, the user operation frequency, or whether it is a specific high frame rate scene, thereby determining the operation scene of the client. For example, when at least one of the following conditions is met, the running scene is determined to be a high frame rate scene: there is screen motion, the user's operation frequency exceeds a certain number of thresholds, and it is determined to be a specific high frame rate scene; otherwise, when there is no screen motion, And when the user operation frequency does not exceed a certain number of times threshold and is not a specific high frame rate scene, it is determined that the running scene is a low frame rate scene.
  • Step S103 determining the target running frame rate of the client based on the running scene.
  • step S103 different running frame rates may be allocated for different running scenarios in advance based on the highest refresh rate supported by the terminal device. For example, when the highest refresh rate supported by the terminal device is 90 Hz, the running scenario includes high frame rate running. scene and low frame rate running scene, then the value of the running frame rate corresponding to the high frame rate running scene can be the same as the value of the highest refresh rate, that is, 90FPS, and the running frame rate corresponding to the low frame rate running scene can be 30FPS .
  • the target running frame rate of the client can be determined according to the determined running scenarios. For example, when the determined running scenario is a high frame rate running scenario, Then the target running frame rate of the client is 90FPS; when the determined running scene is a low frame rate running scene, then the target running frame rate of the client is 30FPS. In this way, the frame rate of the client can be dynamically adjusted according to the running data. It can effectively reduce power consumption while ensuring user experience.
  • step S104 the client performs image output according to the target running frame rate, and triggers the operating system of the terminal device to adjust the refresh rate of the screen according to the target running frame rate.
  • the refresh rate is displayed. For example, if the original screen refresh rate is 40Hz and the target running frame rate sent by the client is 90FPS, the operating system will adjust the screen refresh rate to 90Hz and refresh the display at 90Hz, that is to say , after the client adjusts the running frame rate according to the running scenario, it can also trigger the operating system of the terminal device to adjust the refresh rate of the screen.
  • the dynamic adjustment of the frame rate by the client to trigger the dynamic adjustment of the refresh rate of the screen by the terminal device can be done in two ways.
  • One is passive adjustment of the terminal device, that is, the client instructs the terminal device to run according to the target.
  • the frame rate is adjusted for the refresh rate;
  • the second is the active adjustment of the terminal device, that is, the operating system of the terminal device actively monitors the frame rate change of the client, and actively adjusts the refresh rate when monitoring the frame rate change of the client.
  • the terminal device when the terminal device dynamically adjusts the refresh rate of the screen, it may adjust the value of the refresh rate of the screen to the value of the target operating frame rate under the condition that the running state of the terminal device allows.
  • the value is the same, or it can be adjusted to the refresh rate of the screen to a certain extent (that is, the value of the refresh rate is adjusted to the value of the target running frame rate, such as 70%) when the running state of the terminal device does not allow it.
  • Adjustment for example, assuming that the current refresh rate of the screen is 30Hz, and the target running frame rate is 90FPS, if the current temperature of the terminal device is slightly higher (for example, the current temperature of the terminal device is higher than the set temperature threshold), the screen cannot be adjusted.
  • the refresh rate is increased to 90Hz (because if the screen refresh rate is increased to 90Hz, it will easily cause the terminal device to overheat), at this time, the refresh rate can be increased to a value lower than the target running frame rate, such as 60Hz.
  • the client in the terminal device supports dynamic frame rate switching
  • the running data of the client when the client is running in the foreground is obtained, and then the client determines the running scene based on the running data
  • Different running scenarios can correspond to different target running frame rates. Therefore, after determining the running scenario, the target running frame rate of the client is determined based on the running scenario, and then the client outputs images according to the target running frame rate to
  • the running frame rate of the client is dynamically adjusted, so as to realize the real-time dynamic adjustment of the running frame rate by the client based on the running scene, and the dynamic adjustment is also used to trigger the terminal device to adjust the refresh rate of the screen, which can ensure the user experience while ensuring the user experience. Can effectively reduce power consumption.
  • the terminal device may be triggered to also dynamically adjust the refresh rate accordingly, and the terminal device may be dynamically adjusted based on the client Active adjustment or passive adjustment is performed, wherein, if the terminal device passively adjusts the refresh rate dynamically, after step S104, as shown in FIG. 4, the following steps can also be performed:
  • Step S105A the client sends the target running frame rate to the operating system of the terminal device.
  • step S105A when the client is started, it can request to establish a communication connection with the operating system of the terminal device, and after the communication connection is successfully established, the operating system of the terminal device and the client can communicate with each other. interaction with data.
  • Step S106A after receiving the target running frame rate, the operating system of the terminal device acquires the state parameters of the terminal device.
  • the state parameters of the terminal device may include at least one of the following: CPU temperature, CPU usage, and remaining power of the terminal device.
  • Step S107A the operating system of the terminal device determines whether the terminal device satisfies the execution condition of the target running frame rate based on the state parameter.
  • the set temperature threshold, usage rate threshold and power threshold may be obtained first, wherein the execution conditions of the target running frame rate include at least one of the following: the CPU temperature is lower than the temperature threshold; the CPU usage rate is lower than the usage rate The remaining power is greater than the power threshold, when it is determined that the terminal device meets the execution condition of the target running frame rate, go to step S108A; when it is determined that the terminal device does not meet the execution condition of the target running frame rate, go to step S111A.
  • different running frame rates correspond to different execution conditions
  • the execution conditions corresponding to a high running frame rate may be that the CPU temperature is lower than 40° and the CPU usage rate is lower than 40%
  • the execution condition corresponding to a medium running frame rate (for example, 90FPS) can be that the CPU temperature is lower than 55°, and there is no execution condition for a low frame rate, that is, if the execution condition corresponding to the high frame rate is not satisfied, nor the execution condition corresponding to the medium frame rate is satisfied. , perform a low frame rate.
  • the obtained state parameters are: CPU temperature is 50°, CPU usage is 45%, and the execution condition of the target running frame rate is that CPU temperature is lower than 40° and CPU usage is lower than 40%. Since neither the CPU temperature nor the CPU usage rate meet the requirements for the CPU temperature and CPU usage rate in the execution conditions, it is determined that the terminal device does not meet the execution condition of the target running frame rate, and the process proceeds to step S111A.
  • Step S108A the operating system of the terminal device determines whether the target running frame rate is less than or equal to a preset refresh rate threshold.
  • determining whether the target running frame rate is less than or equal to the preset refresh rate threshold by the operating system of the terminal device refers to judging whether the value of the target running frame rate is less than or equal to the preset refresh rate threshold, and the refresh rate
  • the threshold may be set by the user according to their own needs, and the refresh rate threshold may be smaller than the highest refresh rate supported by the terminal device, or may be equal to the highest refresh rate supported by the terminal device.
  • Step S109A the operating system control screen of the terminal device is refreshed and displayed according to the target running frame rate.
  • the operating system of the terminal device controls the screen to refresh and display according to the target running frame rate means that the operating system first adjusts the value of the refresh rate to be the same as the value of the target running frame rate, and then controls the screen in real time according to the adjusted refresh rate. Refresh the display to improve the user experience.
  • Step S110A the operating system of the terminal device determines the refresh rate threshold as the target refresh rate, and controls the screen to refresh and display according to the target refresh rate.
  • the screen is controlled according to the refresh rate threshold at this time.
  • Perform refresh display that is, the terminal device increases the refresh rate to the maximum value that can be adjusted to ensure user experience.
  • step S113A and subsequent steps may also be performed.
  • Step S111A the operating system of the terminal device determines the target refresh rate of the screen based on the state parameter.
  • the terminal device when it does not meet the execution condition of the target running frame rate, it can determine the highest running frame rate corresponding to at least one execution condition that can be satisfied by the state parameter based on the state parameter, and take the highest running frame rate as the The value is determined as the value of the target refresh rate of the screen.
  • the obtained state parameter is the CPU temperature of 50° and the CPU usage rate is 45%.
  • the state parameter satisfies the execution condition of 90FPS and the execution condition of 30FPS, then the higher of 30FPS and 90FPS is used.
  • the higher one, that is, the value of the target refresh rate is determined according to 90FPS, that is, the frequency of determining the target refresh rate is 90Hz.
  • Step S112A the operating system of the terminal device controls the screen to be refreshed and displayed according to the target refresh rate.
  • step S113A the operating system of the terminal device sends the state parameters and the target refresh rate to the client.
  • the operating system of the terminal device sends the status parameter and the target refresh rate to the client based on the previously established communication connection.
  • Step S114A the client determines whether the terminal device satisfies the execution condition of the target running frame rate based on the state parameter.
  • the client can determine whether the terminal device satisfies the execution condition of the target running frame rate based on the state parameter, so as to determine whether the terminal device does not adjust the value of the refresh rate to the target running frame rate because the terminal device cannot support the target running frame rate If it is determined that the terminal device does not meet the execution conditions of the target frame rate, that is, the terminal device cannot support the target running frame rate and therefore does not adjust the refresh rate, then it is determined that the running frame rate needs to be adjusted in reverse at this time, and enter the step S115A; if it is determined that the terminal device satisfies the execution conditions of the target running frame rate, that is, it is not because the target running frame rate cannot be supported, but the refresh rate is not adjusted for other reasons, then it is determined that the running frame rate does not need to be adjusted at this time, Proceed to step S116A.
  • Step S115A the client performs image output according to the target refresh rate.
  • the client performs image output according to the target refresh rate means that the client adjusts the value of the running frame rate to be the same as the value of the target refresh rate, and outputs the image according to the adjusted running frame rate.
  • Step S116A the client performs image output according to the target running frame rate.
  • the client dynamically adjusts the running frame rate of the client to the target running frame rate, and communicates with the terminal device to dynamically adjust the running frame rate of the client to the target running frame rate.
  • the communication connection established by the operating system of the terminal device sends the target running frame rate to the operating system of the terminal device to instruct the operating system of the terminal device to adjust the refresh rate of the screen based on the target running frame rate.
  • the frame rate determine whether the screen of the terminal device can support the target running frame rate based on its own state parameters.
  • the refresh rate of the screen can be adjusted to the same value.
  • the value of the target running frame rate is the same. If the value of the screen refresh rate is adjusted to be the same as the target running frame rate, the power consumption of the terminal device can be effectively reduced. Increase the value of , and adjust it to the same value as the target running frame rate, which can improve the display effect and thus improve the user experience.
  • step S104 if the terminal device actively adjusts the refresh rate dynamically, after step S104, as shown in FIG. 5, the following steps may also be performed:
  • Step S105B the operating system of the terminal device acquires the target running frame rate of the client.
  • the operating system of the terminal device obtains the target running frame rate of the client by sending a frame rate acquisition request to the client.
  • the operating system of the terminal device may send a frame rate acquisition request to the client every preset duration (for example, Send a frame rate get request to the client every 1 minute) to get the client's target running frame rate.
  • Step S106B the operating system of the terminal device determines whether the target running frame rate is the same as the current refresh rate of the screen.
  • determining whether the target running frame rate is the same as the current refresh rate of the screen by the operating system of the terminal device refers to determining whether the value of the target running frame rate is the same as the value of the current refresh rate, when determining the value of the target running frame rate When it is the same as the value of the current refresh rate of the screen, it means that the refresh rate does not need to be adjusted, and at this time, return to step S105B again; when it is determined that the value of the target running frame rate is different from the value of the current refresh rate of the screen , indicating that the refresh rate of the screen needs to be adjusted, and at this time, step S107B is entered.
  • Step S107B the operating system of the terminal device acquires the state parameters of the terminal device.
  • the state parameters of the terminal device obtained by the operating system may include, but are not limited to, CPU temperature, CPU usage, and the like.
  • Step S108B the operating system of the terminal device determines whether the terminal device satisfies the execution condition of the target running frame rate based on the state parameter.
  • the set temperature threshold and/or usage threshold may be obtained first, wherein the execution condition of the target running frame rate includes at least one of the following: the CPU temperature is less than the temperature Threshold; CPU usage is less than the usage threshold, when it is determined that the terminal device satisfies the execution condition of the target running frame rate, go to step S109B; when it is determined that the terminal device does not meet the execution condition of the target running frame rate, go to step S110B.
  • Step S109B the operating system control screen of the terminal device is refreshed and displayed according to the target running frame rate.
  • the operating system of the terminal device controls the screen to be refreshed and displayed according to the target running frame rate means that the operating system first adjusts the value of the refresh rate of the screen to be the same as the value of the target running frame rate, and then adjusts the refresh rate based on the adjusted refresh rate. Refresh the display.
  • Step S110B the operating system of the terminal device determines the target refresh rate of the screen based on the state parameter.
  • the terminal device when it does not meet the execution condition of the target running frame rate, it can determine the highest running frame rate corresponding to at least one execution condition that can be satisfied by the state parameter based on the state parameter, and take the highest running frame rate as the The value is determined as the value of the target refresh rate of the screen.
  • Step S111B the operating system of the terminal device controls the screen to be refreshed and displayed according to the target refresh rate.
  • the client dynamically adjusts the running frame rate of the client to the target running frame rate, so as to realize the running frame rate of the client.
  • the client will not instruct the operating system of the terminal device to adjust the refresh rate of the screen, so the operating system of the terminal device can actively monitor whether the running frame rate of the client has changed.
  • the operating system of the terminal device determines the target running frame rate of the client, and determines whether the target running frame rate can be supported based on its own state parameters.
  • the screen can be The refresh rate of the screen is adjusted to the target running frame rate, so as to realize the active adjustment of the screen refresh rate, and if the value of the screen refresh rate is adjusted to be the same as the target running frame rate, it can effectively reduce the terminal equipment. If the value of the refresh rate of the screen is adjusted to be the same as the value of the target running frame rate, the display effect can be improved, and the user experience can be improved.
  • step S102 may be implemented by the following steps:
  • Step S1021A determining the movement parameters of the virtual object in the output screen of the client and the operation frequency of the user based on the operation data.
  • the virtual object may be a virtual character or a virtual prop.
  • Step S1022A when the movement parameter is greater than the first parameter threshold, or when the operating frequency is greater than the first frequency threshold, determine that the client is in the first operating scenario.
  • Step S1023A when the movement parameter is less than or equal to the first parameter threshold, and the operation frequency is less than or equal to the first frequency threshold, it is determined that the client is in the second operating scenario.
  • the user's operation can get a faster response, and the user experience of the client will be smoother. Therefore, when it is determined based on the operation frequency that the operation frequency is greater than the predetermined first frequency threshold, it can be determined that the client
  • the scene at is the first operation scene, that is, the high frame rate operation scene; when the operation frequency is lower than the first frequency threshold, that is, the user's operation frequency is not very high, for example, when the user makes an out-of-game purchase on the game client
  • the equipment does not involve real-time confrontation operations, or when the user has no operations at all, it can be determined that the scene where the client is located is the second running scene, that is, the low frame rate running scene.
  • the high frame rate mode can avoid the screen being stuck and blurred. Therefore, at this time, the scene where the client is located is determined as the first running scene, that is In a high frame rate running scenario, when the movement parameter of the virtual object is less than or equal to the first parameter threshold, indicating that the virtual object moves at a medium or low speed, or does not move, the client is determined to be in the second running scenario at this time. That is, running the scene at a low frame rate.
  • step S102 can also be implemented by the following steps:
  • Step S1021B based on the running data, determine whether the client terminal plays the recommended animation.
  • the high frame rate can better show the quality of the game, or when the video viewing client plays the recommended video clip, the high frame rate can improve the picture quality , so even if the above conditions are not met, it is determined as the first running scene, that is, the high frame rate scene.
  • Step S1022B when it is determined to play the recommended animation based on the running data, it is determined that the client is in the first running scene.
  • Step S1021C based on the running data, determine whether the game is over, or whether to play a scene switching animation.
  • the cut-off animation after the game, the switching scene between different copies, etc. the user will not be immersed in the screen display in these scenes, so it is determined as the second running scene, that is, the low In the frame rate scene, for the video viewing client, the advertisement in the title, or the part that the user does not pay much attention to, such as the title and the end, can be determined as a low frame rate scene.
  • Step S1022C when it is determined based on the running data that the game ends, or the scene switching animation is played, it is determined that the client is in the second running scene.
  • step S101 the following steps may also be performed:
  • Step S001 after the client is started, it is determined whether the client supports frame rate adjustment.
  • step S002 when it is determined that the client terminal supports frame rate adjustment, step S002 is entered; when it is determined that the client terminal does not support frame rate adjustment, step S201 is entered.
  • Step S002 after the client is started, it requests to establish a communication connection with the operating system of the terminal device.
  • Step S003 when the establishment of the communication connection is completed, the client determines whether the terminal device supports frame rate adjustment.
  • step S004 When it is determined that the terminal device supports frame rate adjustment, go to step S004; when it is determined that the terminal device does not support frame rate adjustment, go to step S101.
  • Step S004 the client obtains the highest refresh rate supported by the terminal device.
  • the highest refresh rate supported by the terminal device is determined based on the hardware of the terminal device, and can be considered to be determined when the terminal device leaves the factory.
  • step S103 can be implemented by the following steps:
  • Step S1031 when it is determined that the running scene is the first running scene, the highest refresh rate is determined as the target running frame rate of the client.
  • determining the highest refresh rate as the target running frame rate of the client refers to determining the value of the highest refresh rate as the value of the target running frame rate of the client.
  • Step S1032 when it is determined that the running scene is the second running scene, the preset running frame rate is determined as the target running frame rate of the client.
  • the value of the preset running frame rate is less than the value of the highest refresh rate, that is to say, when it is determined that the running scene is a high frame rate scene, then the value of the highest refresh rate that the terminal device hardware can support is determined.
  • the value of the target running frame rate of the client in order to improve the playback quality in a high frame rate scene, and when it is determined that the running scene is a low frame rate scene, a preset relatively low running frame rate can be determined as The target running frame rate of the client can reduce the power consumption of the terminal device and prolong the standby time of the terminal device without affecting the user experience.
  • the client when the client supports dynamic frame rate adjustment, the client can dynamically adjust the frame rate in real time according to the running data, or the user can manually adjust the frame rate through the frame rate adjustment interface provided by the client. For adjustment, if the client automatically adjusts the frame rate in real time according to the operating data, then after step S005, step S101 and subsequent steps are performed. If the client manually adjusts the frame rate based on the user's settings, after the client obtains the target running frame rate set by the user, the client performs image output based on the target running frame rate to realize dynamic adjustment of the running frame rate, and based on the target running frame rate The dynamic adjustment triggers the dynamic adjustment of the refresh rate of the screen by the terminal device.
  • Step S201 the operating system of the terminal device acquires the state parameters of the terminal device.
  • Step S202 the operating system of the terminal device collects image data and user operation data when the client runs within a preset time period.
  • the preset duration is preset by the terminal device when it leaves the factory.
  • the terminal device may also provide an interface for setting the duration, which is preset by the user according to their own needs.
  • the image data may include pixel values of each pixel of the output image rendered by the client at runtime, and the user operation data may include trigger time, trigger position, pressure value and other data of the user operation.
  • Step S203 the operating system of the terminal device determines the target refresh rate of the screen based on the state parameters, image data and user operation data.
  • step S203 when step S203 is implemented, firstly, based on the image data and user operation data, the operating scene where the client is located may be determined, and then the operating frame rate corresponding to the operating scene may be determined. If the value of the operating frame rate is lower than When the value of the current refresh rate of the terminal device, the value of the running frame rate is determined as the value of the target refresh rate of the screen; when the value of the running frame rate is higher than the value of the current refresh rate of the terminal device , based on the state parameter, determine whether the terminal device can meet the execution condition of the running frame rate, if the terminal device can meet the execution condition of the running frame rate, determine the value of the running frame rate as the value of the target refresh rate of the screen value; if the terminal device cannot meet the execution conditions of the running frame rate, the target refresh rate is determined based on the state parameter. The value of the target refresh rate is greater than or equal to the value of the current refresh rate.
  • Step S204 the operating system of the terminal device controls the screen to refresh and display according to the target refresh rate.
  • the terminal device can make real-time judgment on the running scene of the client based on the screen data and the number of user operations during the running of the client, and based on the judgment
  • the generated running scene estimates the running frame rate corresponding to the client, so as to dynamically adjust its own refresh rate based on the running frame rate, so as to realize screen refresh at high refresh rate in high frame rate scenarios to improve user experience.
  • the screen is refreshed at a low refresh rate to reduce the power consumption of the terminal device.
  • the frame rate adjustment method provided by the embodiment of the present application is described by taking the client as a game client as an example.
  • the frame rate adjustment method provided by the embodiment of the present application includes the following steps:
  • Step S501 the game client identifies the high frame rate scene and the low frame rate scene, and determines the target running frame rate according to the identified scene.
  • the game client can determine whether the current scene is a scene where the user can clearly perceive a high frame rate based on whether the user needs frequent touch operations, whether there is complex animation, and whether there is a switching transition between shots, etc.
  • the target running frame rate for the out-of-scenes scene can dynamically adjust the running frame rate when switching between different scenes. The adjustment can be based on the identified scene or on the real-time operating state of the terminal device.
  • Step S502 the game client sends the identified scene and the target running frame rate to the terminal device.
  • a set of interaction protocols can be defined between the game client and the terminal device, so that the game client can deliver the identified scene and target running frame rate to the terminal device in real time.
  • the terminal device can also notify the game client through this interactive protocol, and the game client adjusts the real-time running frame rate according to the received information.
  • Step S503 after receiving the frame rate adjustment message sent by the game client, the terminal device adjusts the refresh rate of the screen of the terminal device in real time.
  • the operating system of the terminal device adjusts the refresh rate of the screen of the terminal device in real time, so as to ensure that no freeze occurs during the switching process.
  • the terminal device may notify the game client through a callback interface to reduce the running frame rate in real time.
  • the high and low operating frame rate scenarios are divided according to the impact of different operating frame rates in each scenario on the actual user experience, and can be distinguished according to the following factors during implementation.
  • the user's operations can get faster response, and the game experience will be higher and smoother, so high running frame rate support is required in scenarios where the user has operations.
  • Different user operation types can correspond to different scenarios, that is to say, different operation types have different requirements on the running frame rate. For example, in a fierce fighting scene, the user's operation will be frequent, and a high running frame rate is required to provide a faster response; for the game to buy equipment outside the game and other scenarios that do not involve real-time confrontation, the user's operation does not involve real-time confrontation. It will be too frequent. At this time, only a medium and high frame rate can be used to bring a good experience to the user.
  • a high running frame rate can make the change of the camera smoother and reduce the user's dizziness; the movement of characters and props, such as when the characters or props in the game screen move rapidly , a high running frame rate can make the movement visually smoother; therefore, when the height and position of the camera change, or the movement of characters and props causes frequent screen switching, it corresponds to a high running frame rate scene, and the picture is relatively static, or When the motion is not obvious, maintaining a low running frame rate will not affect the user experience, but also reduce the overall power consumption of the game. This corresponds to a low running frame rate scenario.
  • the user has clear expectations, such as the cut-off animation after the game, the switching scene between different copies, etc. In these scenarios, the user will not be immersed in the screen display, so it can be switched to a low running frame Rate.
  • a high running frame rate can better represent the quality of the game, so even if the above conditions are not met, you should keep running at a high frame rate.
  • the client can judge the running frame rate of each scene according to the principles defined above, mark the running frame rate of each scene in real time, and send it to the terminal device.
  • FIG. 6 is a schematic diagram of an implementation flow of scene division provided by an embodiment of the present application. As shown in FIG. 6 , the flow includes:
  • Step S601 it is determined whether the screen is moving.
  • step S604 determines that it is a high running frame rate scene, and if it is determined that the picture is still, go to step S602 for further judgment.
  • Step S602 it is determined whether there is a user operation.
  • step S604 is entered, and it is determined that it is a high frame rate scene; when it is determined that there is no user operation, step S603 is entered to perform further judgment.
  • judging whether there is a user operation may be judging whether there is a user operation and the frequency of the user operation is greater than a certain number of times threshold, and if there is a user operation and the operation frequency is greater than the number of times threshold, it is determined that there is a user operation.
  • Step S603 it is determined whether it is a preset high running frame rate special scene.
  • step S604 determines to be a high operation frame rate scene; if it is determined not to be a preset high operation frame rate special scene, go to step S605.
  • Step S604 it is determined to be a high running frame rate scene.
  • Step S605 it is determined to be a low running frame rate scene.
  • steps S601 to S605 in order to achieve the best user experience, when any one of the conditions meets the high running frame rate requirement, it needs to be identified as a high running frame rate scene.
  • steps S601 to S603 the screen motion is judged first, then the user operation is judged, and the special scene is judged at the end is only an exemplary illustration.
  • the judgment sequence of screen motion, user operation and special scene can be random. arrangement.
  • the game client After the game client completes the scene identification, it determines the target running frame rate according to the identified scene, adjusts the screen rendering frame rate in real time according to the target running frame rate, and then notifies the terminal device in real time to adjust the corresponding refresh rate.
  • the game client in addition to automatically identifying the scene and adjusting the frame rate, can also adjust the dynamic frame rate according to the actual needs of the user. When performance drops, the overall running frame rate also needs to be lowered accordingly.
  • the game client When the game client receives the abnormal running status returned by the terminal device, it reduces the running frame rate in real time, and then sends back the adjustment result to the terminal device in real time.
  • Table 1 is the field information sent by the game client to the terminal device:
  • FIG. 7 is a schematic diagram of an interaction flow between a terminal device and a game client provided by an embodiment of the present application. As shown in FIG. 7 , the interaction flow includes:
  • Step S701 the game client queries the terminal device whether the terminal device supports the dynamic frame rate.
  • the QeryDynamicFPS interface can be invoked to query whether the terminal device supports dynamic frame rate. This interface does not require input parameters, and the output can be: 1. Supported or not supported 2. Supported version number.
  • Step S702 the terminal device returns the dynamic frame rate support status.
  • Step S703 the game client queries the terminal device for the currently supported highest refresh rate.
  • step S703 the currently supported highest refresh rate may be queried from the terminal device by calling the QueryTerminalMaxFPS interface.
  • This interface has no input parameters, and the output parameters are the highest refresh rate that the terminal device can support.
  • Step S704 the terminal device returns the highest refresh rate currently supported.
  • Step S705 the game client requests the terminal device to establish a connection.
  • the game client may request the terminal device to establish a connection channel for dynamically adjusting the frame rate by calling the ConnetToTerminal interface, and the output is success or failure.
  • step S706 the terminal device completes the initialization and returns that the connection has been established.
  • steps S701 to S706 before the game client starts to adjust the dynamic frame rate, it handshakes with the terminal device, agrees on a relevant protocol, and establishes and maintains a communication link.
  • Step S707 the game client determines the current target running frame rate, and sends the information to the terminal device.
  • the game client can determine the target running frame rate of the game client by calling the JudgeTartgetFPS interface, where the input of this interface is the running data of the game, the output is the target running frame rate, and the target running frame rate is determined on the game client Then, the target running frame rate is carried in the message and sent to the terminal device, wherein the fields in the sent information are shown in Table 1.
  • Step S708 after receiving the information sent by the game client, the terminal device adjusts the dynamic refresh rate, and returns the adjustment result to the game client.
  • the terminal device calls the AdjustTerminalTargetFPS interface to adjust the refresh rate of the screen, that is, the input of this interface is the information structure shown in Table 1, and the output is shown in Table 2.
  • the information structure shown in Table 2 is then fed back to the game client by the terminal device.
  • Step S709 the game client performs reverse frame rate adjustment according to the information fed back by the terminal device, and feeds back the adjustment result and the current real-time scene information to the terminal device.
  • the game client calls the AdjustGameTargetFPS interface to dynamically adjust the target running frame rate again.
  • the input of this interface can be returned by the terminal device, as shown in Table 2.
  • the information structure shown and the target running frame rate TargetFPS determined in step S707 are output as the information structure shown in Table 1, so that the game client can dynamically adjust the target running frame rate again according to the adjustment result returned by the terminal device.
  • TargetFPS and the information returned by the terminal device make a comprehensive judgment, adjust the running frame rate of the game in real time, and return the adjustment result to the terminal device again.
  • Step S710 After receiving the information sent by the game client, the terminal device performs dynamic refresh rate adjustment.
  • the terminal device after receiving the adjustment result sent by the game client, the terminal device adjusts the refresh rate of the screen again according to the adjustment result, so as to dynamically adjust the refresh rate of the screen.
  • step S711 the steps 8-10 are repeated during the running of the game until the running of the game ends.
  • the game notifies the terminal device to disconnect the link.
  • the game client can call the CloseConnect interface to close the communication connection with the terminal device.
  • This interface has no input parameters and the output is success or failure.
  • the terminal device realizes the ability to perform dynamic frame rate adjustment in real time, and the frame rate adjustment can take effect instantaneously and is insensitive to the user.
  • the terminal device judges the current running state. If the temperature is normal and can support the frame rate requirement of the game client, the refresh rate is adjusted normally according to the request issued by the game client.
  • the refresh rate will not be increased temporarily, and the running status will be notified to the game client, so that the game client can follow
  • the terminal device performs frame rate adjustment.
  • the game client can dynamically adjust the running frame rate of the game, and the dynamic adjustment of the frame rate can notify the terminal device in real time, allowing the terminal device to adjust in real time with the changes of the game, which can avoid game adjustment
  • the running frame rate is changed, the screen refresh rate of the terminal device is inconsistent with the game, resulting in waste of power consumption or impaired user experience.
  • the terminal device can dynamically adjust the refresh rate in real time according to the running state of the terminal device, which can effectively reduce the power consumption while ensuring the user experience.
  • the game client can also be notified in real time, so that the game client can cooperate to make adjustments.
  • the user can enjoy a smooth high frame rate experience, and also avoids abnormality such as freezing when the temperature of the terminal device is too high.
  • the running frame rate of the game client and the refresh rate of the screen of the terminal device are dynamically adjusted at the same time.
  • only the game client may perform dynamic frame rate adjustment, that is, the game client may not adjust the frame rate dynamically. Relying on the terminal device to realize the dynamic frame rate can also obtain most of the benefits, but the terminal device does not follow the dynamic frame rate adjustment. In low frame rate scenarios, maintaining a high refresh rate on the screen will still bring additional power consumption.
  • the terminal device can monitor the frame rate switching of the game through GPU rendering, After the game client switches the frame rate, the terminal device can also follow the game client to switch the refresh rate.
  • the terminal device may also adjust the dynamic refresh rate without relying on the game client.
  • the touch operation is used to perform real-time dynamic judgment on the game scene, so as to distinguish high frame rate scenes and low frame rate scenes, and dynamically switch the refresh rate.
  • the software modules stored in the frame rate adjustment apparatus 354 of the memory 350 may be is a frame rate adjustment device in the terminal device 300, including: a first acquisition module 3541, configured to acquire the running data of the client when the client runs in the foreground when the client in the terminal device supports dynamic frame rate switching; the first determines The module 3542 is configured to determine the running scene of the client based on the running data; the second determining module 3543 is configured to determine the target running frame rate of the client based on the running scene; the first output module 3544 is configured to control the client according to the The target running frame rate is used for image output, and the operating system of the terminal device is triggered to adjust the refresh rate of the screen according to the target running frame rate.
  • a first acquisition module 3541 configured to acquire the running data of the client when the client runs in the foreground when the client in the terminal device supports dynamic frame rate switching
  • the first determines The module 3542 is configured to determine the running scene of the client based on the running data
  • the second determining module 3543 is configured to determine
  • the apparatus further includes: a first sending module, configured to send the target running frame rate to the operating system of the terminal device; a second acquiring module, configured to, after receiving the target running frame rate, Acquire the state parameter of the terminal device; the first control module is configured to, when it is determined based on the state parameter that the terminal device satisfies the execution condition of the target running frame rate and the target running frame rate is less than or equal to the preset refresh rate threshold, Control the screen to refresh and display according to the target running frame rate.
  • a first sending module configured to send the target running frame rate to the operating system of the terminal device
  • a second acquiring module configured to, after receiving the target running frame rate, Acquire the state parameter of the terminal device
  • the first control module is configured to, when it is determined based on the state parameter that the terminal device satisfies the execution condition of the target running frame rate and the target running frame rate is less than or equal to the preset refresh rate threshold, Control the screen to refresh and display according to the target running frame rate.
  • the apparatus further includes: a third determination module configured to determine a target refresh rate of the screen based on the state parameter when it is determined that the terminal device does not meet the execution condition of the target running frame rate based on the state parameter;
  • the second control module is configured to control the screen to refresh and display according to the target refresh rate;
  • the second sending module is configured to send the state parameter and the target refresh rate to the client.
  • the state parameter includes at least one of the following: CPU temperature, CPU usage, and remaining power of the terminal device;
  • the execution condition of the target running frame rate includes at least one of the following: the CPU temperature is less than a temperature threshold; the The CPU usage is less than the usage threshold; the remaining power is greater than the remaining power threshold.
  • the apparatus further includes: a second output module, configured to, when it is determined based on the state parameter that the terminal device does not meet the execution condition of the target running frame rate, the client performs an image according to the target refresh rate output; the third output module is configured to, based on the state parameter, determine that when the terminal device satisfies the execution condition of the target running frame rate, the client performs image output according to the target running frame rate.
  • the apparatus further includes: a fourth obtaining module, configured to obtain the target running frame rate of the client; a fifth obtaining module, configured to obtain the target running frame rate and the screen's When the current refresh rates are different, the state parameter of the terminal device is acquired; the third control module is configured to control the screen to run the frame rate according to the target when it is determined based on the state parameter that the terminal device satisfies the execution condition of the target running frame rate to refresh the display.
  • the first determining module is further configured to: determine the movement parameter of the virtual object in the output screen of the client and the operation frequency of the user based on the operation data; when the movement parameter is greater than the first parameter threshold, or when When the operating frequency is greater than the first frequency threshold, it is determined that the client is in the first operating scenario; when the movement parameter is less than or equal to the first parameter threshold, and the operating frequency is less than or equal to the first frequency threshold, it is determined that the client is in the second running scenario.
  • the first determining module is further configured to: when it is determined to play the recommended animation based on the running data, determine that the client is in the first running scenario; or, when it is determined based on the running data that the game is over or played During the scene switching animation, it is determined that the client is in the second running scene.
  • the apparatus further includes: a connection establishment module, configured to request the client to establish a communication connection with the operating system of the terminal device after startup; a sixth determination module, configured to be configured when the communication connection establishment is completed , determine whether the terminal device supports frame rate adjustment; the sixth obtaining module is configured to obtain the highest refresh rate supported by the terminal device when it is determined that the terminal device supports frame rate adjustment; the seventh determining module is configured to be based on the highest refresh rate rate and the preset scene level to determine the corresponding relationship between the scene level and the running frame rate.
  • a connection establishment module configured to request the client to establish a communication connection with the operating system of the terminal device after startup
  • a sixth determination module configured to be configured when the communication connection establishment is completed , determine whether the terminal device supports frame rate adjustment
  • the sixth obtaining module is configured to obtain the highest refresh rate supported by the terminal device when it is determined that the terminal device supports frame rate adjustment
  • the seventh determining module is configured to be based on the highest refresh rate rate and the preset scene level to determine the corresponding relationship between
  • the second determining module is further configured to: when determining that the running scenario is the first running scenario, determine the highest refresh rate as the target running frame rate of the client; when determining that the running scenario is the first running scenario When running the second scenario, the preset running frame rate is determined as the target running frame rate of the client, and the preset running frame rate is less than the maximum refresh rate.
  • the apparatus further includes: a seventh acquisition module, configured to acquire state parameters of the terminal device when the client in the terminal device does not support dynamic frame rate switching; a data acquisition module, configured to acquire the client terminal Image data and user operation data when running within a preset duration; an eighth determination module, configured to determine a target refresh rate of the screen based on the state parameter, the image data and the user operation data; a fourth control module, configured as Control the screen to be refreshed according to the target refresh rate.
  • a seventh acquisition module configured to acquire state parameters of the terminal device when the client in the terminal device does not support dynamic frame rate switching
  • a data acquisition module configured to acquire the client terminal Image data and user operation data when running within a preset duration
  • an eighth determination module configured to determine a target refresh rate of the screen based on the state parameter, the image data and the user operation data
  • a fourth control module configured as Control the screen to be refreshed according to the target refresh rate.
  • the embodiments of the present application provide a storage medium storing executable instructions, wherein the executable instructions are stored, and when the executable instructions are executed by a processor, the processor will cause the processor to execute the method provided by the embodiments of the present application, for example, as shown in FIG. 4 shows the method.
  • the storage medium may be a computer-readable storage medium, for example, Ferromagnetic Random Access Memory (FRAM), Read Only Memory (ROM), Programmable Read Only Memory (PROM). Read Only Memory), Erasable Programmable Read Only Memory (EPROM, Erasable Programmable Read Only Memory), Electrically Erasable Programmable Read Only Memory (EEPROM, Electrically Erasable Programmable Read Only Memory), Flash Memory, Magnetic Surface Memory, Optical Disc, Or memory such as CD-ROM (Compact Disk-Read Only Memory); it can also be various devices including one or any combination of the above memories.
  • FRAM Ferromagnetic Random Access Memory
  • ROM Read Only Memory
  • PROM Programmable Read Only Memory
  • EPROM Erasable Programmable Read Only Memory
  • EEPROM Electrically Erasable Programmable Read Only Memory
  • Flash Memory Magnetic Surface Memory
  • Optical Disc Or memory such as CD-ROM (Compact Disk-Read Only Memory); it can also be various devices including one or any combination of the above memories.
  • executable instructions may take the form of programs, software, software modules, scripts, or code, written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and which Deployment may be in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.
  • executable instructions may, but do not necessarily correspond to files in a file system, may be stored as part of a file that holds other programs or data, for example, a Hyper Text Markup Language (HTML, Hyper Text Markup Language) document
  • HTML Hyper Text Markup Language
  • One or more scripts in stored in a single file dedicated to the program in question, or in multiple cooperating files (eg, files that store one or more modules, subroutines, or code sections).
  • executable instructions may be deployed to be executed on one computing device, or on multiple computing devices located at one site, or alternatively, distributed across multiple sites and interconnected by a communication network execute on.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

一种帧率调整方法、装置、设备、计算机可读存储介质及计算机程序产品,其中,该方法包括:当终端设备中的客户端支持动态帧率切换时,获取该客户端在前台运行时的运行数据;基于该运行数据确定该客户端的运行场景;基于该运行场景确定该客户端的目标运行帧率;该客户端按照该目标运行帧率进行图像输出,并触发该终端设备的操作系统根据该目标运行帧率对屏幕的刷新率进行调整。

Description

帧率调整方法、装置、设备、计算机可读存储介质及计算机程序产品
相关申请的交叉引用
本申请基于申请号为202011242460.7、申请日为2020年11月09日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
技术领域
本申请涉及图像处理技术领域,涉及但不限于一种帧率调整方法、装置、设备、计算机可读存储介质及计算机程序产品。
背景技术
随着终端技术的发展,目前智能终端支持的帧率越来越高,120帧甚至144帧越来越普遍。高帧率给用户带来了顺畅的屏幕显示以及更快的触控响应体验,但同时也带来了更高的功耗以及发热。目前受散热能力所限,智能终端无法长时间保持高帧率,运行一段时间后,会由于温度过高启动高温保护机制,从而降低性能,导致无法支持高帧率。
发明内容
本申请实施例提供一种帧率调整方法,由终端设备执行,包括:
当终端设备中的客户端支持动态帧率切换时,获取该客户端在前台运行时的运行数据;
基于该运行数据确定该客户端的运行场景;
基于该运行场景确定该客户端的目标运行帧率;
该客户端按照该目标运行帧率进行图像输出,并触发该终端设备的操作系统根据该目标运行帧率对屏幕的刷新率进行调整。
本申请实施例提供一种帧率调整装置,包括:
第一获取模块,配置为当终端设备中的客户端支持动态帧率切换时,获取该客户端在前台运行时的运行数据;
第一确定模块,配置为基于该运行数据确定该客户端的运行场景;
第二确定模块,配置为基于该运行场景确定该客户端的目标运行帧率;
第一输出模块,配置为控制该客户端按照该目标运行帧率进行图像输出,并触发该终端设备的操作系统根据该目标运行帧率对屏幕的刷新率进行调整。
本申请实施例提供一种用于帧率调整的终端设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行该存储器中存储的可执行指令时实现上述的帧率调整方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时实现上述的帧率调整方法。
本申请实施例提供一种计算机程序产品,包括计算机程序或指令,所述计算 机程序或指令被处理器执行时,实现上述的帧率调整方法。
本申请实施例具有以下有益效果:
当终端设备中的客户端支持动态帧率切换时,获取该客户端在前台运行时的运行数据,然后客户端基于该运行数据确定运行场景,不同的运行场景可以对应不同的目标运行帧率,因此在确定出运行场景后,再基于该运行场景确定客户端的目标运行帧率,之后客户端按照该目标运行帧率进行图像输出,以对该客户端的运行帧率进行动态调整,从而实现客户端基于运行场景对运行帧率的实时动态调整,并且该动态调整还用于触发终端设备的操作系统对屏幕的刷新率进行调整,能够在保障用户体验的同时可以有效降低功耗。
附图说明
图1为本申请实施例提供的帧率调整系统10的网络架构示意图;
图2是本申请实施例提供的终端设备300的结构示意图;
图3为本申请实施例提供的帧率调整方法的流程示意图;
图4为本申请实施例提供的帧率调整方法的流程示意图图;
图5为本申请实施例提供的帧率调整方法的流程示意图;
图6为本申请实施例提供的场景划分的实现流程示意图;
图7为本申请实施例提供的终端设备和游戏客户端的交互流程示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。除非另有定义,本申请实施例所使用的所有的技术和科学术语与属于本申请实施例的技术领域的技术人员通常理解的含义相同。本申请实施例所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)终端设备:是指一类具备丰富人机交互方式、拥有接入互联网能力、通常搭载各种操作系统、具有较强处理能力的设备。终端设备可以分为移动终端设备和不便移动终端设备,其中移动终端设备包括智能手机、平板电脑、车载终端、掌上游戏主机等,不便移动终端设备包括台式计算机、桌面电脑等。
2)帧率(Frame rate),帧率=帧数(Frames)/时间(Time),单位为帧每秒(F/S,Frame Per Second,FPS),也就是说,当一个动画的帧率恒定为60帧每秒时,那么它在一秒钟内的帧数为60帧。
3)运行帧率,客户端在运行时每秒钟内能够输出的画面数量。
4)刷新率,是指屏幕在每秒钟能刷新的次数,单位为赫兹(Hz),例如144Hz的高刷新率显示器是指显示器的物理刷新速度上限是1秒钟显示144张画面。
5)客户端,终端设备中运行的各种应用程序。根据使用场景分类可以包括游戏客户端、播放器客户端。根据运行平台分类,可以包括移动终端设备上的移动应用(APP)、电脑设备上的客户端。
为了更好地理解本申请实施例中提供的帧率调整方法,首先对相关技术中的帧率调整方法进行说明:
相关技术中,终端设备优先保障高帧率,在出现温度过高异常,无法再提供足够的性能支持时,再被迫降低帧率。在相关技术提供的方案中,用户会明显感觉到终端设备温度过高,同时也能够明显感觉到帧率的降低,对应用体验有明显的影响。
基于此,本申请实施例提供一种帧率调整方法,以游戏APP为例,通过识别游戏场景,针对用户有操作的场景,动态支持高运行帧率,从而给用户最好的显示及触控体验;针对静态画面或者无需用户操作的场景,实时动态降低帧率,从而降低终端设备的功耗和发热。通过精确的场景识别,确保低运行帧率的场景对用户的游戏交互和体验无明显影响,同时实现整体功耗和终端设备运行温度的明显降低。
下面说明本申请实施例提供的用于帧率调整的终端设备的示例性应用,本申请实施例提供的用于帧率调整的终端设备可以实施为笔记本电脑,平板电脑,台式计算机,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、智能机器人等任意具有屏幕显示功能的用户终端。
参见图1,图1为本申请实施例提供的帧率调整系统10的网络架构示意图。如图1所示,帧率调整系统10中包括服务器100、网络200和终端设备300。并且终端设备300通过网络200连接服务器100,网络200可以是广域网或者局域网,又或者是二者的组合。其中,终端设备300上安装有各种客户端,例如可以是游戏客户端、购物客户端、视频播放客户端等。在实现本申请实施例的帧率调整方法时,终端设备300在当前的显示界面上显示有当前运行的客户端所显示的内容,在本申请实施例以终端设备300中运行有游戏客户端为例进行说明,游戏客户端通过网络200从服务器100获取游戏运行数据,并基于游戏运行数据实时确定出当前的场景,然后基于确定出的场景对游戏客户端的运行帧率进行调整,在调整后游戏客户端通知终端设备300的操作系统,以触发终端设备300的操作系统对屏幕的刷新率进行调整,不仅能够实现帧率基于场景的实时调整,并且能够有效减少终端设备功耗,从而保证终端设备的性能。
参见图2,图2是本申请实施例提供的终端设备300的结构示意图,图2所示的终端设备300包括:至少一个处理器310、存储器350、至少一个网络接口320和用户接口330。终端设备300中的各个组件通过总线系统340耦合在一起。可理解,总线系统340用于实现这些组件之间的连接通信。总线系统340除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统340。
处理器310可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口330包括使得能够呈现媒体内容的一个或多个输出装置331,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口330还包括一个或多 个输入装置332,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器350可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器350可选地包括在物理位置上远离处理器310的一个或多个存储设备。存储器350包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器350旨在包括任意适合类型的存储器。在一些实施例中,存储器350能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统351,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块352,用于经由一个或多个(有线或无线)网络接口320到达其他计算设备,示例性的网络接口320包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
输入处理模块353,用于对一个或多个来自一个或多个输入装置332之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的装置可以采用软件方式实现,图2示出了存储在存储器350中的一种帧率调整装置354,该帧率调整装置354可以是终端设备300中的帧率调整装置,其可以是程序和插件等形式的软件,包括以下软件模块:第一获取模块3541、第一确定模块3542、第二确定模块3543和第一输出模块3544,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
在另一些实施例中,本申请实施例提供的装置可以采用硬件方式实现,作为示例,本申请实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的帧率调整方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。
下面将结合本申请实施例提供的终端设备300的示例性应用和实施,说明本申请实施例提供的帧率调整方法。参见图3,图3为本申请实施例提供的帧率调整方法的流程示意图,将结合图3示出的步骤进行说明。
步骤S101,当终端设备中的客户端支持动态帧率切换时,获取客户端在前台运行时的运行数据。
这里,该客户端可以是游戏客户端、即时通信客户端,还可以是视频播放客户端,或者购物客户端、浏览器等。步骤S101在实现时,可以是当该客户端支持动态帧率切换时,客户端获取自身在前台运行时的运行数据,其中,该运行数据可以包括所呈现画面的画面信息以及用户操作数据,举例来说,该画面信息可以是客户端在运行过程中所渲染输出的图像的图像数据,例如可以包括所渲染输出的图像各个像素点的像素值;该用户操作数据可以包括用户触发各个操作的时间点信息、用户操作的位置以及用户操作的压力值等信息。
步骤S102,基于运行数据确定客户端的运行场景。
这里,该运行场景至少可以包括高帧率运行场景(运行帧率高于帧率阈值的场景)、低帧率运行场景(运行帧率低于帧率阈值的场景),在一些实施例中,还可以包括中帧率运行场景。
需要说明的是,本申请实施例不对运行场景的划分方式进行具体限定,只需满足划分后得到的高帧率运行场景、中帧率运行场景和低帧率运行场景分别对应的运行帧率的取值依次降低即可。
步骤S102在实现时,可以是对该运行数据进行分析,以确定画面运动情况、用户操作频率、或者是否为特定的高帧率场景,从而确定出客户端的运行场景。例如,当满足以下条件至少之一时,确定该运行场景为高帧率场景:存在画面运动、用户操作频率超过一定的次数阈值、确定为特定的高帧率场景;反之,当不存在画面运动,且用户操作频率没有超过一定的次数阈值,且不是特定的高帧率场景时,确定该运行场景为低帧率场景。
步骤S103,基于运行场景确定客户端的目标运行帧率。
步骤S103在实现时,可以基于终端设备所支持的最高刷新率预先为不同的运行场景分配不同的运行帧率,例如当终端设备所支持的最高刷新率为90Hz时,运行场景包括高帧率运行场景和低帧率运行场景,那么高帧率运行场景对应的运行帧率的取值可以与最高刷新率的取值相同,即为90FPS,而低帧率运行场景对应的运行帧率可以为30FPS。
在预先为不同运行场景分配对应的运行帧率后,在步骤S103中,即可根据确定出的运行场景来确定客户端的目标运行帧率,例如当确定出的运行场景为高帧率运行场景,那么客户端的目标运行帧率即为90FPS;当确定出的运行场景为低帧率运行场景,那么客户端的目标运行帧率即为30FPS,如此,能够根据运行数据对客户端的帧率进行动态调整,在保障用户体验的同时可以有效降低功耗。
步骤S104,客户端按照目标运行帧率进行图像输出,并触发终端设备的操作系统根据目标运行帧率对屏幕的刷新率进行调整。
这里,终端设备的操作系统根据目标运行帧率对屏幕的刷新率进行调整是指终端设备的操作系统首先将刷新率的取值调整至与目标运行帧率的取值相同,并根据调整后的刷新率进行显示,例如假设屏幕原始的刷新率为40Hz,客户端发送的目标运行帧率为90FPS,则操作系统将屏幕的刷新率调整至90Hz,并以90Hz的频率进行刷新显示,也就是说,客户端在根据运行场景对运行帧率进行调整后,还可以触发终端设备的操作系统对屏幕的刷新率进行调整。步骤S104在实现时,客户端对帧率的动态调整来触发终端设备对屏幕的刷新率的动态调整可以有两种方式,一是终端设备被动调整,也即客户端指示终端设备按照该目标运行帧率进行刷新率的调整;二是终端设备主动调整,也即终端设备的操作系统主动监测客户端的帧率变化,并在监测到客户端的帧率变化时,主动进行刷新率的调整。
另外,需要说明的是,终端设备在进行屏幕的刷新率的动态调整时,可以是在终端设备的运行状态允许的情况下,将屏幕的刷新率的取值调整至与目标运行帧率的取值相同,也可以是在终端设备的运行状态不允许的情况下,对屏幕的刷新率进行一定程度(即将刷新率的取值调整至目标运行帧率的取值的部分,例如70%)的调整,例如假设屏幕当前的刷新率是30Hz,而目标运行帧率为90FPS,如果终端设备当前的温度略高(例如终端设备当前的温度高于设定的温度阈值)的话,不能够将屏幕的刷新率提高到90Hz(因为如果将屏幕的刷新率提高至90Hz会很容易导致终端设备温度过高),此时可以将刷新率提高到低于目标运行帧率的取值,例如60Hz。
在本申请实施例提供的帧率调整方法中,当终端设备中的客户端支持动态帧率切换时,获取该客户端在前台运行时的运行数据,然后客户端基于该运行数据确定运行场景,不同的运行场景可以对应不同的目标运行帧率,因此在确定出运行场景后,再基于该运行场景确定客户端的目标运行帧率,之后客户端按照该目标运行帧率进行图像输出,以对该客户端的运行帧率进行动态调整,从而实现客户端基于运行场景对运行帧率的实时动态调整,并且该动态调整还用于触发终端设备对屏幕的刷新率进行调整,能够在保障用户体验的同时可以有效降低功耗。
在一些实施例中,在客户端进行动态帧率调整,也即按照该目标运行帧率进行图像输出之后,可以触发终端设备也相应进行刷新率的动态调整,终端设备可以是基于客户端的动态调整进行主动调整或被动调整,其中,如果终端设备被动进行刷新率的动态调整,则在步骤S104之后,如图4所示,还可以执行以下步骤:
步骤S105A,客户端将目标运行帧率发送至终端设备的操作系统。
这里,步骤S105A在实现时,客户端在启动后,可以请求建立与终端设备的操作系统之间的通信连接,在该通信连接建立成功之后,终端设备的操作系统和客户端之间可以进行信息和数据的交互。
步骤S106A,终端设备的操作系统接收到目标运行帧率后,获取终端设备的状态参数。
这里,终端设备的状态参数可以包括以下至少之一:CPU温度、CPU使用率、终端设备的剩余电量。
步骤S107A,终端设备的操作系统基于状态参数确定终端设备是否满足目标运行帧率的执行条件。
步骤S107A在实现时,可以首先获取设定的温度阈值、使用率阈值和电量阈值,其中,目标运行帧率的执行条件包括以下至少之一:CPU温度小于该温度阈值;CPU使用率小于该使用率阈值;剩余电量大于电量阈值,当确定终端设备满足该目标运行帧率的执行条件时,进入步骤S108A;当确定终端设备不满足该目标运行帧率的执行条件时,进入步骤S111A。
在本申请实施例中,不同的运行帧率对应不同的执行条件,例如高运行帧率(例如144FPS)对应的执行条件可以是CPU温度低于40°、且CPU的使用率低于40%,中等运行帧率(例如90FPS)对应的执行条件可以是CPU温度低于55°,低帧率没有执行条件,也即在不满足高帧率对应的执行条件也不满足中等帧率对应的执行条件时,执行低帧率。
举例来说,假设获取到的状态参数为:CPU温度50°,CPU的使用率为45%,目标运行帧率的执行条件为CPU温度低于40°、且CPU的使用率低于40%,由于CPU温度以及CPU使用率都不满足执行条件中对CPU温度及CPU使用率的要求,此时确定终端设备不满足目标运行帧率的执行条件,进入步骤S111A。
步骤S108A,终端设备的操作系统判断目标运行帧率是否小于或者等于预设的刷新率阈值。
这里,终端设备的操作系统判断目标运行帧率是否小于或者等于预设的刷新率阈值是指判断目标运行帧率的取值是否小于或者等于预设的刷新率阈值的取值,且该刷新率阈值可以是用户根据自身需求设置的,该刷新率阈值可以小于终端设备支持的最高刷新率,也可以等于终端设备支持的最高刷新率。当该目标运行帧率小于或者等于该刷新率阈值时,进入步骤S109A;当该目标运行帧率大于该刷新率阈值时,进入步骤S110A。
步骤S109A,终端设备的操作系统控制屏幕按照目标运行帧率进行刷新显示。
这里,终端设备的操作系统控制屏幕按照目标运行帧率进行刷新显示是指操作系统首先将刷新率的取值调整至与目标运行帧率的取值相同,接着实时控制屏幕按照调整后的刷新率进行刷新显示,以提高用户体验。
步骤S110A,终端设备的操作系统将刷新率阈值确定为目标刷新率,并控制屏幕按照目标刷新率进行刷新显示。
这里,在终端设备的状态参数满足目标运行帧率的执行条件的前提下,如果目标运行帧率的取值高于了限定的刷新率阈值的取值,那么此时控制屏幕按照该刷新率阈值进行刷新显示,也即终端设备将刷新率提高到能调整到的最大值,以保证用户体验。
在一些实施例中,在步骤S110A之后,还可以执行步骤S113A以及后续步骤。
步骤S111A,终端设备的操作系统基于状态参数确定屏幕的目标刷新率。
这里,当终端设备不满足目标运行帧率的执行条件时,可以基于状态参数确定该状态参数所能满足至少一个执行条件中对应的最高的运行帧率,并将该最高的运行帧率的取值确定为屏幕的目标刷新率的取值。
承接上述示例,假设获取到的状态参数为CPU温度50°,CPU的使用率为45%,假设该状态参数满足90FPS的执行条件,同时也满足30FPS的执行条件,那么将30FPS和90FPS中的较高者,也即根据90FPS确定目标刷新率的取值,即确定目标刷新率的频率为90Hz。
步骤S112A,终端设备的操作系统控制屏幕按照目标刷新率进行刷新显示。
步骤S113A,终端设备的操作系统将状态参数和目标刷新率发送至客户端。
这里,终端设备的操作系统基于之前建立的通信连接,将状态参数和目标刷新率发送至客户端。
步骤S114A,客户端基于状态参数,确定终端设备是否满足目标运行帧率的执行条件。
这里,客户端可以基于状态参数,确定终端设备是否满足目标运行帧率的执行条件,以确定是否终端设备是因为不能支持该目标运行帧率才没有将刷新率的取值调整为目标运行帧率的取值,如果确定终端设备不满足目标帧率的执行条件,也即终端设备不能支持该目标运行帧率才没有进行刷新率的调整,那么此时确定需要反向调整运行帧率,进入步骤S115A;如果确定终端设备满足目标运行帧率的执行条件,也即不是因为不能支持该目标运行帧率,而是基于其他原因没有进行刷新率的调整,那么此时确定不需要调整运行帧率,进入步骤S116A。
步骤S115A,客户端按照目标刷新率进行图像输出。
这里,客户端按照目标刷新率进行图像输出是指客户端将运行帧率的取值调整至与目标刷新率的取值相同,并根据调整后的运行帧率进行图像输出。
步骤S116A,客户端按照目标运行帧率进行图像输出。
在本申请实施例提供的帧率调整方法中,客户端在基于自身的运行场景确定出对应的目标运行帧率之后,将客户端的运行帧率动态调整至目标运行帧率,并通过与终端设备的操作系统建立的通信连接将该目标运行帧率发送至终端设备的操作系统,以指示终端设备的操作系统基于该目标运行帧率调整屏幕的刷新率,终端设备的操作系统在接收到目标运行帧率之后,基于自身的状态参数确定终端设备的屏幕能否支持该目标运行帧率,如果终端设备的运行状态足以支持该目标运行帧率,即可以将屏幕的刷新率的取值调整至与目标运行帧率的取值相同,如 果是将屏幕的刷新率的取值调低从而调整至与目标运行帧率的取值相同,能够有效降低终端设备的功耗,如果是将屏幕的刷新率的取值调高从而调整至与目标运行帧率的取值相同,能够提高显示效果,进而提高用户的使用体验。
在一些实施例中,如果终端设备主动进行刷新率的动态调整,在步骤S104之后,如图5所示,还可以执行以下步骤:
步骤S105B,终端设备的操作系统获取客户端的目标运行帧率。
这里,终端设备的操作系统通过向客户端发送帧率获取请求,以获取客户端的目标运行帧率,例如终端设备的操作系统可以每间隔预设时长,向客户端发送一次帧率获取请求(例如每隔1分钟向客户端发送一次帧率获取请求),以获取客户端的目标运行帧率。
步骤S106B,终端设备的操作系统确定目标运行帧率与屏幕的当前刷新率是否相同。
这里,终端设备的操作系统确定目标运行帧率与屏幕的当前刷新率是否相同是指确定目标运行帧率的取值与当前刷新率的取值是否相同,当确定该目标运行帧率的取值与屏幕的当前刷新率的取值相同时,说明不需要对刷新率进行调整,此时再次返回至步骤S105B;当确定该目标运行帧率的取值与屏幕的当前刷新率的取值不同时,说明需要对屏幕的刷新率进行调整,此时进入步骤S107B。
步骤S107B,终端设备的操作系统获取终端设备的状态参数。
这里,操作系统获取终端设备的状态参数可以包括但不限于是CPU温度、CPU使用率等。
步骤S108B,终端设备的操作系统基于状态参数确定终端设备是否满足目标运行帧率的执行条件。
这里,与步骤S107A的实现过程类似,步骤S108B在实现时,可以首先获取设定的温度阈值和/或使用率阈值,其中,目标运行帧率的执行条件包括以下至少之一:CPU温度小于温度阈值;CPU使用率小于使用率阈值,当确定该终端设备满足该目标运行帧率的执行条件时,进入步骤S109B;当确定终端设备不满足该目标运行帧率的执行条件时,进入步骤S110B。
步骤S109B,终端设备的操作系统控制屏幕按照目标运行帧率进行刷新显示。
这里,终端设备的操作系统控制屏幕按照目标运行帧率进行刷新显示是指操作系统首先将屏幕的刷新率的取值调整至与目标运行帧率的取值相同,接着基于调整后的刷新率进行刷新显示。
步骤S110B,终端设备的操作系统基于状态参数确定屏幕的目标刷新率。
这里,当终端设备不满足目标运行帧率的执行条件时,可以基于状态参数确定该状态参数所能满足至少一个执行条件中对应的最高的运行帧率,并将该最高的运行帧率的取值确定为屏幕的目标刷新率的取值。
步骤S111B,终端设备的操作系统控制屏幕按照目标刷新率进行刷新显示。
在上述实施例提供的帧率调整方法中,客户端在基于自身的运行场景确定出对应的目标运行帧率之后,将客户端的运行帧率动态调整至目标运行帧率,以实现客户端的运行帧率的调整,但是客户端不会指示终端设备的操作系统对屏幕的刷新率进行调整,因此终端设备的操作系统可以主动监测客户端的运行帧率是否发生改变,如果监测到客户端的运行帧率发生改变后,终端设备的操作系统确定客户端的目标运行帧率,并基于自身的状态参数确定能否支持该目标运行帧率,如果终端设备的运行状态足以支持该目标运行帧率,即可以将屏幕的刷新率调整至目标运行帧率,从而实现屏幕刷新率的主动调整,并且如果是将屏幕的刷新率 的取值调低从而调整至与目标运行帧率的取值相同,能够有效降低终端设备的功耗,如果是将屏幕的刷新率的取值调高从而调整至与目标运行帧率的取值相同,能够提高显示效果,进而提高用户的使用体验。
在一些实施例中,上述的步骤S102可以通过以下步骤实现:
步骤S1021A,基于运行数据确定客户端的输出画面中虚拟对象的移动参数和用户的操作频率。
这里,虚拟对象可以是虚拟角色还可以是虚拟道具。
步骤S1022A,当移动参数大于第一参数阈值,或者当操作频率大于第一频率阈值时,确定客户端处于第一运行场景。
步骤S1023A,当移动参数小于或者等于第一参数阈值,且操作频率小于或者等于第一频率阈值时,确定客户端处于第二运行场景。
这里,在高帧率模式下,用户的操作能够得到更快的响应,客户端的使用体验也会更加顺畅,因此在基于操作频率确定操作频率大于预定的第一频率阈值时,可以确定客户端所处的场景为第一运行场景,也即高帧率运行场景;当操作频率低于该第一频率阈值时,也即用户的操作频率没有很高,例如当用户在游戏客户端的对局外购买装备等不涉及实时对抗类的操作时,或者在用户完全无操作的情况下,可以确定客户端所处的场景为第二运行场景,也即低帧率运行场景。
当虚拟对象的移动参数大于第一参数阈值,表征虚拟对象发生快速运动时,高帧率模式可以避免画面留滞、模糊,因此此时确定客户端所处的场景为第一运行场景,也即高帧率运行场景,当虚拟对象的移动参数小于或者等于第一参数阈值,表征虚拟对象发生中低速运动,或者没有发生移动时,此时确定客户端所处的场景为第二运行场景,也即低帧率运行场景。
在一些实施例中,上述的步骤S102还可以通过以下步骤实现:
步骤S1021B,基于运行数据确定客户端是否播放推荐动画。
这里,在客户端播放推荐动画,例如游戏客户端播放CG动画时,高帧率能够更好地表现出游戏的品质,或者在视频观看客户端播放视频推荐短片时,高帧率能够提高画面质量,因此即便不满足以上条件也确定为第一运行场景,也即高帧率场景。
步骤S1022B,当基于运行数据确定播放推荐动画时,确定客户端处于第一运行场景。
或者通过以下步骤实现:
步骤S1021C,基于运行数据确定是否为对局结束,或者是否播放场景切换动画。
这里,对于游戏客户端来说,对局结束后的切场动画、不同副本之间的切换场景等,这些场景下用户不会沉浸在画面显示上,因此确定为第二运行场景,也即低帧率场景,对于视频观看客户端来说,片头的广告,或者片头、片尾等用户不太关注的部分可以确定为低帧率场景。
步骤S1022C,当基于运行数据确定对局结束,或者播放场景切换动画时,确定客户端处于第二运行场景。
通过上述提供的三种实现方式,能够基于客户端的运行数据确定用于客户端当前所处的运行场景,从而基于运行场景对帧率进行动态调整。
在一些实施例中,在步骤S101之前,还可以执行以下步骤:
步骤S001,在客户端启动后,确定客户端是否支持帧率调整。
这里,当确定该客户端支持帧率调整时,进入步骤S002;当确定该客户端 不支持帧率调整时,进入步骤S201。
步骤S002,客户端在启动后,请求与终端设备的操作系统建立通信连接。
步骤S003,当通信连接建立完成时,客户端确定终端设备是否支持帧率调整。
当确定该终端设备支持帧率调整时,进入步骤S004;当确定该终端设备不支持帧率调整时,进入步骤S101。
步骤S004,客户端获取终端设备支持的最高刷新率。
这里,终端设备所支持的最高刷新率是基于终端设备的硬件所决定的,可以认为是在终端设备出厂时就确定好的。
在应用客户获取到终端设备支持的最高刷新率之后,步骤S103可以通过下述的步骤实现:
步骤S1031,当确定运行场景为第一运行场景时,将最高刷新率确定为客户端的目标运行帧率。
这里,将最高刷新率确定为客户端的目标运行帧率是指将最高刷新率的取值确定为客户端的目标运行帧率的取值。
步骤S1032,当确定运行场景为第二运行场景时,将预设的运行帧率确定为客户端的目标运行帧率。
这里,预设的运行帧率的取值小于该最高刷新率的取值,也就是说当确定运行场景为高帧率场景时,那么将终端设备硬件所能支持的最高刷新率的取值确定为客户端的目标运行帧率的取值,以在高帧率场景中,提高播放质量,而当确定运行场景为低帧率场景时,可以将预设的一个相对较低的运行帧率确定为客户端的目标运行帧率,从而在不影响用户体验的同时能够降低终端设备功耗,延长终端设备待机时长。
在一些实施例中,当客户端支持动态帧率调整时,可以是客户端根据运行数据实时进行帧率的动态调整,还可以是用户通过客户端提供的帧率调整接口,对帧率进行手动调整,如果是客户端根据运行数据实时进行帧率的自动调整,那么在步骤S005之后,执行步骤S101及后续步骤。如果客户端是基于用户的设置手动调整帧率,那么客户端获取到用户设置的目标运行帧率之后,基于该目标运行帧率进行图像输出,以实现对运行帧率的动态调整,并且基于该动态调整触发终端设备对屏幕的刷新率的动态调整。
步骤S201,终端设备的操作系统获取终端设备的状态参数。
步骤S202,终端设备的操作系统采集客户端在预设时长内运行时的图像数据和用户操作数据。
这里,该预设时长是终端设备在出厂时就预先设置好的,当然终端设备也可以提供该时长的设置接口,由用户根据自身的需求进行预先设置。该图像数据可以包括客户端在运行时所渲染输出图像的各个像素点的像素值,用户操作数据可以包括用户操作的触发时间、触发位置、压力值等数据。
步骤S203,终端设备的操作系统基于状态参数、图像数据和用户操作数据,确定屏幕的目标刷新率。
这里,步骤S203在实现时,可以是首先基于图像数据和用户操作数据确定出客户端所处的运行场景,进而确定出该运行场景对应的运行帧率,如果该运行帧率的取值低于终端设备当前的刷新率的取值时,将该运行帧率的取值确定为屏幕的目标刷新率的取值;当该运行帧率的取值高于终端设备当前的刷新率的取值时,基于该状态参数,确定终端设备是否能够满足该运行帧率的执行条件,如果 终端设备能够满足该运行帧率的执行条件,将该运行帧率的取值确定为屏幕的目标刷新率的取值;如果终端设备不能满足该运行帧率的执行条件,那么基于状态参数确定出目标刷新率。该目标刷新率的取值是大于或者等于当前的刷新率的取值。
步骤S204,终端设备的操作系统控制屏幕按照目标刷新率进行刷新显示。
通过上述的步骤S201至步骤S204,即便客户端不支持进行帧率的动态调整,终端设备可以基于客户端在运行过程中的画面数据以及用户操作数对客户端的运行场景进行实时判断,并基于判定出的运行场景估测出客户端对应的运行帧率,从而基于该运行帧率对自身的刷新率进行动态调整,从而能够实现在高帧率场景下以高刷新率进行屏幕刷新提高用户体验,在低帧率场景下以低刷新率进行屏幕刷新,降低终端设备功耗。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
这里,以客户端为游戏客户端为例说明本申请实施例提供的帧率调整方法,本申请实施例提供的帧率调整方法包括以下步骤:
步骤S501,游戏客户端识别出高帧率场景和低帧率场景,并根据识别出的场景确定目标运行帧率。
在识别场景时,游戏客户端可以依据用户是否需要频繁的触控操作、是否有复杂动画和是否有镜头的切换转移等,来确定当前是否为用户能够明显感知高帧率的场景,并确定识别出的场景的目标运行帧率。游戏客户端可以在不同的场景切换时,进行运行帧率的动态调整。调整的依据可以是识别出的场景,也可以是根据终端设备的实时运行状态。
步骤S502,游戏客户端将识别出的场景以及目标运行帧率发送给终端设备。
在实现时,可以在游戏客户端和终端设备间定义一套交互协议,从而使得游戏客户端把识别出的场景以及目标运行帧率实时下发给终端设备。同时当终端设备运行异常时,如温度过高导致性能下降无法支持高刷新率时,终端设备也可以通过该交互协议通知游戏客户端,游戏客户端根据接收到的信息进行实时运行帧率的调整。
步骤S503,终端设备接收到游戏客户端发送的帧率调整消息后,实时调整终端设备的屏幕的刷新率。
这里,终端设备的操作系统在接收到游戏客户端发送的帧率调整消息后,实时调整终端设备的屏幕的刷新率,从而确保在切换过程中不出现卡顿。
在一些实施例中,当终端设备当前的运行状态不足以支持当前的运行帧率时,终端设备可以通过回调接口通知游戏客户端进行运行帧率的实时下降。
以下对游戏场景的划分及动态帧率策略进行说明。
一、场景划分
根据各个场景下不同运行帧率对用户实际体验的影响来进行高低运行帧率场景的划分,在实现时可以根据如下几个因素进行区分。
1、用户是否有操作。
在高运行帧率模式下,用户的操作能够得到更快的响应,游戏的体验也会更高顺畅,因此在用户有操作的场景需要高运行帧率支持。
不同的用户操作类型可以对应不同的场景,也就是说不同操作类型对运行帧率的要求也有区别。如激烈的打斗场景中,用户的操作也会频繁,此时需要有高运行帧率来提供更快的响应;而对于游戏对局外购买装备等不涉及实时对抗类的场景,用户的操作不会太频繁,此时只需中高运行帧率即可给用户带来很好的 体验。
而在用户完全无操作的情况下,只需要保持较低运行帧率即可,即不影响用户体验,也能够降低游戏整体功耗。
2、画面是否有运动。
相机高度、位置的改变会影响用户对画面的感知,高运行帧率能够让相机的改变更加流畅,减少用户的眩晕;人物、道具的移动,例如当游戏画面中的人物或者道具发生快速运动时,高运行帧率能够让运动在视觉上更加流畅;因此,在相机高度、位置发生改变,或者人物、道具的移动而造成画面切换频繁时,对应高运行帧率场景,而画面相对静止,或者运动不明显时,保持低运行帧率即不影响用户体验,也能够降低游戏整体功耗,此时对应低运行帧率场景。
3、特殊场景。
在特定的场景下,用户有明确的预期,比如对局结束后的切场动画、不同副本之间的切换场景等,这些场景下用户不会沉浸在画面显示上,因此可以切换为低运行帧率。
有些特殊场景,比如游戏的CG动画播放,高运行帧率能够更好地表现出游戏的品质,因此即便不满足以上条件也应该保持运行高帧率。
二、场景识别及下发。
游戏运行过程中,客户端可以根据上述定义的原则,对各个场景的运行帧率进行判断,实时地标记各个场景的运行帧率,并下发给终端设备。
图6为本申请实施例提供的场景划分的实现流程示意图,如图6所示,该流程包括:
步骤S601,判断画面是否运动。
这里,如果确定画面运动,进入步骤S604,确定为高运行帧率场景,如果确定画面静止,则进入步骤S602,进行进一步判断。
步骤S602,判断是否有用户操作。
这里,确定有用户操作时,进入步骤S604,确定为高帧率场景;确定无用户操作时,进入步骤S603,进行进一步判断。
在本申请实施例中,判断是否有用户操作可以是判断是否有用户操作且用户操作的频率大于一定的次数阈值,如果有用户操作且操作频率大于该次数阈值,确定有用户操作。
步骤S603,确定是否为预设的高运行帧率特殊场景。
这里,确定为预设的高运行帧率特殊场景时,进入步骤S604,确定为高运行帧率场景;确定不为预设的高运行帧率特殊场景时,进入步骤S605。
步骤S604,确定为高运行帧率场景。
步骤S605,确定为低运行帧率场景。
在步骤S601至步骤S605中,为让用户的体验达到最佳,当其中任一条件满足高运行帧率要求时,都需要识别为高运行帧率场景。
需要说明的是,在步骤S601至步骤S603中,先判断画面运动再判断用户操作,最后判断特殊场景仅为示例性说明,在实际实现时,画面运动、用户操作以及特殊场景的判断顺序可以随机排列。
游戏客户端完成场景识别后,根据识别出的场景确定目标运行帧率,并根据目标运行帧率实时调整画面渲染帧率,然后再实时通知终端设备进行对应的刷新率调整。
在本申请实施例中,游戏客户端除了可以自动识别场景并进行帧率调整, 还可以根据用户的实际需求进行动态帧率的调整,另外,当终端设备运行状态出现异常,如温度过高导致性能下降时,也需要对应地调低整体运行帧率。
当游戏客户端收到终端设备回传的运行状态异常时,实时降低运行帧率,并将调整结果再实时回传通知到终端设备。
以下对游戏客户端和终端设备之间的交互协议进行说明,其中,表1为游戏客户端下发到终端设备的字段信息:
表1、游戏客户端下发到终端设备的字段信息
Figure PCTCN2021123826-appb-000001
表2、终端设备回复游戏客户端的字段信息
Figure PCTCN2021123826-appb-000002
图7为本申请实施例提供的终端设备和游戏客户端的交互流程示意图,如图7所示,该交互流程包括:
步骤S701,游戏客户端向终端设备查询终端设备是否支持动态帧率。
步骤S701在实现时,可以调用QeryDynamicFPS接口查询终端设备是否支持动态帧率,该接口无需输入参数,输出可以是:1、支持或不支持2、支持的版本号。
步骤S702,终端设备返回动态帧率支持情况。
步骤S703,游戏客户端向终端设备查询当前支持的最高刷新率。
步骤S703在实现时,可以通过调用QueryTerminalMaxFPS接口向终端设备查询当前支持的最高刷新率。该接口无输入参数,输出参数为终端设备能够支持的最高刷新率。
步骤S704,终端设备返回当前支持的最高刷新率。
步骤S705,游戏客户端向终端设备请求建立连接。
步骤S705在实现时,游戏客户端可以通过调用ConnetToTerminal接口来向终端设备请求建立动态调整帧率的连接通道,输出为成功或失败。
步骤S706,终端设备完成初始化,并返回已建立连接。
这里,在步骤S701至步骤S706中,游戏客户端开始进行动态帧率调整前和终端设备进行握手,约定相关协议并建立和保持通信链路。
步骤S707,游戏客户端判断当前的目标运行帧率,并下发信息到终端设备。
这里,游戏客户端可以通过调用JudgeTartgetFPS接口,来确定游戏客户端的目标运行帧率,其中,该接口的输入为游戏的运行数据,输出为目标运行帧率,在游戏客户端确定出目标运行帧率后,将目标运行帧率携带于消息中下发至终端设备,其中下发信息中的字段如表1所示。
步骤S708,终端设备接收到游戏客户端发送的信息后,进行动态刷新率调整,并把调整结果返回游戏客户端。
这里,终端设备在接收到如表1所示的消息后,调用AdjustTerminalTargetFPS接口,以调整屏幕的刷新率,也即该接口的输入为如表1所示的信息结构体,输出如表2所示的信息结构体,然后终端设备再将如表2所示的信息结构体,反馈给游戏客户端。
步骤S709,游戏客户端根据终端设备反馈的信息,进行帧率反向调整,并把调整结果及当前实时场景信息反馈终端设备。
这里,游戏客户端在接收到终端设备发送的如表2所示的信息结构体后,调用AdjustGameTargetFPS接口,再次动态调整目标运行帧率,其中该接口的输入可以是终端设备返回的如表2所示的信息结构体和在步骤S707确定的目标运行帧率TargetFPS,输出为如表1所示的信息结构体,从而实现游戏客户端根据终端设备返回的调整结果再次动态调整目标运行帧率,对TargetFPS和终端设备返回的信息进行综合判断,并实时调整游戏的运行帧率,并返回向终端设备再次调整结果。
步骤S710,终端设备接收游戏客户端下发的信息后,进行动态刷新率调整。
这里,终端设备在接收到游戏客户端发送的调整结果后,根据调整结果对屏幕的刷新率进行再次调整,从而实现动态调整屏幕的刷新率。
步骤S711,游戏运行过程中重复8-10的步骤,直到游戏运行结束。
在游戏运行结束,游戏通知终端设备断开链接。
在游戏运行结束,用户关闭游戏客户端时,游戏客户端可以调用CloseConnect接口以关闭与终端设备之间的通信连接,该接口无输入参数,输出为成功或失败。
在本申请实施例中,终端设备实现实时进行动态帧率调整的能力,该帧率调整能够瞬时生效,并且对用户无感。终端设备接收到游戏客户端调整帧率的请求后,对当前运行状态进行判断,如果温度正常,可以支持游戏客户端的帧率需求,则按游戏客户端下发的请求进行刷新率的正常调整。
如果终端设备当前运行状态出现异常,比如温度过高等,导致性能下降,无法满足游戏高帧率运行的需求,则暂时不调高刷新率,并把运行状态通知游戏客户端,让游戏客户端跟随终端设备进行帧率调整。
通过本申请实施例提供的帧率调整方法,游戏客户端可以动态调整游戏的运行帧率,并且帧率的动态调整可以实时通知终端设备,让终端设备跟随游戏的变动实时调整,能够避免游戏调整了运行帧率,终端设备的屏幕的刷新率和游戏不一致产生的功耗浪费或用户体验受损的情况出现。另外终端设备可以根据终端设备的运行状态进行刷新率的动态实时调整,在保障用户体验的同时可以有效降低功耗,同时当性能不足时也可以实时通知游戏客户端,让游戏客户端配合进行调整,如此通过本申请实施例提供的帧率调整方法,用户可以享受到顺畅的高帧率体验,也避免了终端设备温度过高时,出现卡顿等异常。
在上述实现方式中,游戏客户端的运行帧率和终端设备的屏幕的刷新率同时进行了动态调整,在一些实施例中,可以仅游戏客户端进行动态帧率调整,也即游戏客户端可以不依赖于终端设备实现动态帧率,也可以获得大部分收益,但终端设备不跟随进行动态帧率调整,在低帧率场景下,屏幕保持高刷新率仍然会带来额外的功耗。
或者在一些实施例中,不需要建立游戏客户端与终端设备之间的通信连接,此时如果游戏客户端进行了动态帧率切换,终端设备可以通过GPU的渲染来监测游戏的帧率切换,在游戏客户端切换帧率后终端设备也能够跟随游戏客户端进行刷新率的切换。
亦或者,在一些实施例中,如果游戏客户端未进行动态帧率切换,终端设备也可以不依赖游戏客户端进行动态刷新率的调整,此时可以通过实时地采集用户的游戏画面改动以及用户的触控操作,对游戏场景进行实时动态判断,从而区分出高帧率场景和低帧率场景,并进行刷新率的动态切换。
下面继续说明本申请实施例提供的帧率调整装置354实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器350的帧率调整装置354中的软件模块可以是终端设备300中的帧率调整装置,包括:第一获取模块3541,配置为当终端设备中的客户端支持动态帧率切换时,获取该客户端在前台运行时的运行数据;第一确定模块3542,配置为基于该运行数据确定该客户端的运行场景;第二确定模块3543,配置为基于该运行场景确定该客户端的目标运行帧率;第一输出模块3544,配置为控制该客户端按照该目标运行帧率进行图像输出,并触发该终端设备的操作系统根据该目标运行帧率对屏幕的刷新率进行调整。
在一些实施例中,该装置还包括:第一发送模块,配置为将该目标运行帧率发送至该终端设备的操作系统;第二获取模块,配置为在接收到该目标运行帧率后,获取该终端设备的状态参数;第一控制模块,配置为当基于该状态参数确定该终端设备满足该目标运行帧率的执行条件且该目标运行帧率小于或者等于预设的刷新率阈值时,控制该屏幕按照该目标运行帧率进行刷新显示。
在一些实施例中,该装置还包括:第三确定模块,配置为当基于该状态参数确定该终端设备不满足该目标运行帧率的执行条件时,基于该状态参数确定屏幕 的目标刷新率;第二控制模块,配置为控制该屏幕按照该目标刷新率进行刷新显示;第二发送模块,配置为将该状态参数和目标刷新率发送至该客户端。
在一些实施例中,该状态参数包括以下至少之一:CPU温度、CPU使用率、终端设备的剩余电量;该目标运行帧率的执行条件包括以下至少之一:该CPU温度小于温度阈值;该CPU使用率小于使用率阈值;该剩余电量大于剩余电量阈值。
在一些实施例中,该装置还包括:第二输出模块,配置为当基于该状态参数,确定该终端设备不满足该目标运行帧率的执行条件时,该客户端按照该目标刷新率进行图像输出;第三输出模块,配置为基于该状态参数,确定该终端设备满足该目标运行帧率的执行条件时,该客户端按照该目标运行帧率进行图像输出。
在一些实施例中,该装置还包括:第四获取模块,配置为获取该客户端的目标运行帧率;第五获取模块,配置为当该终端设备的操作系统确定该目标运行帧率与屏幕的当前刷新率不同时,获取该终端设备的状态参数;第三控制模块,配置为当基于该状态参数确定该终端设备满足该目标运行帧率的执行条件时,控制该屏幕按照该目标运行帧率进行刷新显示。
在一些实施例中,该第一确定模块,还配置为:基于该运行数据确定该客户端的输出画面中虚拟对象的移动参数和用户的操作频率;当该移动参数大于第一参数阈值,或者当该操作频率大于第一频率阈值时,确定该客户端处于第一运行场景;当该移动参数小于或者等于该第一参数阈值,且该操作频率小于或者等于第一频率阈值时,确定该客户端处于第二运行场景。
在一些实施例中,该第一确定模块,还配置为:当基于该运行数据确定播放推荐动画时,确定该客户端处于第一运行场景;或者,当基于该运行数据确定对局结束或者播放场景切换动画时,确定该客户端处于第二运行场景。
在一些实施例中,该装置还包括:连接建立模块,配置为该客户端在启动后,请求与该终端设备的操作系统建立通信连接;第六确定模块,配置为当该通信连接建立完成时,确定该终端设备是否支持帧率调整;第六获取模块,配置为当确定该终端设备支持帧率调整时,获取该终端设备支持的最高刷新率;第七确定模块,配置为基于该最高刷新率和预设的场景等级,确定场景等级与运行帧率之间的对应关系。
在一些实施例中,该第二确定模块,还配置为:当确定该运行场景为第一运行场景时,将该最高刷新率确定为该客户端的目标运行帧率;当确定该运行场景为第二运行场景时,将预设的运行帧率确定为该客户端的目标运行帧率,该预设的运行帧率小于该最高刷新率。
在一些实施例中,该装置还包括:第七获取模块,配置为当终端设备中的客户端不支持动态帧率切换时,获取该终端设备的状态参数;数据采集模块,配置为采集客户端在预设时长内运行时的图像数据和用户操作数据;第八确定模块,配置为基于该状态参数、该图像数据和该用户操作数据,确定屏幕的目标刷新率;第四控制模块,配置为控制该屏幕按照该目标刷新率进行刷新显示。
需要说明的是,本申请实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
本申请实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图4示出的方法。
在一些实施例中,存储介质可以是计算机可读存储介质,例如,铁电存储器(FRAM,Ferromagnetic Random Access Memory)、只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read Only Memory)、带电可擦可编程只读存储器(EEPROM,Electrically Erasable Programmable Read Only Memory)、闪存、磁表面存储器、光盘、或光盘只读存储器(CD-ROM,Compact Disk-Read Only Memory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper Text Markup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。

Claims (15)

  1. 一种帧率调整方法,由终端设备执行,所述方法包括:
    当所述终端设备中的客户端支持动态帧率切换时,获取所述客户端在前台运行时的运行数据;
    基于所述运行数据确定所述客户端的运行场景;
    基于所述运行场景确定所述客户端的目标运行帧率;
    所述客户端按照所述目标运行帧率进行图像输出,并触发所述终端设备的操作系统根据所述目标运行帧率对屏幕的刷新率进行调整。
  2. 根据权利要求1所述的方法,其中,在所述客户端按照所述目标运行帧率进行图像输出之后,所述方法还包括:
    所述客户端将所述目标运行帧率发送至所述终端设备的操作系统,触发所述终端设备的操作系统获取所述终端设备的状态参数;
    当基于所述状态参数确定所述终端设备满足所述目标运行帧率的执行条件、且所述目标运行帧率小于或者等于设定的刷新率阈值时,控制所述屏幕按照所述目标运行帧率进行刷新显示。
  3. 根据权利要求2所述的方法,其中,所述方法还包括:
    当基于所述状态参数确定所述终端设备不满足所述目标运行帧率的执行条件时,所述终端设备的操作系统基于所述状态参数确定屏幕的目标刷新率;
    控制所述屏幕按照所述目标刷新率进行刷新显示;
    所述终端设备的操作系统将所述状态参数和所述目标刷新率发送至所述客户端。
  4. 根据权利要求2或3所述的方法,其中,所述状态参数包括以下至少之一:CPU温度、CPU使用率、所述终端设备的剩余电量;
    所述目标运行帧率的执行条件包括以下至少之一:
    所述CPU温度小于温度阈值;
    所述CPU使用率小于使用率阈值;
    所述剩余电量大于剩余电量阈值。
  5. 根据权利要求4所述的方法,其中,所述方法还包括:
    当所述客户端基于所述状态参数,确定所述终端设备不满足所述目标运行帧率的执行条件时,所述客户端按照所述目标刷新率进行图像输出;
    当所述客户端基于所述状态参数,确定所述终端设备满足所述目标运行帧率的执行条件时,所述客户端按照所述目标运行帧率进行图像输出。
  6. 根据权利要求1所述的方法,其中,在所述客户端按照所述目标运行帧率进行图像输出之后,所述方法还包括:
    所述终端设备的操作系统获取所述客户端的目标运行帧率;
    当所述终端设备的操作系统确定所述目标运行帧率与屏幕的当前刷新率不同时,获取所述终端设备的状态参数;
    当基于所述状态参数确定所述终端设备满足所述目标运行帧率的执行条件时,控制所述屏幕按照所述目标运行帧率进行刷新显示。
  7. 根据权利要求1所述的方法,其中,所述基于所述运行数据确定所述客户端的运行场景,包括:
    基于所述运行数据确定所述客户端的输出画面中虚拟对象的移动参数和用户的操作频率;
    当所述移动参数大于第一参数阈值,或者当所述操作频率大于第一频率阈值时,确定所述客户端处于第一运行场景;
    当所述移动参数小于或者等于第一参数阈值,且所述操作频率小于或者等于第一频率阈值时,确定所述客户端处于第二运行场景。
  8. 根据权利要求1所述的方法,其中,所述基于所述运行数据确定所述客户端的运行场景,包括:
    当基于所述运行数据确定播放推荐动画时,确定所述客户端处于第一运行场景;或者,
    当基于所述运行数据确定对局结束或者播放场景切换动画时,确定所述客户端处于第二运行场景。
  9. 根据权利要求1至8任一项所述的方法,其中,所述方法还包括:
    所述客户端在启动后,请求与所述终端设备的操作系统建立通信连接;
    当所述通信连接建立完成、且所述客户端确定所述终端设备支持帧率调整时,所述客户端获取所述终端设备支持的最高刷新率。
  10. 根据权利要求9所述的方法,其中,所述基于所述运行场景确定所述客户端的目标运行帧率,包括:
    当确定所述运行场景为第一运行场景时,将所述最高刷新率确定为所述客户端的目标运行帧率;
    当确定所述运行场景为第二运行场景时,将预设的运行帧率确定为所述客户端的目标运行帧率,其中,所述预设的运行帧率小于所述最高刷新率。
  11. 根据权利要求1至7任一项所述的方法,其中,所述方法还包括:
    当所述终端设备中的客户端不支持动态帧率切换时,所述终端设备的操作系统获取所述终端设备的状态参数;
    所述终端设备的操作系统采集所述客户端在预设时长内运行时的图像数据和用户操作数据;
    所述终端设备的操作系统基于所述状态参数、所述图像数据和所述用户操作数据,确定屏幕的目标刷新率;
    所述终端设备的操作系统控制所述屏幕按照所述目标刷新率进行刷新显示。
  12. 一种帧率调整装置,所述装置包括:
    第一获取模块,配置为当终端设备中的客户端支持动态帧率切换时,获取所述客户端在前台运行时的运行数据;
    第一确定模块,配置为基于所述运行数据确定所述客户端的运行场景;
    第二确定模块,配置为基于所述运行场景确定所述客户端的目标运行帧率;
    第一输出模块,配置为所述客户端按照所述目标运行帧率进行图像输出,并触发所述终端设备的操作系统根据所述目标运行帧率对屏幕的刷新率进行调整。
  13. 一种用于帧率调整的终端设备,所述设备包括:
    存储器,用于存储可执行指令;
    处理器,用于执行所述存储器中存储的可执行指令时实现权利要求1至11任一项所述的方法。
  14. 一种计算机可读存储介质,存储有可执行指令,所述可执行指令被处理器执行时实现权利要求1至11任一项所述的方法。
  15. 一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时实现权利要求1至11任一项所述的方法。
PCT/CN2021/123826 2020-11-09 2021-10-14 帧率调整方法、装置、设备、计算机可读存储介质及计算机程序产品 WO2022095673A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP21888370.0A EP4239454A4 (en) 2020-11-09 2021-10-14 METHOD AND DEVICE FOR ADJUSTING THE FRAME RATE, DEVICE, COMPUTER-READABLE STORAGE MEDIUM AND COMPUTER PROGRAM PRODUCT
US17/954,842 US11922906B2 (en) 2020-11-09 2022-09-28 Frame rate adjustment method, apparatus and device, computer-readable storage medium and computer program product

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011242460.7 2020-11-09
CN202011242460.7A CN112230758B (zh) 2020-11-09 2020-11-09 帧率调整方法、装置、设备及计算机可读存储介质

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/954,842 Continuation US11922906B2 (en) 2020-11-09 2022-09-28 Frame rate adjustment method, apparatus and device, computer-readable storage medium and computer program product

Publications (1)

Publication Number Publication Date
WO2022095673A1 true WO2022095673A1 (zh) 2022-05-12

Family

ID=74122277

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/123826 WO2022095673A1 (zh) 2020-11-09 2021-10-14 帧率调整方法、装置、设备、计算机可读存储介质及计算机程序产品

Country Status (4)

Country Link
US (1) US11922906B2 (zh)
EP (1) EP4239454A4 (zh)
CN (2) CN112230758B (zh)
WO (1) WO2022095673A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112230758B (zh) * 2020-11-09 2023-11-17 腾讯科技(深圳)有限公司 帧率调整方法、装置、设备及计算机可读存储介质
CN112835544A (zh) * 2021-02-04 2021-05-25 Oppo广东移动通信有限公司 显示方法及显示设备、电子设备、存储介质
CN113098946B (zh) * 2021-03-26 2023-12-22 西安万像电子科技有限公司 云桌面场景的识别方法和装置、存储介质及电子装置
CN113117326B (zh) * 2021-03-26 2023-06-09 腾讯数码(深圳)有限公司 一种帧率控制方法和装置
CN113204323A (zh) * 2021-04-12 2021-08-03 沈阳中科创达软件有限公司 屏幕刷新方法、装置、设备及存储介质
CN113242469B (zh) * 2021-04-21 2022-07-12 南京大学 一种自适应视频传输配置方法和系统
CN113242397B (zh) * 2021-06-02 2022-11-29 北京字节跳动网络技术有限公司 一种帧率调节方法、装置及设备
CN113625860B (zh) * 2021-07-23 2023-01-31 荣耀终端有限公司 模式切换方法、装置、电子设备及芯片系统
CN113608713B (zh) * 2021-07-30 2023-09-26 Oppo广东移动通信有限公司 变频显示方法、ddic、显示屏模组及终端
CN113655880A (zh) * 2021-08-03 2021-11-16 Oppo广东移动通信有限公司 界面渲染方法、装置、终端设备及计算机可读存储介质
CN115706769A (zh) * 2021-08-09 2023-02-17 哲库科技(上海)有限公司 数据传输控制方法及相关装置
CN115705231B (zh) * 2021-08-10 2023-10-20 荣耀终端有限公司 屏幕显示方法和终端设备
CN113923485A (zh) * 2021-09-30 2022-01-11 杭州雾联科技有限公司 一种调整码率的方法、装置、及计算机可读存储介质
CN113870812B (zh) * 2021-10-15 2023-06-02 Oppo广东移动通信有限公司 显示屏刷新帧率的调整方法、装置、处理器、芯片和终端
CN114157824B (zh) * 2021-11-29 2023-08-18 联想(北京)有限公司 控制方法及电子设备
CN114222084B (zh) * 2021-12-01 2023-05-23 联想(北京)有限公司 一种控制方法、装置及电子设备
CN114390297A (zh) * 2021-12-22 2022-04-22 中国电信股份有限公司 通信系统、配置方法、云端服务设备及存储介质
CN116567336A (zh) * 2022-01-28 2023-08-08 博泰车联网(南京)有限公司 投屏方法、系统、设备和存储介质
CN114615727A (zh) * 2022-03-14 2022-06-10 北京小米移动软件有限公司 终端设备的控制方法、装置、电子设备及存储介质
CN114740965B (zh) * 2022-05-05 2023-12-08 Oppo广东移动通信有限公司 降低终端功耗的处理方法及其装置、终端和可读存储介质
CN116048217B (zh) * 2022-08-29 2023-09-26 荣耀终端有限公司 一种电子设备运行方法、装置和电子设备
CN116909508A (zh) * 2023-07-28 2023-10-20 重庆邮电大学 一种自适应调整显示屏刷新率的方法
CN117499739B (zh) * 2024-01-02 2024-06-07 腾讯科技(深圳)有限公司 帧率控制方法、装置、计算机设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170092340A1 (en) * 2014-05-14 2017-03-30 Zte Corporation Method and device for adjusting hardware refresh rate of terminal
CN108646906A (zh) * 2018-03-27 2018-10-12 广东欧珀移动通信有限公司 帧率调整方法、装置、存储介质及智能终端
CN110377251A (zh) * 2019-06-06 2019-10-25 努比亚技术有限公司 一种屏幕刷新率调整方法、终端及计算机可读存储介质
CN110633003A (zh) * 2019-09-19 2019-12-31 Oppo广东移动通信有限公司 降低功耗的方法、装置、终端及存储介质
CN112230758A (zh) * 2020-11-09 2021-01-15 腾讯科技(深圳)有限公司 帧率调整方法、装置、设备及计算机可读存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9858899B2 (en) * 2013-06-13 2018-01-02 Microsoft Technology Licensing, Llc Managing transitions of adaptive display rates for different video playback scenarios
US10127883B2 (en) * 2015-10-27 2018-11-13 Mediatek Inc. Frame rate control method and image processing apparatus selectively limiting frame rate
CN106227482B (zh) * 2016-07-25 2019-03-15 广东小天才科技有限公司 一种游戏画面刷新的控制方法及相关设备
CN108243349A (zh) * 2016-12-26 2018-07-03 中科创达软件股份有限公司 一种信息处理方法及装置
CN106657680A (zh) * 2017-03-10 2017-05-10 广东欧珀移动通信有限公司 一种移动终端帧率的控制方法、装置及移动终端
CN106791212B (zh) * 2017-03-10 2019-07-02 Oppo广东移动通信有限公司 一种移动终端刷新率的控制方法、装置及移动终端
US11404023B2 (en) * 2018-03-26 2022-08-02 Huawei Device Co., Ltd. Frame rate adjustment method and terminal
CN109445930A (zh) * 2018-05-30 2019-03-08 Oppo广东移动通信有限公司 程序优化方法、装置、终端及存储介质
US10891915B2 (en) * 2018-05-30 2021-01-12 Ati Technologies Ulc Frame refresh synchronization with synchronization boundary
CN110300327B (zh) * 2019-04-18 2021-06-15 深圳市腾讯网域计算机网络有限公司 一种游戏客户端性能分析方法、装置、终端及存储介质
CN113434300B (zh) * 2019-11-06 2023-01-24 腾讯科技(深圳)有限公司 一种数据处理方法以及相关装置
CN110795056B (zh) * 2019-11-08 2023-08-15 Oppo广东移动通信有限公司 调节显示参数的方法、装置、终端及存储介质
KR102707922B1 (ko) * 2020-02-10 2024-09-23 삼성전자주식회사 디스플레이를 포함하는 전자 장치와 이의 동작 방법
CN111882626B (zh) * 2020-08-06 2023-07-14 腾讯科技(深圳)有限公司 图像处理方法、装置、服务器及介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170092340A1 (en) * 2014-05-14 2017-03-30 Zte Corporation Method and device for adjusting hardware refresh rate of terminal
CN108646906A (zh) * 2018-03-27 2018-10-12 广东欧珀移动通信有限公司 帧率调整方法、装置、存储介质及智能终端
CN110377251A (zh) * 2019-06-06 2019-10-25 努比亚技术有限公司 一种屏幕刷新率调整方法、终端及计算机可读存储介质
CN110633003A (zh) * 2019-09-19 2019-12-31 Oppo广东移动通信有限公司 降低功耗的方法、装置、终端及存储介质
CN112230758A (zh) * 2020-11-09 2021-01-15 腾讯科技(深圳)有限公司 帧率调整方法、装置、设备及计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4239454A4 *

Also Published As

Publication number Publication date
CN117331427B (zh) 2024-10-22
EP4239454A1 (en) 2023-09-06
US20230028898A1 (en) 2023-01-26
CN112230758A (zh) 2021-01-15
CN117331427A (zh) 2024-01-02
EP4239454A4 (en) 2024-05-01
CN112230758B (zh) 2023-11-17
US11922906B2 (en) 2024-03-05

Similar Documents

Publication Publication Date Title
WO2022095673A1 (zh) 帧率调整方法、装置、设备、计算机可读存储介质及计算机程序产品
CN109157839B (zh) 帧率调控方法、装置、存储介质及终端
US10271105B2 (en) Method for playing video, client, and computer storage medium
CN106686446B (zh) 内容投射方法及移动终端
WO2013131341A1 (zh) 移动终端视频的呈现方法及装置
CN111338838A (zh) 中央处理器频率的控制方法及相关装置
WO2015070546A1 (zh) 一种pip播放的方法及终端
US20220060607A1 (en) Method for controlling video playing, computer device and storage medium thereof
CN110941411A (zh) 帧率的控制方法、装置及计算机存储介质
CN112533048A (zh) 一种视频播放方法、装置和设备
CN113282362B (zh) 应用程序管理方法、装置、存储介质以及终端
CN110604921B (zh) 一种显示内容切换方法、服务器和可存储介质
US11907599B2 (en) Information processing method, apparatus, electronic device, and storage medium
EP4124051A1 (en) Method for controlling video playing, apparatus, and computer device thereof
CN113487707B (zh) 网页动画处理方法、装置、电子设备及存储介质
CN114071217A (zh) 基于指令流的多屏互动方法、装置、计算机及存储介质
CN111783002A (zh) 网页数据加载方法、装置、电子设备及存储介质
US10691193B2 (en) Method, apparatus and computer-readable medium for terminal control
CN112445315B (zh) 屏幕刷新帧率的控制方法、装置及存储介质
CN110716759A (zh) 电子设备、计算机可读存储介质及运行参数配置方法
CN112312177B (zh) 工作模式切换方法、装置、显示设备和可读存储介质
WO2024222606A1 (zh) 缓存资源调整方法、装置、电子设备和可读存储介质
EP3739874A1 (en) Video playback method and device, terminal device and computer readable storage medium
CN112445315A (zh) 屏幕刷新帧率的控制方法、装置及存储介质
CN115955551A (zh) 一种控制方法及控制装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21888370

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021888370

Country of ref document: EP

Effective date: 20230530

NENP Non-entry into the national phase

Ref country code: DE