Frame rate detection method, device and equipment and computer readable storage medium

By extracting and analyzing the frame rate information in frame rate performance detection, including frame drops, instantaneous refresh rate and dynamic efficiency frame rate stability, the problem of the inability to comprehensively analyze the specific motion or operation of frame drops in the prior art is solved, and more reliable frame rate detection and evaluation are achieved.

CN119690836APending Publication Date: 2025-03-25纳欣科技有限公司
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411773337.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-04
Publication Date
2025-03-25

AI Technical Summary

Technical Problem

The existing frame rate performance detection methods cannot fully analyze the specific motion effects or operations that cause frame drops, resulting in unreliable fluency evaluation.

Method used

By printing the log information of each frame of the animation process, the frame rate information is extracted, including the number of frames dropped, instantaneous refresh rate and dynamic frame rate stability, and weighted operations are performed to evaluate the dynamic performance.

Benefits of technology

More comprehensive frame rate information is obtained, the reliability of frame rate detection results is improved, and the dynamic frame rate performance can be evaluated more accurately.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119690836A_ABST
    Figure CN119690836A_ABST
Patent Text Reader

Abstract

The invention discloses a frame rate test method, apparatus and device, and a computer readable storage medium. The method comprises the steps of printing log information of each frame in a dynamic effect process; extracting frame rate information in the log information, wherein the frame rate information at least comprises the number of dropped frames, an instantaneous refresh rate and dynamic effect frame rate stability; and analyzing the dynamic performance according to the frame rate information. According to the method, more frame rate information can be obtained for evaluating the frame rate stability performance, and the reliability of the frame rate detection result is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to the field of program testing technology. More specifically, the present disclosure relates to a frame rate detection method, device, apparatus, and computer-readable storage medium. Background Art

[0002] When evaluating the smoothness of an application or game, the frame rate performance test is usually used. In the previous frame rate performance test method, it is necessary to call the target code to execute the corresponding test case based on the pre-made test framework to obtain the test results and extract the frame drop log from it. In the subsequent process, the total number of dropped frames in the frame drop log is counted to evaluate the smoothness of the application or game to be tested.

[0003] However, the information provided by the frame drop log in the above method is limited. In addition to the total number of dropped frames, it is impossible to analyze which animations or operations caused the frame drops. This also makes the method of evaluating the smoothness based only on the total number of dropped frames have certain defects, that is, there is a lack of more comprehensive frame rate information as a basis to provide a more reliable evaluation result.

[0004] In view of this, there is an urgent need to provide a frame rate detection method to improve the reliability of the frame rate detection result. Summary of the invention

[0005] In order to at least solve the technical problems mentioned above, the present disclosure proposes a frame rate detection method, device, equipment and computer-readable storage medium solution.

[0006] In the first aspect, the present disclosure provides a frame rate testing method, including: printing log information of each frame of the animation process; extracting frame rate information in the log information, wherein the frame rate information includes at least the number of dropped frames, instantaneous refresh rate and animation frame rate stability; and analyzing the animation performance based on the frame rate information.

[0007] In some embodiments, the printing of log information for each frame of the animation process includes: when executing a test case, based on a control element that controls the animation process, monitoring a screen refresh signal in the animation process; and printing log information for each frame of the animation process based on the monitored screen refresh signal and the execution data of the test case.

[0008] In some embodiments, the method for calculating the number of dropped frames includes: determining the time difference between each frame according to the screen refresh signal; and calculating the number of dropped frames according to the time difference between each frame.

[0009] In some embodiments, the instantaneous refresh rate calculation method further includes: determining the time corresponding to all frame rates according to the screen refresh signal; and differentially calculating the instantaneous refresh rate at each time point based on the time corresponding to all frame rates.

[0010] In some embodiments, the method for calculating the motion effect frame rate stability includes: calculating the standard deviation of the instantaneous refresh rate and the average refresh rate as the motion effect frame rate stability; or, calculating the median absolute deviation of the instantaneous refresh rate and the median refresh rate as the motion effect frame rate stability.

