A liquid crystal display variable refresh rate synchronization method and system

CN122991101APending Publication Date: 2026-10-27FOSHAN KANSHANG ELECTRICAL APPLIANCE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610858068.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-06-15
Publication Date
2026-10-27

AI Technical Summary

Technical Problem

部分方案尝试使用绘制调用次数等单一指标预测帧耗时,但忽略了着色器复杂度、纹理采样数及几何图元量等固件层多维负载因素的交叉影响,预测准确性不足,仍无法消除响应迟滞

Benefits of technology

1.本发明通过直接从图像源设备固件层截取渲染指令流,生成融合绘制调用次数、着色器复杂度、纹理采样数及几何图元量等多维负载参数的渲染复杂度描述符,能准确表征当前帧的真实渲染负载。在此基础上,依据复杂度描述符的变化梯度,主动构建未来帧的复杂度变化曲线,使刷新时序调节具备前瞻性,从渲染负载突变时的被动滞后响应转变为主动提前适配,从根本上消除了因调节延迟导致的画面撕裂与卡顿,显著提升了可变刷新率同步的实时性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122991101A_ABST
    Figure CN122991101A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of refresh control, and discloses a liquid crystal display variable refresh rate synchronization method and system, the method comprising the following steps: generating a rendering complexity descriptor according to a firmware layer rendering instruction of an image source device; constructing a complexity change curve of the image source device according to a change gradient of the rendering complexity descriptor; and adjusting a refresh timing of the image source device according to the complexity change curve; and the application can improve the efficiency of liquid crystal display variable refresh rate synchronization.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of refresh control technology, and in particular to a method and system for synchronizing a variable refresh rate of a liquid crystal display. Background Technology

[0002] Existing variable refresh rate synchronization technologies mostly rely on signal feedback after rendering or historical frame duration statistics to passively adjust the refresh timing. When the rendering load suddenly changes from a simple scene to a heavy-load scene, the single frame time surges. The adjustment mechanism lags due to a lack of forward-looking information about the load of the next frame, resulting in screen tearing, latency, and unevenness. Some solutions attempt to predict frame time using single indicators such as the number of draw calls, but they ignore the cross-influence of multi-dimensional load factors in the firmware layer, such as shader complexity, texture sampling count, and geometric primitive quantity. The prediction accuracy is insufficient, and the response lag cannot be eliminated.

[0003] Existing solutions do not capture the underlying rendering instruction stream sent to the graphics processor in real time from the firmware layer of the image source device. They cannot generate a fine-grained complexity descriptor that integrates multi-dimensional load parameters, and they lack the ability to construct a future frame complexity change curve based on the gradient of descriptor changes. When the rendering complexity is in a continuous upward or downward trend, adjusting the refresh timing only according to the current frame load will inevitably lag behind the trend change. It is impossible to achieve a smooth and early transition of the refresh rate, and the synchronization effect still has obvious lag and unevenness. Therefore, how to improve the efficiency of variable refresh rate synchronization of LCD monitors has become an urgent problem to be solved. Summary of the Invention

[0004] This invention provides a method and system for synchronizing a variable refresh rate of a liquid crystal display to solve the problems mentioned in the background art.

[0005] To achieve the above objectives, the present invention provides a variable refresh rate synchronization method for a liquid crystal display, comprising: S1. Generate a rendering complexity descriptor based on the firmware layer rendering instructions of the image source device; S2. Construct the complexity change curve of the image source device based on the change gradient of the rendering complexity descriptor; S3. Adjust the refresh timing of the image source device according to the complexity change curve.

[0006] In a preferred embodiment, the step of rendering according to the firmware layer instructions of the image source device includes: In the graphics driver layer of the image source device, the rendering instruction stream sent to the graphics processor is intercepted in real time; Extract the number of drawing calls for the current frame, the complexity identifier of the currently bound shader program, the number of texture samplings, and the number of geometric primitives submitted from the rendering instruction stream to obtain multidimensional rendering load data; Each item in the multidimensional rendering load data is normalized to obtain a normalized rendering load parameter set.

[0007] In a preferred embodiment, generating the rendering complexity descriptor includes: Each parameter in the normalized rendering load parameter set is multiplied by a pre-specified weighting coefficient, wherein the weighting coefficient is calibrated offline based on the historical impact of the parameter on the single-frame rendering time. The weighted parameters are summed to obtain the rendering complexity descriptor.