[0011] In some embodiments, analyzing the motion effect performance based on the frame rate information includes: obtaining weight values ​​corresponding to the number of dropped frames, instantaneous refresh rate, and motion effect frame rate stability, respectively; based on the weight values, performing weighted operations on the number of dropped frames, instantaneous refresh rate, and motion effect frame rate stability to obtain an evaluation value; based on the evaluation value, evaluating the motion effect frame rate performance, wherein the evaluation value is positively correlated with the motion effect frame rate performance.

[0012] In some embodiments, the frame rate information also includes the rendering time of each frame, and analyzing the motion effect performance based on the rendering time of each frame also includes: analyzing the impact of each group of motion effects or operations on the frame rate based on the rendering time of each frame, so as to determine the target motion effect or target operation that causes the frame rate fluctuation.

[0013] In a third aspect, the present disclosure provides a frame rate testing device, including: a printing module, used to print log information of each frame of the motion effect process; an extraction module, used to extract frame rate information in the log information, and the frame rate information at least includes the number of dropped frames, instantaneous refresh rate and motion effect frame rate stability; an analysis module, used to analyze the motion effect performance according to the frame rate information.

[0014] In a third aspect, the present disclosure provides a frame rate testing device, comprising: a processor; a memory storing program instructions for testing the frame rate, wherein when the program instructions are executed by the processor, any of the methods described above is implemented.

[0015] In a fourth aspect, the present disclosure provides a computer-readable storage medium storing computer program instructions for testing a frame rate. When the computer program instructions are executed by a processor, the method described in any one of the above items is implemented.

[0016] Through the frame rate detection method, device, equipment and computer-readable storage medium provided above, the disclosed embodiment prints the log information of each frame of the motion effect process, and extracts the frame rate information from the log information to analyze the motion effect performance. These frame rate information include at least the number of dropped frames, the instantaneous refresh rate and the stability of the motion effect frame rate. Through the above method, more frame rate information can be obtained to evaluate the frame rate stability performance, thereby improving the reliability of the frame rate detection results. Furthermore, in some embodiments, by performing weighted operations on the number of dropped frames, the instantaneous refresh rate and the stability of the motion effect frame rate, and evaluating the frame rate performance based on the obtained evaluation value, the evaluation effect of the frame rate performance is more reliable and intuitive. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] By reading the detailed description below with reference to the accompanying drawings, the above and other objects, features and advantages of the exemplary embodiments of the present disclosure will become readily understood. In the accompanying drawings, several embodiments of the present disclosure are shown in an exemplary and non-limiting manner, and the same or corresponding reference numerals represent the same or corresponding parts, wherein:

[0018] Figure 1 A flow chart of a method for detecting a frame rate according to an embodiment of the present disclosure is shown;

[0019] Figure 2 A flow chart of a method for detecting a frame rate according to another embodiment of the present disclosure is shown;

[0020] Figure 3 A flow chart of a method for detecting a frame rate according to another embodiment of the present disclosure is shown;

[0021] Figure 4 An exemplary structural diagram showing a frame rate testing device according to an embodiment of the present disclosure;

[0022] Figure 5 An exemplary structural block diagram of a frame rate testing device according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0023] The following will be combined with the drawings in the embodiments of the present disclosure to clearly and completely describe the technical solutions in the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present disclosure.

[0024] It should be understood that the terms "include" and "comprising" used in the specification and claims of the present disclosure indicate the presence of described features, integers, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or collections thereof.

[0025] It should also be understood that the terms used in this disclosure are only for the purpose of describing specific embodiments and are not intended to limit the disclosure. As used in this disclosure and claims, the singular forms of "a", "an", and "the" are intended to include the plural forms unless the context clearly indicates otherwise. It should also be further understood that the term "and / or" used in this disclosure and claims refers to any combination of one or more of the associated listed items and all possible combinations, including these combinations.

[0026] As used in this specification and claims, the term "if" may be interpreted as "when" or "uponce" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrases "if it is determined" or "if [described condition or event] is detected" may be interpreted as meaning "uponce it is determined" or "in response to determining" or "uponce [described condition or event] is detected" or "in response to detecting [described condition or event]," depending on the context.

[0027] The specific implementation of the present disclosure is described in detail below with reference to the accompanying drawings.

[0028] Figure 1 is a flow chart showing a method 100 for detecting a frame rate according to an embodiment of the present disclosure.

[0029] like Figure 1 As shown in , at step S101, the log information of each frame of the dynamic effect process is printed. In some embodiments, the above process may occur in the process of calling the code to be tested to execute the test case. The code to be tested may be any code snippet that needs to be tested for frame rate, such as an application, a web page interface, etc. In the code to be tested, there are usually many classes defined by developers. These classes encapsulate operation data, functions, data descriptions, etc. to implement various functions. Taking the dynamic effect UI (User Interface, user interface) dynamic effect class as an example, it can implement different types of dynamic effect functions (such as fade in and fade out, zoom, etc.). In addition, the dynamic effect class can also support the pause, resume and reverse playback of the dynamic effect through the dynamic effect function set by itself, so that the dynamic effect has a natural and smooth visual effect. These dynamic effects are often accompanied by frame rate changes during operation, and whether the frame rate performance is stable or not also means whether the presentation effect of the dynamic effect is smooth. Therefore, a frame rate performance test is required for such code to be tested to verify the dynamic effect presentation effect. During the test process, the log information of each frame in the dynamic effect process needs to be printed out so that the frame rate information for frame rate performance analysis can be extracted therefrom later.

[0030] It is understandable that the code to be tested can execute test cases under the test framework. The test framework or test case may contain log printing statements to record log information such as key steps, variable values, and execution results during the program execution process. Furthermore, in order to make the printed log information contain not only ordinary test information, but also the frame rate information of each frame of the animation process, it can be achieved by pre-modifying the control element (that is, the animation class) in the code to be tested. As a feasible implementation method, the control element in the code to be tested can be modified to a motion effect frame rate information processing class. The motion effect frame rate information processing class can record the frame rate information of each frame when the motion effect is running, such as duration, number of frames, etc., so that when the motion effect function of the code to be tested executes the test case, the key log containing the frame rate information of each frame in the motion effect process is printed out.

[0031] In the above embodiment, by modifying the control unit in the code to be tested into a motion effect frame rate information processing class, when executing the test case, the printed log information can contain the frame rate information of each frame of the motion effect process, thereby facilitating subsequent frame rate performance analysis.

[0032] Next, the process enters step S102. At this step, the frame rate information in the log information is extracted. In some embodiments, the log information not only includes the start of the test, the end of the test, the execution time of each step, the test step input data and the execution status, but also includes the frame rate information of each frame of the dynamic effect process. These frame rate information include at least the number of dropped frames, the instantaneous refresh rate, and the stability of the dynamic effect frame rate. These frame rate information can reflect the frame rate performance from different levels, and therefore can be used as an evaluation indicator for evaluating frame rate performance. Among them, the number of dropped frames can directly reflect the smoothness of the dynamic effect. The instantaneous refresh rate can provide an accurate reflection of the frame rate performance of the dynamic effect at a specific moment. The stability of the dynamic effect frame rate can reflect the performance of the frame rate in long-term operation. In addition, the frame rate information can also include the rendering time of each frame, etc. Before using the above-mentioned types of frame rate information for dynamic effect performance analysis, it is necessary to extract it from the log information.

[0033] Furthermore, in a feasible implementation, after determining the log format (such as timestamp, content type), use the corresponding text processing tool or programming language to write a regular expression based on pre-set frame rate-related keywords. Then use it to find relevant key logs from the log information and perform summary processing. Next, these key logs will be forwarded to the result analysis unit, which will calculate various frame rate evaluation indicators in the frame rate information based on the content in the key logs, such as the number of dropped frames, instantaneous refresh rate, and dynamic frame rate stability. In this implementation, by extracting frame rate information containing various frame rate evaluation indicators, a more reliable evaluation basis is provided for subsequent frame rate performance analysis, so that more reliable results can be analyzed.