[0008] In a preferred embodiment, the weighting coefficients are calibrated offline based on the historical influence of parameters on single-frame rendering time, including: Obtain the frame rendering time statistics recorded by the graphics processor at the same time as the multidimensional rendering load data when rendering historical frames; The frequency of occurrence of abnormal frames in which the frame rendering time exceeds a preset threshold is calculated by statistically analyzing the number of drawing calls, shader program complexity indicators, texture sampling times, and number of geometric primitive submissions in the multidimensional rendering load data. The ratio of the frequency of each rendering load data in the abnormal frame to the total number of abnormal frames is determined as the weighting coefficient.

[0009] In a preferred embodiment, constructing the complexity change curve of the image source device based on the change gradient of the rendering complexity descriptor includes: Obtain the rendering complexity descriptors corresponding to the previous several consecutive frames to form a rendering complexity descriptor sequence; According to the time order of the frames, the difference between two adjacent rendering complexity descriptors in the rendering complexity descriptor sequence is calculated sequentially to obtain the rendering complexity difference sequence. The direction and steepness of the gradient change are determined based on the sign and magnitude of each difference in the rendering complexity difference sequence.

[0010] In a preferred embodiment, the complexity variation curve of constructing the image source device includes: The rendering complexity difference sequence is statistically analyzed, and the number of positive differences and the number of negative differences are calculated within each sliding window. If the number of positive differences in the current sliding window exceeds the number of negative differences, the direction of the changing gradient is marked as an upward trend, and the cumulative magnitude of the positive differences is recorded. If the number of negative differences in the current sliding window exceeds the number of positive differences, the direction of the changing gradient is marked as a downward trend, and the cumulative magnitude of the negative differences is recorded.

[0011] In a preferred embodiment, the complexity variation curve for constructing the image source device further includes: Based on the direction marking of the change gradient and the cumulative magnitude of the corresponding direction, the persistence and rate of change of the complexity change trend are determined; Starting from the rendering complexity descriptor of the current frame, along the direction of the complexity change trend and according to the change rate, the estimated rendering complexity descriptors corresponding to several consecutive frames are generated. The rendering complexity descriptor of the current frame is concatenated with the estimated rendering complexity descriptor in frame order to obtain the complexity change curve.

[0012] In a preferred embodiment, adjusting the refresh timing of the image source device according to the complexity change curve includes: Read the complexity value of the point corresponding to the current frame on the complexity change curve, and the complexity value of the point corresponding to the next frame; Compare the complexity value of the current frame with the complexity value of the next frame to determine the direction of complexity change; If the complexity changes in an upward direction, then the vertical blank interval of the current frame is shortened, so that the refresh time of the next frame arrives earlier. If the complexity changes in a decreasing direction, the vertical blank interval of the current frame is extended, thus delaying the refresh time of the next frame.

[0013] In a preferred embodiment, adjusting the refresh timing of the image source device includes: Obtain the complexity change magnitude between corresponding points in a consecutive number of frames on the complexity change curve; The single adjustment step size of the vertical blank interval is determined based on the magnitude of the complexity change, wherein the larger the complexity change, the larger the single adjustment step size. The vertical blank interval is adjusted frame by frame using the single adjustment step size, so that the refresh rate gradually transitions to the target value that matches the complexity change curve over multiple consecutive frames.

[0014] To address the above problems, the present invention also provides a variable refresh rate synchronization system for a liquid crystal display, the system comprising: The rendering complexity descriptor generation module is used to generate a rendering complexity descriptor based on the firmware layer rendering instructions of the image source device. The complexity change curve construction module is used to construct the complexity change curve of the image source device based on the change gradient of the rendering complexity descriptor. The refresh timing adjustment module is used to adjust the refresh timing of the image source device according to the complexity change curve.

[0015] Compared with the prior art, the present invention has the following beneficial effects: 1. This invention directly intercepts the rendering instruction stream from the image source device firmware layer to generate a rendering complexity descriptor that integrates multi-dimensional load parameters such as the number of rendering calls, shader complexity, texture sampling count, and geometric primitive quantity. This accurately represents the actual rendering load of the current frame. Based on this, according to the gradient of the complexity descriptor's change, it proactively constructs the complexity change curve for future frames, enabling proactive refresh timing adjustment. This transforms the passive, delayed response to sudden changes in rendering load into proactive, advance adaptation, fundamentally eliminating screen tearing and stuttering caused by adjustment delays, and significantly improving the real-time performance of variable refresh rate synchronization.