[0034] Finally, the process comes to step S103. According to the frame rate information, the performance of the motion effect is analyzed. In some embodiments, the frame rate information includes data such as the number of dropped frames, the instantaneous frame rate refresh rate, and the stability of the motion effect frame rate, which can reflect the playback effect of the motion effect at different levels. For example, the number of dropped frames reflects the degree of stuttering in the playback of the motion effect. The instantaneous refresh rate reflects the frame rate that the display device can achieve at a certain moment. Large fluctuations in the instantaneous refresh rate may bring an unstable visual experience. Whether the instantaneous refresh rate is stable means whether the motion effect playback process is smooth. The stability of the motion effect frame rate reflects the degree of fluctuation of the motion effect frame rate over a period of time. High stability often means that the motion effect maintains a relatively consistent frame rate during playback, and the visual effect provided is relatively smooth.

[0035] Furthermore, the above-mentioned various frame rate information is comprehensively analyzed and used to comprehensively evaluate the frame rate performance of the animation effect. As a feasible implementation method, various frame rate information can be weighted averaged, and the obtained evaluation value can be used to evaluate the frame rate performance of the animation effect. Since multiple frame rate data are involved in the calculation process, the analysis result is more accurate and reliable.

[0036] In addition, in some other embodiments, the frame rate information also includes the rendering time per frame, that is, the rendering time of each frame. Therefore, the performance of the dynamic effect can also be analyzed based on the rendering time per frame. That is, the impact of each group of dynamic effects or operations on the frame rate is analyzed to determine which specific group of dynamic effects (that is, target dynamic effects) or operations (target operations) cause the frame rate to fluctuate. The rendering time per frame refers to the time required to process and generate a single frame image when rendering an image, that is, the reciprocal of the frame rate. At an ideal frame rate, the rendering time of each frame also has a corresponding ideal value. For example, the ideal value of the rendering time per frame at a frame rate of 60 is approximately 16.67ms. In the actual rendering process, if the rendering time per frame is greater than this value, it may cause frame drops, making the picture not smooth. In this regard, by querying the rendering time per frame, the impact of different dynamic effects or operations on the frame rate performance can be known. If the rendering time fluctuates significantly between different frames, that is, the rendering time of some frames is very long and other frames are relatively short, it means that some operations or dynamic effects may cause frame rate fluctuations at certain times. For example, long animations or complex calculations may cause some frames to take significantly longer than normal to render, resulting in stuttering.

[0037] Furthermore, in a feasible implementation, a frame time graph can be constructed based on the rendering time of each frame, and the frame time graph can be used to analyze the impact of each group of animations and operations on the frame rate performance. The frame time graph can display the rendering time distribution of the rendering process, and provide a timeline of each animation and operation event. The time required for rendering each frame is queried through the frame time graph. If the rendering time of a frame is higher than a preset threshold, it may be the source of the frame rate fluctuation. Next, determine and check the animations or operations involved in the rendering process of the frame, so as to identify the target animations or target operations that take up a lot of rendering time.

[0038] Figure 2 FIG. 2 is a flow chart showing a method 200 for detecting a frame rate according to another embodiment of the present disclosure. It should be noted that: Figure 2 The frame rate detection method shown in the figure can be combined with the above Figure 1 A specific embodiment of the method 100 described above is therefore combined with Figure 1 The description also applies to the following Figure 2 Description of each step.

[0039] like Figure 2 As shown, at step S210, the log information of each frame of the dynamic effect process is printed. In some embodiments, step S210 also includes: at step S211, when executing the test case, based on the control element that controls the dynamic effect process, the screen refresh signal in the dynamic effect process is monitored. In this embodiment, in addition to some basic functional test cases, the test case also includes frame rate performance test cases, such as resolution change test, graphics setting impact test, multi-task test, etc. These test cases are used to cover the measurement and analysis of frame rate. The test case contains an assertion statement to verify whether the output of the code to be tested meets expectations. In the process of executing the test case, the control element in the code to be tested, that is, the previously modified dynamic effect frame rate information processing class, can monitor the screen refresh signal in the dynamic effect process. The screen refresh signal is used to control the number of times the display refreshes the image per second, which can describe the frequency at which the display updates the image. After each frame of the image is displayed, the display will refresh and prepare to display the next frame. By monitoring the screen refresh signal, the frame rate information of each frame can be obtained.