[0016] 2. This invention utilizes weighted fusion and trend analysis of multi-dimensional rendering load data to predict the continuous increase or decrease in rendering complexity in advance. It then adjusts the vertical blanking interval gradually, allowing the refresh rate to smoothly transition to the target value over multiple frames, avoiding the unevenness caused by sudden refresh rate changes. This mechanism ensures high accuracy in predicting frame rendering time and smoothness in adjustment actions, effectively reducing additional power consumption and signal jitter during the adjustment process while maintaining image synchronization quality. Attached Figure Description

[0017] Figure 1 This is a flowchart illustrating a variable refresh rate synchronization method for a liquid crystal display according to an embodiment of the present invention. Figure 2 A functional block diagram of a variable refresh rate synchronization system for a liquid crystal display provided in an embodiment of the present invention; The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0018] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

[0019] This application provides a method for synchronizing a variable refresh rate of a liquid crystal display (LCD). The executing entity of this method includes, but is not limited to, at least one of the following electronic devices that can be configured to execute the method provided in this application: a server, a terminal, etc. In other words, the method for synchronizing a variable refresh rate of an LCD can be executed by software or hardware installed on a terminal device or a server device. The server includes, but is not limited to, a single server, a server cluster, a cloud server, or a cluster of cloud servers. The server can be an independent server or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms.

[0020] Reference Figure 1 The diagram shown is a flowchart illustrating a variable refresh rate synchronization method for a liquid crystal display according to an embodiment of the present invention. In this embodiment, the variable refresh rate synchronization method for a liquid crystal display includes: S1. Generate a rendering complexity descriptor based on the firmware layer rendering instructions of the image source device; In this embodiment of the invention, the step of rendering according to the firmware layer instructions of the image source device includes: In the graphics driver layer of the image source device, the rendering instruction stream sent to the graphics processor is intercepted in real time; Extract the number of drawing calls for the current frame, the complexity identifier of the currently bound shader program, the number of texture samplings, and the number of geometric primitives submitted from the rendering instruction stream to obtain multidimensional rendering load data; Each item in the multidimensional rendering load data is normalized to obtain a normalized rendering load parameter set.

[0021] The generation of the rendering complexity descriptor includes: Each parameter in the normalized rendering load parameter set is multiplied by a pre-specified weighting coefficient, wherein the weighting coefficient is calibrated offline based on the historical impact of the parameter on the single-frame rendering time. The weighted parameters are summed to obtain the rendering complexity descriptor.

[0022] The weighting coefficients are calibrated offline based on the historical impact of parameters on single-frame rendering time, including: Obtain the frame rendering time statistics recorded by the graphics processor at the same time as the multidimensional rendering load data when rendering historical frames; The frequency of occurrence of abnormal frames in which the frame rendering time exceeds a preset threshold is calculated by statistically analyzing the number of drawing calls, shader program complexity indicators, texture sampling times, and number of geometric primitive submissions in the multidimensional rendering load data. The ratio of the frequency of each rendering load data in the abnormal frame to the total number of abnormal frames is determined as the weighting coefficient.

[0023] Within the graphics driver layer of the image source device itself, a dedicated instruction capture and listening node is pre-established. This node is seamlessly connected to the instruction transmission module of the graphics driver layer and directly accesses the core link channel for transmitting rendering instructions from the system to the graphics processor. The listening node is active throughout the process, without interrupting the instruction transmission process or affecting the normal rendering work of the graphics processor. It captures every rendering instruction sent forward to the graphics processor in real time and caches the captured instructions immediately to ensure the integrity and real-time performance of the rendering instruction stream, thus achieving real-time interception of the rendering instruction stream sent to the graphics processor.

[0024] The entire content of the captured rendering instruction stream is traversed, the frame data boundaries are sorted out frame by frame and the instruction interval corresponding to the current frame is locked. The number of drawing calls for the current frame is obtained by summarizing the instructions in the interval. The inherent attributes of the shader program currently in the binding state are identified and read and the corresponding complexity identifier is generated. The frequency of the behavior triggered by the sampling of texture resources is counted to obtain the number of texture samplings. The total number of basic geometric units received and submitted is counted to obtain the number of geometric primitive submissions. The four types of information are integrated to generate multi-dimensional rendering load data.