[0040] Further, in a feasible implementation, the animation frame rate information processing class can be the AnimationHandler (a class name) class. The AnimationHandler class is used to manage and control the playback, update and status of animations in game development and animation systems. When executing test cases, regardless of whether the animation process drops frames, this class can print out the frame rate information of each frame of the animation process. The AnimationHandler class not only includes various animation functions, but also includes a animation update management class, namely the Choreographer (a class name) class. When the animation function is called to execute the test case, the AnimationHandler class will register a callback function through the Choreographer class to listen for the next screen refresh signal. Once the screen refresh signal is received, the interface or object for processing the frame callback will be called to start processing the animation of the current frame. In the interface or object for processing the frame callback, the AnimationHandler will traverse all ongoing attribute animations, update and record the status of each animation according to the current time. At the same time, for each animation, its performance in the current frame is calculated, and corresponding attribute changes, such as position, transparency, etc., are applied. After processing all the animations, if there are any unfinished animations, AnimationHandler will register the next refresh signal through Choreographer again to keep the animations playing smoothly. This process will continue until all the animations are finished. During the whole process, the frame rate changes during the screen signal refresh process are recorded in the log information for subsequent evaluation.

[0041] Optionally, in other feasible implementations, the animation frame rate information processing class may also be any class that can record the frame rate information of each frame of the animation, and no further limitations are made here.

[0042] Then, at step S212, the log information of each frame of the dynamic effect process is printed according to the monitored screen refresh signal and the execution data of the test case. In some embodiments, the execution of the test case by the code to be tested is carried out under the test framework, and the test framework also has recording and output functions. Therefore, in the process of executing the test case, the detected screen refresh signal and the execution data of the test case will be printed together in the log information. Among them, the execution data can be detailed information such as test case information, the start and end of the test, the execution time of each step, the test step input data and the execution status. In the subsequent process, the log content recording the screen refresh signal will be used as a key log to extract the frame rate information of each frame.

[0043] In addition, step S220 and step S230 can be combined with the above Figure 1The described steps S102 and S103 are the same or similar and will not be described in detail here.

[0044] On this basis, the monitored screen refresh signal is recorded in the log information. In some embodiments, the key logs recording the screen refresh signal will also be extracted and forwarded to the result analysis unit, which will calculate various frame rate information based on the content in the key logs, such as the number of dropped frames, instantaneous refresh rate, and the stability of the frame rate of the dynamic effect. Take the three frame rate information of the number of dropped frames, the instantaneous refresh rate, and the stability of the dynamic effect frame rate as an example. The number of dropped frames reflects the degree of stuttering of the dynamic effect playback. When calculating, the refresh time of each frame can be determined according to the screen refresh signal, and then the time difference between each frame can be determined according to the refresh time of each frame. The time difference between each frame can be used to calculate the number of frames actually refreshed during a set of dynamic effects. The expected number of frames is subtracted from the actual number of refreshed frames to obtain the number of dropped frames of the group of dynamic effects. Furthermore, the instantaneous refresh rate reflects the frame rate that the display device can achieve at a certain moment. Large fluctuations in the instantaneous refresh rate may bring an unstable visual experience. Whether the instantaneous refresh rate is stable means whether the dynamic effect playback process is smooth. When calculating the instantaneous refresh rate, the time corresponding to all frame rates can be determined according to the screen refresh signal. Based on the time corresponding to all frame rates, the instantaneous refresh rate at each time point in the dynamic effect process can be calculated by differential calculation. Furthermore, the stability of the dynamic effect frame rate reflects the degree of fluctuation of the dynamic effect frame rate over a period of time. High stability often means that the dynamic effect maintains a relatively consistent frame rate during playback, and the visual effect provided is relatively smooth. When calculating the stability of the dynamic effect frame rate, the standard deviation of the instantaneous refresh rate and the average refresh rate can be calculated, and the standard deviation is used as the stability of the dynamic effect frame rate. In another feasible implementation, the absolute deviation of the median data between the instantaneous instantaneous refresh rate and the median refresh rate can also be calculated, and the median absolute deviation is used as the stability of the dynamic effect frame rate. For the standard deviation value, the larger the value, the more unstable the frame rate performance. The median absolute deviation excludes individual extreme values, and the larger the value, the more unstable the frame rate performance.

[0045] In the above embodiment, by calculating a variety of frame rate evaluation indicators and using them for subsequent analysis of the motion effect frame rate performance, the analysis results can be made more comprehensive and reliable.

[0046] Figure 3 FIG. 1 is a flow chart showing a method for detecting a frame rate according to another embodiment of the present disclosure. As can be seen from the following description, Figure 3 The frame rate detection method shown in the figure can be combined with the above Figure 1 A specific manifestation of the method described, so the above combined Figure 1 The description also applies to the following Figure 3 Description of each step. Figure 3The frame rate detection method 300 shown includes: at step S310, printing the log information of each frame of the dynamic effect process. At step S320, extracting the frame rate information in the log information. And, at step S330, analyzing the dynamic effect performance according to the frame rate information. In some embodiments, step S330 also includes: at step S331, obtaining the weight values ​​corresponding to the number of dropped frames, the instantaneous refresh rate, and the stability of the dynamic effect frame rate.

[0047] In the frame rate evaluation, the weight value is used to indicate the relative importance of different frame rate information in the comprehensive score. The weight value of different frame rate information determines the degree of its own influence on the final frame rate performance analysis. As a feasible implementation method, different weight values ​​can be assigned in advance according to the degree of influence of the number of dropped frames, instantaneous refresh rate, and dynamic frame rate stability on the frame rate performance evaluation. Exemplarily, the weight of the number of dropped frames is 0.3; the weight of the instantaneous refresh rate is 0.4; the weight of the dynamic frame rate stability is 0.3. When it is necessary to evaluate the frame rate performance, the pre-set weight values ​​corresponding to the above-mentioned types of frame rate information can be obtained for subsequent weighted operations. It can be understood that the weight values ​​of the above data can be set according to the actual situation, and there are no excessive restrictions on their specific values ​​here.

[0048] Next, at step S332, based on the weight value, the number of dropped frames, instantaneous refresh rate, and animation frame rate stability are weighted to obtain an evaluation value. After obtaining the number of dropped frames, instantaneous refresh rate, animation frame rate stability, and their corresponding weight values, a weighted formula can be used to calculate the comprehensive evaluation value. The specific calculation method is to multiply each parameter by its corresponding weight, and then add the results to form a total score. In a feasible implementation, the result analysis unit can calculate according to the following calculation method:

[0049] S = (weight value of dropped frame number × weight value of dropped frame number) + (weight value of instantaneous refresh rate × instantaneous refresh rate) + (weight value of motion effect frame rate stability × motion effect frame rate stability), where S represents the final evaluation value.

[0050] It is understandable that for other frame rate performance evaluation indicators in the frame rate information, weighted calculations may also be performed in the above manner, which will not be described in detail here.

[0051] Finally, at step S333, the frame rate performance of the dynamic effect is evaluated based on the evaluation value. In some embodiments, the evaluation value can be analyzed according to preset standards. Among them, the evaluation value is positively correlated with the dynamic effect frame rate performance, and the higher the value, the better the performance. By comparing the data of different dynamic effects and time periods, potential problems with frame rate performance are identified. Furthermore, in a feasible implementation, thresholds can be set for the evaluation values ​​first according to preset standards. These thresholds can be minimum acceptable levels, good levels, and excellent levels. The obtained evaluation value is compared with the preset threshold. If the evaluation value is higher than a certain standard, it indicates that the frame rate performance is good; if it is lower than the standard, it indicates that the frame rate performance of the current dynamic effect needs further analysis of the cause. In this implementation, the evaluation value obtained by performing a weighted average operation on the above data can be used to evaluate the frame rate performance of the dynamic effect, and because multiple frame rate data are involved in the calculation process, the evaluation result is more accurate and reliable.

[0052] Reference Figure 4 The disclosed embodiment also provides a frame rate device 400, including: a printing module 410, used to print the log information of each frame of the dynamic effect process; an extraction module 420, used to extract the frame rate information in the log information, and the frame rate information at least includes the number of dropped frames, the instantaneous refresh rate and the stability of the dynamic effect frame rate; an analysis module 430, used to analyze the dynamic effect performance according to the frame rate information.