[0025] The original value range of each data item in the multidimensional rendering load data is clearly defined, and a unified benchmark interval is determined. For the four data items—the number of draw calls, the complexity identifier of the currently bound shader program, the number of texture samples, and the number of geometric primitive submissions—each original data item is aligned in magnitude and normalized in range according to the correspondence between its original value range and the unified benchmark interval. Each original data item is converted into a corresponding value within the unified benchmark interval to ensure that all data items are on the same measurement scale. After normalization, the normalized data items are combined and arranged in sequence according to the original data structure of the multidimensional rendering load data to generate a normalized rendering load parameter set.

[0026] The system sequentially reads all parameters contained in the normalized rendering load parameter set, collects historical running records of the single-frame rendering time corresponding to various parameters under different rendering conditions, identifies the actual level of influence of each type of parameter on the single-frame rendering time, completes fixed offline calibration work according to the level of influence, matches a unique fixed weight coefficient for each type of parameter in the normalized rendering load parameter set, and then performs corresponding matching calculations on each parameter in the normalized rendering load parameter set with its own pre-specified weight coefficient.

[0027] The system summarizes all parameters after weight matching calculations, and then sequentially integrates all weighted parameters, fully incorporating each weighted parameter without any deletions or omissions. After integration, the system directly generates the rendering complexity descriptor.

[0028] The system retrieves the complete time records of each historical frame rendered by the graphics processor during its daily operation, performs time-series normalization in strict chronological order, accurately matches the time nodes that are completely synchronized with the data collection time of the multi-dimensional rendering load, strictly locks the corresponding frame rendering time information within the same time period, and completes the extraction, organization, and long-term archiving of the corresponding frame rendering time statistics to ensure that the time sequence matching is not misaligned and the time consumption records are not missing.

[0029] A unified and fixed time consumption threshold is pre-set according to the device's rendering operation conditions. The frame rendering time consumption records of all historical frames are traversed frame by frame. The time consumption of each frame is compared and screened one by one. All abnormal frames whose frame rendering time exceeds the fixed threshold are completely screened out and stored separately. Within the scope of all the abnormal frames that have been screened out, the four data items included in the multi-dimensional rendering load data are matched one by one: the number of drawing calls, the shader program complexity identifier, the number of texture samplings, and the number of geometric primitives submitted. The specific number of times each rendering load data item actually appears in all abnormal frames is counted and statistically analyzed, and the statistical results are completely retained and filed.

[0030] The total number of all abnormal frames that have been accurately counted and categorized is determined. The frequency of occurrence of each type of rendering load data in the abnormal frames is statistically analyzed and correlated with the total number of abnormal frames. The fixed proportion relationship formed by the two is directly used as the weight coefficient of the corresponding rendering load data category. The weight coefficient is determined, solidified and stored to ensure that the source of the weight coefficient is objective and close to the actual rendering conditions.

[0031] The beneficial effects are as follows: by directly and in real-time intercepting the rendering command stream sent to the graphics processor at the graphics driver layer of the image source device, it is possible to accurately capture the underlying real rendering behavior data, avoiding information loss and latency issues caused by upper-layer data forwarding. Multi-dimensional rendering load data is constructed based on extracted core rendering metrics, and then normalized to form a normalized rendering load parameter set with a unified measurement standard, ensuring that various rendering load data have comparable benchmarks. By filtering abnormal frames based on historical frame rendering time statistics, calculating the frequency of each rendering load data in abnormal frames, and offline calibrating weight coefficients based on the correspondence between frequency and the total number of abnormal frames, the weight coefficients can be made to perfectly reflect the actual impact of various load data on single-frame rendering time, avoiding subjective bias from manually setting weights.

[0032] S2. Construct the complexity change curve of the image source device based on the change gradient of the rendering complexity descriptor; In this embodiment of the invention, constructing the complexity change curve of the image source device based on the change gradient of the rendering complexity descriptor includes: Obtain the rendering complexity descriptors corresponding to the previous several consecutive frames to form a rendering complexity descriptor sequence; According to the time order of the frames, the difference between two adjacent rendering complexity descriptors in the rendering complexity descriptor sequence is calculated sequentially to obtain the rendering complexity difference sequence. The direction and steepness of the gradient change are determined based on the sign and magnitude of each difference in the rendering complexity difference sequence.

[0033] The complexity variation curve for constructing the image source device includes: The rendering complexity difference sequence is statistically analyzed, and the number of positive differences and the number of negative differences are calculated within each sliding window. If the number of positive differences in the current sliding window exceeds the number of negative differences, the direction of the changing gradient is marked as an upward trend, and the cumulative magnitude of the positive differences is recorded. If the number of negative differences in the current sliding window exceeds the number of positive differences, the direction of the changing gradient is marked as a downward trend, and the cumulative magnitude of the negative differences is recorded.

[0034] The complexity variation curve for constructing the image source device also includes: Based on the direction marking of the change gradient and the cumulative magnitude of the corresponding direction, the persistence and rate of change of the complexity change trend are determined; Starting from the rendering complexity descriptor of the current frame, along the direction of the complexity change trend and according to the change rate, the estimated rendering complexity descriptors corresponding to several consecutive frames are generated. The rendering complexity descriptor of the current frame is concatenated with the estimated rendering complexity descriptor in frame order to obtain the complexity change curve.

[0035] From the historical records of generated and stored rendering complexity descriptors, the rendering complexity descriptor corresponding to the current frame is accurately located. Based on this, the rendering complexity descriptors corresponding to several consecutive frames before the current frame are retrieved. This ensures that each retrieved rendering complexity descriptor corresponds one-to-one with the corresponding frame. Then, all retrieved rendering complexity descriptors are arranged in order according to the chronological order of the generation of each frame, resulting in a temporally consistent sequence of rendering complexity descriptors.

[0036] According to the sequential order of the frames, two adjacent sets of rendering complexity descriptors in the rendering complexity descriptor sequence are extracted in turn. The numerical differences of the subsequent rendering complexity descriptors are compared with the preceding rendering complexity descriptors as a reference. The difference comparison of all adjacent descriptors in the sequence is completed one by one. The difference results obtained from each comparison are arranged in order to form a complete rendering complexity difference sequence.

[0037] The algorithm identifies the positive or negative attribute of each difference value within the rendering complexity difference sequence. If the difference is positive, the direction of the gradient change is determined to be upward; if the difference is negative, the direction of the gradient change is determined to be downward. This accurately defines the offset direction of the overall gradient change. At the same time, the algorithm distinguishes the strength level of fluctuation corresponding to each difference value. The larger the difference value, the stronger the fluctuation and the steeper the corresponding gradient change. The smaller the difference value, the weaker the fluctuation and the gentler the corresponding gradient change. The algorithm intuitively defines the steepness of the gradient change based on the inherent attribute characteristics of the difference.

[0038] The rendering complexity difference sequence is segmented according to a fixed window range. The difference sequence content covered by each sliding window is locked one by one. Within a single sliding window, the category of each difference is identified one by one. The actual number of positive differences and negative differences are counted separately. The complete statistical record of the number of the two types of differences within each sliding window is completed.

[0039] The number of positive differences and negative differences that have been counted in the current sliding window are compared. When the determination that the number of positive differences is greater than the number of negative differences is true, the direction of the change gradient corresponding to the current interval is marked with an upward trend. At the same time, the amplitude performance of each positive difference in the current sliding window is summarized, integrated and collected to form a complete cumulative amplitude of positive differences and stored.

[0040] The two types of differences counted in the current sliding window are compared and judged. When the judgment result that the number of negative differences is greater than the number of positive differences is true, the direction of the change gradient corresponding to the current interval is marked with a downward trend. At the same time, the amplitude performance corresponding to all negative differences in the current sliding window is collected and integrated, and a unified summary is formed to form the cumulative amplitude of negative differences and complete the special record storage.

[0041] Retrieve the marked gradient directions and their cumulative magnitudes, and combine this with the distribution of differences within the sliding window to determine the duration during which the gradient directions remain consistent, thereby determining the persistence of the complexity change trend. Simultaneously, based on the correspondence between the cumulative magnitudes and durations of the corresponding directions, determine the rate of change of complexity per unit time, and thus determine the rate of change.

[0042] Lock the rendering complexity descriptor corresponding to the current frame and use it as the starting point for generating the estimated descriptor. Strictly follow the determined direction of complexity change and, according to the defined rate of change, gradually calculate and generate the estimated rendering complexity descriptors for each of the subsequent consecutive frames, ensuring that each estimated rendering complexity descriptor matches the temporal position of the corresponding frame.