[0053] Figure 5 FIG. 1 is a schematic diagram showing a system for testing a frame rate according to an embodiment of the present disclosure. Figure 5 As shown, the system 500 may include a frame rate test device 501 according to an embodiment of the present disclosure, as well as its peripheral devices and an external network, to achieve the aforementioned combination Figure 1 - Figure 3 The described method for detecting frame rate according to the embodiment of the present disclosure.

[0054] like Figure 5 As shown in , the test device 501 for frame rate may include a CPU 511, which may be a general-purpose CPU, a dedicated CPU, or other information processing and program execution unit. Further, the test device 501 for frame rate may also include a large-capacity memory 512 and a read-only memory ROM 513, wherein the large-capacity memory 512 may be configured to store various types of data. In the disclosed embodiment, a test result log, a key log, frame rate information, a number of dropped frames, etc. may be included. In addition, ROM 513 may be configured to store the initialization of each functional module of the test device 501 for frame rate, the driver program of the basic input / output of the system, and the data required to boot the operating system.

[0055] Furthermore, the system 500 may also include other hardware platforms or components, such as the tensor processing unit (TPU) 514, the image processing unit (GPU) 515, the field programmable gate array (FPGA) 516, and the machine learning unit (MLU) 517. It is understood that although a variety of hardware platforms or components are shown in the system 500, they are merely exemplary and not restrictive, and those skilled in the art may add or remove corresponding hardware according to actual needs.

[0056] The test device 501 for frame rate also includes a communication interface 518, so that it can be connected to a local area network / wireless local area network (LAN / WLAN) 505 through the communication interface 518, and then connected to a local server 506 or to the Internet ("Internet") 505 through the LAN / WLAN. Alternatively or additionally, the test device 501 for frame rate of the disclosed embodiment can also be directly connected to the Internet or a cellular network based on wireless communication technology through the communication interface 518, such as wireless communication technology based on the third generation ("3G"), the fourth generation ("4G") or the fifth generation ("5G") . In some application scenarios, the test device 501 for frame rate can also access a server 508 of an external network and a possible database 509 as needed to obtain various known data such as test result logs, key logs, frame rate information, etc.

[0057] The peripheral equipment of the test equipment 501 for frame rate may include a display device 502, an input device 503 and a data transmission interface 504. In one embodiment, the display device 502 may include, for example, one or more speakers and / or one or more visual displays, which are configured to perform voice prompts and / or image video display on the computing process or final result of the test equipment disclosed herein. The input device 503 may include, for example, a keyboard, a capture camera, or other input buttons or controls, which are configured to receive input or user instructions for detecting the call status. The data transmission interface 504 may include, for example, a serial interface, a parallel interface or a universal serial bus interface ("USB"), a small computer system interface ("SCSI"), a serial ATA, a FireWire ("FireWire"), a PCI Express and a high-definition multimedia interface ("HDMI"), etc., which are configured for data transmission and interaction with other devices or systems. According to the scheme disclosed herein, the data transmission interface 504 can transmit interactive information, control signals, images to be detected, and detection results. The CPU 511, the mass storage 512, the read-only memory ROM 513, the TPU 514, the GPU 515, the FPGA 516, the MLU 517 and the communication interface 518 of the test device 501 for frame rate disclosed herein can be connected to each other through a bus 519, and data interaction with peripheral devices can be achieved through the bus. In one embodiment, through the bus 519, the CPU 511 can control other hardware components and peripheral devices in the test device 501 for frame rate.

[0058] It should also be understood that any module, unit, component, server, computer, terminal or device that executes instructions of the disclosed examples may include or otherwise access computer-readable media, such as storage media, computer storage media or data storage devices (removable and / or non-removable) such as disks, optical disks or tapes. Computer storage media may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information, such as computer-readable instructions, data structures, program modules or other data.