[0043] The rendering complexity descriptor of the current frame and all the generated estimated rendering complexity descriptors are analyzed. These descriptors are then connected one by one in strict chronological order of the frames to form a complexity change curve that can fully reflect the change pattern of the complexity of the current and estimated frames.

[0044] The beneficial effects include: constructing a sequence of rendering complexity descriptors across multiple consecutive frames and calculating the difference sequence to accurately capture real-time fluctuations in rendering complexity; clarifying the gradient of change based on the difference features; and providing reliable underlying data support for trend judgment. By using a sliding window to statistically analyze positive and negative differences, marking trends, and recording cumulative amplitudes, instantaneous fluctuations are effectively filtered out, and the overall trend of rendering complexity changes is stably locked. Based on the gradient direction and cumulative amplitude, the change trend and rate are determined, and a prediction descriptor is generated to construct a complexity change curve, fully presenting the rendering load change pattern and providing a precise and reliable basis for dynamic adjustment of the variable refresh rate of LCD monitors.

[0045] S3. Adjust the refresh timing of the image source device according to the complexity change curve.

[0046] In this embodiment of the invention, adjusting the refresh timing of the image source device according to the complexity change curve includes: Read the complexity value of the point corresponding to the current frame on the complexity change curve, and the complexity value of the point corresponding to the next frame; Compare the complexity value of the current frame with the complexity value of the next frame to determine the direction of complexity change; If the complexity changes in an upward direction, then the vertical blank interval of the current frame is shortened, so that the refresh time of the next frame arrives earlier. If the complexity changes in a decreasing direction, the vertical blank interval of the current frame is extended, thus delaying the refresh time of the next frame.

[0047] Adjusting the refresh timing of the image source device includes: Obtain the complexity change magnitude between corresponding points in a consecutive number of frames on the complexity change curve; The single adjustment step size of the vertical blank interval is determined based on the magnitude of the complexity change, wherein the larger the complexity change, the larger the single adjustment step size. The vertical blank interval is adjusted frame by frame using the single adjustment step size, so that the refresh rate gradually transitions to the target value that matches the complexity change curve over multiple consecutive frames.

[0048] The system precisely anchors the temporal coordinate nodes of the complexity change curve, strictly follows the temporal arrangement of frames to locate the unique coordinate point on the curve corresponding to the current frame, retrieves and stores the inherent value of the rendering complexity carried by that point, and then locates the exclusive coordinate point on the complexity change curve of the next frame immediately adjacent to the current frame along the temporal direction, and simultaneously retrieves the inherent value of the rendering complexity corresponding to that point. The entire process is completed according to the binding relationship between the frame and the temporal point, ensuring that the reading result strictly matches the corresponding frame and there is no positional offset or numerical deviation.

[0049] The current frame complexity value and the next frame complexity value are compared and contrasted. The only criterion for judgment is the magnitude of the values ​​themselves. If the rendering complexity value of the next frame is higher than that of the current frame, the overall complexity change direction is defined as upward. If the rendering complexity value of the next frame is lower than that of the current frame, the overall complexity change direction is defined as downward. The direction is defined based on the actual numerical relationship throughout the process without introducing any additional judgment conditions.

[0050] When the direction of complexity change is determined to be upward, the vertical blank interval configuration of the current frame is directly intervened. The duration of the vertical blank interval set for the current frame is reduced and adjusted. By actively compressing the duration of the vertical blank interval, the refresh waiting gap between adjacent frames is shortened, and the refresh start time of the subsequent frames is directly moved forward. This allows the overall refresh time of the next frame to be advanced, so that the display frame refresh rhythm is fully in line with the continuous upward trend of rendering complexity.

[0051] When the direction of complexity change is determined to be downward, the vertical blank interval configuration of the current frame is directly intervened. The duration of the vertical blank interval set for the current frame is lengthened. By actively expanding the duration of the vertical blank interval, the refresh waiting gap between adjacent frames is widened, and the refresh start time of subsequent frames is directly delayed. This pushes back the overall refresh time of the next frame, so that the display frame refresh rhythm is fully adapted to the continuous decrease in rendering complexity.

[0052] Select the corresponding coordinate points of multiple consecutive frames along the temporal direction of the complexity change curve, extract the rendering complexity values ​​of each pair of adjacent frames on the curve, compare the numerical difference between adjacent points, and define the difference as the complexity change amplitude between corresponding frames. Complete the amplitude extraction of all selected consecutive frames in sequence, and uniformly organize, store and classify all extracted complexity change amplitudes.