[0059] The present disclosure also discloses a computer-readable storage medium, in which program instructions are stored, and the program instructions are suitable for being loaded and executed by a processor: printing the log information of each frame of the dynamic effect process; extracting the frame rate information in the log information, and the frame rate information at least includes the number of dropped frames, the instantaneous refresh rate and the stability of the dynamic effect frame rate; analyzing the dynamic effect performance according to the frame rate information. Based on this, when the scheme of the present disclosure is embodied in the form of a software product (computer-readable storage medium), the software product can be stored in a memory, which may include a number of instructions to enable a computer device (such as a personal computer, a server or a network device, etc.) to perform some or all of the steps of the method described in the embodiment of the present disclosure. The aforementioned memory may include, but is not limited to, various media that can store program codes, such as a U disk, a flash drive, a read-only memory ROM, a random access memory ("Random Access Memory", abbreviated as RAM), a mobile hard disk, a magnetic disk or an optical disk.

[0060] Although multiple embodiments of the present disclosure have been shown and described herein, it will be apparent to those skilled in the art that such embodiments are provided by way of example only. Those skilled in the art may think of many changes, modifications, and alternatives without departing from the thought and spirit of the present disclosure. It should be understood that in the process of practicing the present disclosure, various alternatives to the embodiments of the present disclosure described herein may be adopted. The attached claims are intended to define the scope of protection of the present disclosure, and therefore cover equivalents or alternatives within the scope of these claims.

Claims

1. A frame rate testing method, characterized in that: include: Print the log information of each frame of the animation process; Extracting frame rate information from the log information, wherein the frame rate information includes at least the number of dropped frames, the instantaneous refresh rate, and the stability of the dynamic frame rate; The motion effect performance is analyzed according to the frame rate information.

2. The testing method according to claim 1, characterized in that: The log information of each frame of the printing animation process includes: When executing the test case, based on the control element controlling the dynamic effect process, the screen refresh signal in the dynamic effect process is monitored; According to the monitored screen refresh signal and the execution data of the test case, the log information of each frame of the motion effect process is printed.

3. The testing method according to claim 2, characterized in that: The method for calculating the number of dropped frames includes: Determining the time difference between each frame according to the screen refresh signal; The number of dropped frames is calculated according to the time difference of each frame.

4. The testing method according to claim 2, characterized in that: The instantaneous refresh rate calculation method further includes: Determining the time corresponding to all frame rates according to the screen refresh signal; Based on the time corresponding to all the frame rates, the instantaneous refresh rate at each time point is calculated by differentiation.

5. The testing method according to claim 1, characterized in that: The calculation method of the dynamic effect frame rate stability includes: Calculate the standard deviation of the instantaneous refresh rate and the average refresh rate as the stability of the motion effect frame rate; Alternatively, the median absolute deviation between the instantaneous refresh rate and the median refresh rate is calculated as the motion effect frame rate stability.

6. The testing method according to claim 1, characterized in that: Analyzing the motion effect performance according to the frame rate information includes: Obtain the weight values ​​corresponding to the number of dropped frames, instantaneous refresh rate, and animation frame rate stability respectively; Based on the weight value, the number of dropped frames, the instantaneous refresh rate and the stability of the motion effect frame rate are weighted to obtain an evaluation value; Based on the evaluation value, the motion effect frame rate performance is evaluated, wherein the evaluation value is positively correlated with the motion effect frame rate performance.

7. The testing method according to claim 1, characterized in that: The frame rate information also includes the rendering time of each frame, and the analyzing the motion effect performance according to the rendering time of each frame also includes: According to the rendering time of each frame, the influence of each group of animations or operations on the frame rate is analyzed to determine the target animations or target operations that cause the frame rate fluctuation.

8. A frame rate testing device, characterized in that: include: Printing module, used to print log information of each frame of the animation process; An extraction module, used to extract frame rate information from the log information, wherein the frame rate information at least includes the number of dropped frames, the instantaneous refresh rate, and the stability of the dynamic effect frame rate; The analysis module is used to analyze the motion effect performance according to the frame rate information.

9. A frame rate testing device, characterized in that: include: processor; A memory storing program instructions for testing a frame rate, wherein when the program instructions are executed by the processor, the testing method according to any one of claims 1 to 7 is implemented.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer program instructions for testing a frame rate. When the computer program instructions are executed by a processor, the testing method according to any one of claims 1 to 7 is implemented.