[0053] Each complexity change magnitude is compared horizontally to distinguish the hierarchical differences and fluctuation levels between different magnitudes. According to the pre-established fixed correspondence rules, a unique vertical blank interval single adjustment step size is matched for each complexity change magnitude. The corresponding logic of setting a larger single adjustment step size is strictly followed, which establishes a fixed matching relationship between magnitude and adjustment step size.

[0054] The system locks the current vertical blank interval reference duration of the device and uses the single adjustment step size that has been matched and set as a unified adjustment reference. It then progressively adjusts the vertical blank interval frame by frame in the sequence of consecutive frames. After each frame adjustment is completed, the new vertical blank interval duration is updated and stored synchronously. By relying on the frame-by-frame small progressive adjustment method, the display refresh rate is smoothly transitioned during the operation of multiple consecutive frames, and finally stabilizes to the target refresh rate value that perfectly matches the overall trend of the complexity change curve, avoiding sudden jumps in the refresh rate throughout the process.

[0055] The beneficial effects include accurately determining the direction of change by reading the complexity values ​​of the current and next frames on the complexity change curve, and selectively shortening or lengthening the vertical blanking interval. This ensures that the refresh time of the next frame adapts to changes in rendering load, avoiding screen stuttering and tearing. Simultaneously, by determining the adjustment step size based on the magnitude of complexity changes between consecutive frames, the vertical blanking interval is gradually adjusted frame by frame, allowing the refresh rate to smoothly transition to the target value. This improves the accuracy of the refresh rate and rendering load adaptation, optimizing the smoothness and stability of LCD displays.

[0056] like Figure 2 The diagram shown is a functional block diagram of a variable refresh rate synchronization system for a liquid crystal display provided in an embodiment of the present invention.

[0057] The variable refresh rate synchronization system 100 for a liquid crystal display (LCD) described in this invention can be installed in an electronic device. Depending on the functions implemented, the variable refresh rate synchronization system 100 may include a rendering complexity descriptor generation module 101, a complexity change curve construction module 102, and a refresh timing adjustment module 103. The module described in this invention can also be referred to as a unit, which refers to a series of computer program segments that can be executed by the processor of an electronic device and perform a fixed function, and are stored in the memory of the electronic device.

[0058] In this embodiment, the functions of each module / unit are as follows: The rendering complexity descriptor generation module 101 is used to generate a rendering complexity descriptor according to the firmware layer rendering instructions of the image source device. The complexity change curve construction module 102 is used to construct the complexity change curve of the image source device based on the change gradient of the rendering complexity descriptor. The refresh timing adjustment module 103 is used to adjust the refresh timing of the image source device according to the complexity change curve.

[0059] In the several embodiments provided by this invention, it should be understood that the disclosed methods and systems can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and other division methods may be used in actual implementation.

[0060] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0061] Furthermore, the functional modules in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in the form of hardware plus software functional modules.

[0062] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the present invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the present invention.

[0063] This application embodiment can acquire and process relevant data based on artificial intelligence technology. Artificial intelligence is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results.

[0064] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.

Claims

1. A method for synchronizing a variable refresh rate in a liquid crystal display, characterized in that, The method includes: S1. Generate a rendering complexity descriptor based on the firmware layer rendering instructions of the image source device; S2. Construct the complexity change curve of the image source device based on the change gradient of the rendering complexity descriptor; S3. Adjust the refresh timing of the image source device according to the complexity change curve.

2. The variable refresh rate synchronization method for a liquid crystal display as described in claim 1, characterized in that, The rendering instruction based on the firmware layer of the image source device includes: In the graphics driver layer of the image source device, the rendering instruction stream sent to the graphics processor is intercepted in real time; Extract the number of drawing calls for the current frame, the complexity identifier of the currently bound shader program, the number of texture samplings, and the number of geometric primitives submitted from the rendering instruction stream to obtain multidimensional rendering load data; Each item in the multidimensional rendering load data is normalized to obtain a normalized rendering load parameter set.

3. The variable refresh rate synchronization method for a liquid crystal display as described in claim 2, characterized in that, The generation of the rendering complexity descriptor includes: Each parameter in the normalized rendering load parameter set is multiplied by a pre-specified weighting coefficient, wherein the weighting coefficient is calibrated offline based on the historical influence of the parameter on the single frame rendering time. The weighted parameters are summed to obtain the rendering complexity descriptor.

4. The variable refresh rate synchronization method for a liquid crystal display as described in claim 3, characterized in that, The weighting coefficients are calibrated offline based on the historical impact of parameters on single-frame rendering time, including: Obtain the frame rendering time statistics recorded by the graphics processor at the same time as the multidimensional rendering load data when rendering historical frames; The frequency of occurrence of abnormal frames in which the frame rendering time exceeds a preset threshold is calculated by statistically analyzing the number of drawing calls, shader program complexity indicators, texture sampling times, and number of geometric primitive submissions in the multidimensional rendering load data. The ratio of the frequency of each rendering load data in the abnormal frame to the total number of abnormal frames is determined as the weighting coefficient.

5. The variable refresh rate synchronization method for a liquid crystal display as described in claim 1, characterized in that, The step of constructing the complexity change curve of the image source device based on the change gradient of the rendering complexity descriptor includes: Obtain the rendering complexity descriptors corresponding to the previous several consecutive frames to form a rendering complexity descriptor sequence; According to the time order of the frames, the difference between two adjacent rendering complexity descriptors in the rendering complexity descriptor sequence is calculated sequentially to obtain the rendering complexity difference sequence. The direction and steepness of the gradient change are determined based on the sign and magnitude of each difference in the rendering complexity difference sequence.

6. The variable refresh rate synchronization method for a liquid crystal display as described in claim 5, characterized in that, The complexity variation curve for constructing the image source device includes: The rendering complexity difference sequence is statistically analyzed, and the number of positive differences and the number of negative differences are calculated within each sliding window. If the number of positive differences in the current sliding window exceeds the number of negative differences, the direction of the changing gradient is marked as an upward trend, and the cumulative magnitude of the positive differences is recorded. If the number of negative differences in the current sliding window exceeds the number of positive differences, the direction of the changing gradient is marked as a downward trend, and the cumulative magnitude of the negative differences is recorded.

7. The variable refresh rate synchronization method for a liquid crystal display as described in claim 6, characterized in that, The complexity variation curve for constructing the image source device also includes: Based on the direction marking of the change gradient and the cumulative magnitude of the corresponding direction, the persistence and rate of change of the complexity change trend are determined; Starting from the rendering complexity descriptor of the current frame, along the direction of the complexity change trend and according to the change rate, the estimated rendering complexity descriptors corresponding to several consecutive frames are generated. The rendering complexity descriptor of the current frame is concatenated with the estimated rendering complexity descriptor in frame order to obtain the complexity change curve.

8. The variable refresh rate synchronization method for a liquid crystal display as described in claim 1, characterized in that, Adjusting the refresh timing of the image source device according to the complexity change curve includes: Read the complexity value of the point corresponding to the current frame on the complexity change curve, and the complexity value of the point corresponding to the next frame; Compare the complexity value of the current frame with the complexity value of the next frame to determine the direction of complexity change; If the complexity changes in an upward direction, then the vertical blank interval of the current frame is shortened, so that the refresh time of the next frame arrives earlier. If the complexity changes in a decreasing direction, the vertical blank interval of the current frame is extended, thus delaying the refresh time of the next frame.

9. A variable refresh rate synchronization method for a liquid crystal display as described in claim 8, characterized in that, Adjusting the refresh timing of the image source device includes: Obtain the magnitude of complexity change between corresponding points in a series of consecutive frames on the complexity change curve; The single adjustment step size of the vertical blank interval is determined based on the magnitude of the complexity change, wherein the larger the complexity change, the larger the single adjustment step size. The vertical blank interval is adjusted frame by frame using the single adjustment step size, so that the refresh rate gradually transitions to the target value that matches the complexity change curve over multiple consecutive frames.

10. A variable refresh rate synchronization system for a liquid crystal display, used to implement the variable refresh rate synchronization method for a liquid crystal display as described in claim 1, the system comprising: The rendering complexity descriptor generation module is used to generate a rendering complexity descriptor based on the firmware layer rendering instructions of the image source device. The complexity change curve construction module is used to construct the complexity change curve of the image source device based on the change gradient of the rendering complexity descriptor. The refresh timing adjustment module is used to adjust the refresh timing of the image source device according to the complexity change curve.