Method, apparatus and storage medium for adjusting code rate of video communication network

CN122845828APending Publication Date: 2026-09-29SUZHOU DEEPSIGHT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611197431.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-07
Publication Date
2026-09-29

AI Technical Summary

Technical Problem

然而,现有的方法主要依赖绝对RTT阈值判断视频通信网络是否拥塞来调整码率,但是在基础RTT较高(如国际链路)但稳定的视频通信网络中,这样的判断会导致持续误判视频通信网络为拥塞,频繁触发不必要的码率降档,最终使视频通信网络的码率下降到最低档位,严重影响视频传输质量

Benefits of technology

本申请实施例采集视频通信网络的数据往返时延变化率集合,并获取视频数据的目标码率和实际码率;根据所述数据往返时延变化率集合确定所述视频通信网络的网络状态,并根据所述网络状态、所述目标码率和所述实际码率,确定码率调整策略;基于所述码率调整策略,调整所述视频通信网络的码率档位,以使所述视频通信网络基于调整后的码率档位进行视频数据的传输。该方法能够基于视频通信网络的数据往返时延变化率集合确定网络状态,并根据网络状态、视频数据的目标码率和实际码率确定码率调整策略,避免在数据往返时延较高但稳定的视频通信网络中会误判视频通信网络为拥塞,触发不必要的码率降档,提高了视频传输质量。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122845828A_ABST
    Figure CN122845828A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of video communication, and discloses a video communication network code rate adjustment method, device, equipment and storage medium. The method comprises the following steps: collecting a data round-trip delay change rate set of a video communication network, and obtaining a target code rate and an actual code rate of video data; determining a network state of the video communication network according to the data round-trip delay change rate set, and determining a code rate adjustment strategy according to the network state, the target code rate and the actual code rate; and adjusting a code rate gear of the video communication network based on the code rate adjustment strategy, so that the video communication network transmits the video data based on the adjusted code rate gear. The network state is determined through the data round-trip delay change rate set of the video communication network, and the code rate adjustment strategy is determined in combination with the target code rate and the actual code rate of the video data, unnecessary code rate gear reduction triggered by misjudging the network state is avoided in the video communication network with high and stable data round-trip delay, and the video transmission quality is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of video communication technology, and in particular to a method, apparatus, device and storage medium for adjusting the bit rate of a video communication network. Background Technology

[0002] With the rapid development of mobile internet and real-time video applications, scenarios such as live video streaming, remote monitoring, and video conferencing are placing increasingly higher demands on transmission quality. However, the complex and ever-changing network environment presents a significant challenge: how to adaptively adjust the bitrate of the video communication network to avoid video stuttering while maintaining the highest possible image quality. Current methods primarily rely on absolute RTT thresholds to determine network congestion and adjust the bitrate accordingly. However, in stable video communication networks with high base RTT (such as international links), this approach can lead to continuous misjudgments of network congestion, frequently triggering unnecessary bitrate downgrading, ultimately causing the bitrate to drop to the lowest possible level, severely impacting video transmission quality. Summary of the Invention

[0003] In view of this, the purpose of this application is to overcome the shortcomings of the prior art and provide a video communication network bitrate adjustment method, the method comprising: Collect the set of round-trip delay variation rates of video communication network data, and obtain the target bitrate and actual bitrate of video data; The network status of the video communication network is determined based on the set of data round-trip delay change rates, and a bitrate adjustment strategy is determined based on the network status, the target bitrate, and the actual bitrate. Based on the bitrate adjustment strategy, the bitrate level of the video communication network is adjusted so that the video communication network transmits video data based on the adjusted bitrate level.

[0004] In one embodiment, the step of determining the network state of the video communication network based on the set of data round-trip delay change rates includes: Each data round-trip delay change rate in the set of data round-trip delay change rates is compared with a preset change rate threshold to determine the change information corresponding to each data round-trip delay change rate. The network status of the video communication network is determined based on the change information corresponding to the change rate of round-trip delay for each of the data.

[0005] In one embodiment, the step of determining the bitrate adjustment strategy based on the network state, the target bitrate, and the actual bitrate includes: A bitrate threshold is determined based on the first preset ratio and the target bitrate; If the network status is congested, or the actual bitrate is less than the bitrate threshold, then the bitrate adjustment strategy is determined to be bitrate downgrading. If the network state is non-congested and the actual bit rate is not less than the bit rate threshold, then an additional bit rate is determined according to the second preset ratio and the actual bit rate, and a probe bit rate is determined based on the actual bit rate and the additional bit rate, and bandwidth detection is performed based on the probe bit rate; If, based on the bandwidth detection results, it is determined that the detected bitrate is greater than or equal to the bitrate corresponding to the previous bitrate level of the current bitrate level, then the bitrate adjustment strategy is determined to be bitrate increase. If the bandwidth detection result determines that the detected bitrate is less than the bitrate corresponding to the previous bitrate level, then the bitrate adjustment strategy is determined to be bitrate maintenance.

[0006] In one embodiment, after the step of adjusting the bitrate level of the video communication network based on the bitrate adjustment strategy, the method further includes: If the bitrate level of the video communication network is reduced, redundant data packets for transmitting video data will be stopped. If the bitrate level of the video communication network is increased, the target redundancy is determined based on the actual bitrate and the bitrate corresponding to the increased bitrate level, and redundant data packets of video data are transmitted according to the target redundancy.

[0007] In one embodiment, the step of determining the target redundancy based on the actual bitrate and the bitrate corresponding to the increased bitrate level includes: Adjust the step size and current redundancy according to the preset redundancy to determine the reference redundancy; Based on the reference redundancy and the actual bitrate, the expected bitrate is calculated; If the expected bitrate is less than the bitrate corresponding to the increased bitrate level, then the reference redundancy is re-determined. If the expected bitrate is not less than the bitrate corresponding to the increased bitrate level, then the reference redundancy is determined as the target redundancy.

[0008] In one embodiment, the method further includes: During the process of adjusting the bitrate level of the video communication network, the estimated bandwidth of the preset secure and reliable transmission protocol is obtained and the packet loss rate of the video communication network is calculated. Based on the estimated bandwidth and the packet loss rate, the actual bandwidth is determined, and the bitrate level of the video communication network is adjusted based on the bitrate adjustment strategy and the actual bandwidth.

[0009] In one embodiment, the step of calculating the packet loss rate of the video communication network includes: Obtain the current number of packet losses, the previous number of packet losses, the current maximum received packet sequence number, and the previous recorded maximum packet sequence number of the video communication network; The packet loss rate of the video communication network is calculated based on the current number of lost packets, the previous number of lost packets, the current maximum received packet sequence number, and the previous maximum recorded packet sequence number.

[0010] This application also provides a video communication network bitrate adjustment device, the video communication network bitrate adjustment device comprising: The acquisition module is used to collect the data round-trip delay variation rate set of the video communication network and obtain the target bitrate and actual bitrate of the video data; The determination module is used to determine the network status of the video communication network based on the set of data round-trip delay change rates, and to determine a bitrate adjustment strategy based on the network status, the target bitrate, and the actual bitrate. An adjustment module is used to adjust the bitrate level of the video communication network based on the bitrate adjustment strategy, so that the video communication network transmits video data based on the adjusted bitrate level.

[0011] This application also provides a computer device, which includes a processor and a memory, the memory storing a computer program, and the processor executing the computer program to implement the above-described video communication network bitrate adjustment method.

[0012] This application also provides a computer-readable storage medium storing a computer program that, when run on a processor, executes the above-described video communication network bitrate adjustment method.

[0013] The embodiments of this application have the following beneficial effects: This application embodiment collects a set of data round-trip delay variation rates of a video communication network and obtains the target bitrate and actual bitrate of the video data. Based on the set of data round-trip delay variation rates, it determines the network state of the video communication network and, based on the network state, the target bitrate, and the actual bitrate, determines a bitrate adjustment strategy. Based on the bitrate adjustment strategy, it adjusts the bitrate level of the video communication network so that the video communication network transmits video data based on the adjusted bitrate level. This method can determine the network state based on the set of data round-trip delay variation rates of the video communication network and determine the bitrate adjustment strategy based on the network state, the target bitrate, and the actual bitrate of the video data. This avoids misjudging the video communication network as congested in stable video communication networks with high data round-trip delays, triggering unnecessary bitrate downgrading, and improves video transmission quality. Attached Figure Description

[0014] To more clearly illustrate the technical solutions of this application, the accompanying drawings used in the embodiments will be briefly described below. It should be understood that the following drawings only show some embodiments of this application and therefore should not be considered as a limitation on the scope of protection of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0015] Figure 1 A flowchart illustrating the first embodiment of the video communication network bitrate adjustment method provided in this application; Figure 2 A flowchart illustrating the process of determining the network status of a video communication network provided in this application; Figure 3 A flowchart illustrating a second embodiment of the video communication network bitrate adjustment method provided in this application; Figure 4 A flowchart illustrating the process of determining and executing a bitrate adjustment strategy provided for this application; Figure 5 A flowchart illustrating the third embodiment of the video communication network bitrate adjustment method provided in this application; Figure 6 A flowchart illustrating the fourth embodiment of the video communication network bitrate adjustment method provided in this application; Figure 7 A schematic diagram of the video communication network bitrate adjustment device provided in this application. Detailed Implementation

[0016] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.

[0017] The components of the embodiments of this application described and illustrated in the accompanying drawings can be arranged and designed in a variety of different configurations. Therefore, the following detailed description of the embodiments of this application provided in the drawings is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of the application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.

[0018] In the following, the terms “comprising,” “having,” and their cognates, which may be used in various embodiments of this application, are intended only to indicate a particular feature, number, step, operation, element, component, or combination thereof, and should not be construed as excluding, firstly, the presence of one or more other features, numbers, steps, operations, elements, components, or combinations thereof, or adding the possibility of one or more features, numbers, steps, operations, elements, components, or combinations thereof.

[0019] Furthermore, the terms "first," "second," and "third" are used only to distinguish descriptions and should not be interpreted as indicating or implying relative importance.

[0020] Unless otherwise specified, all terms used herein (including technical and scientific terms) shall have the same meaning as commonly understood by one of ordinary skill in the art to which the various embodiments of this application pertain. Terms (such as those defined in commonly used dictionaries) shall be interpreted as having the same meaning as in their contextual meaning in the relevant technical field and shall not be construed as having an idealized or overly formal meaning, unless clearly defined in the various embodiments of this application.

[0021] It is understood that the method of this application is applied to the transmitting end in a video communication network. It is also understood that establishing a video communication network requires at least two devices: one as the transmitting end and the other as the receiving end. The transmitting end sends video data to the receiving end through the video communication network. The transmitting end can be a smart terminal, a PC terminal, a mobile terminal, etc., and is not limited thereto. For ease of description, the following embodiments use the transmitting end as the execution subject.

[0022] The following detailed description of some embodiments of this application is provided in conjunction with the accompanying drawings. Unless otherwise specified, the following embodiments and features can be combined with each other.

[0023] Please refer to Figure 1 , Figure 1 This is a flowchart illustrating a first embodiment of the video communication network bitrate adjustment method provided in this application. The method includes: Step S101: Collect the set of data round-trip delay change rates of the video communication network, and obtain the target bitrate and actual bitrate of the video data.

[0024] In this embodiment, the transmitting end in the video communication network collects the set of data round-trip delay variation rates of the video communication network and obtains the target bitrate and actual bitrate of the video data. It should be noted that data round-trip delay (RTT) is the time elapsed from when data is sent to when an acknowledgment (ACK) is received, reflecting the link latency of the video communication network; the data round-trip delay variation rate is the degree of change of the data round-trip delay of the video communication network over a period of time, and the set of data round-trip delay variation rates is the collection of the degree of change of the data round-trip delay of the video communication network over multiple consecutive time periods. During video communication, the transmitting end sends probe packets to the receiving end at fixed time windows, or uses the timestamp carried by the video data packets themselves to record the round-trip delay value from the sending of each data packet to the receipt of the corresponding acknowledgment response. After continuously collecting a certain number of delay samples, the variation rate between adjacent samples is calculated, that is, the percentage increase or decrease of the later sample relative to the previous sample. All calculated variation rate values ​​are summarized and recorded as the set of data round-trip delay variation rates. To avoid misjudgments caused by occasional fluctuations, a sliding window smoothing process can be applied to the set of rates of change. For example, an exponentially weighted moving average method can be used, assigning a certain weight to each newly calculated rate of change value while retaining the weight of the previous smoothing result. The smoothed rate of change value is obtained by weighted summation. The smoothed set is then used for subsequent network state determination.

[0025] The target bitrate is the set bitrate used to send video data. The actual bitrate is the instantaneous bitrate at which the PacedSender module actually sends out video data, and it is controlled by the leaky bucket algorithm.

[0026] The smoothing transmitter module in the video communication network employs a leaky bucket algorithm to receive video data with large fluctuations and then transmit it outwards at a constant bitrate, effectively smoothing out bitrate jitter caused by the size difference between I-frames and P-frames. When encountering a keyframe (I-frame) with an excessive amount of data, the module will determine whether the accumulated data in the bucket has exceeded the 500ms transmission duration. If so, it will discard some data to prevent further congestion.

[0027] Step S102: Determine the network status of the video communication network based on the set of data round-trip delay change rates, and determine the bitrate adjustment strategy based on the network status, the target bitrate, and the actual bitrate.

[0028] In this embodiment, the transmitting end in the video communication network determines the network status of the video communication network based on the set of data round-trip delay change rates, and determines the bitrate adjustment strategy based on the network status, the target bitrate, and the actual bitrate.

[0029] In one embodiment, the network state of the video communication network includes three types: stable state, fluctuating state, and congested state. The stable state is determined by the following criteria: in the smoothed rate of change set, the absolute values ​​of all elements exceeding a preset proportion are less than or equal to a first delay rate of change threshold, and the variance of this set is less than or equal to a first variance threshold. The first delay rate of change threshold can be set to, for example, 5%, and the first variance threshold is calibrated according to the actual network environment. Meeting this condition indicates good network link quality, sufficient bandwidth, and stability. The fluctuating state is determined by the following criteria: in the smoothed rate of change set, there are simultaneously positive changes greater than the first delay rate of change threshold and negative changes with absolute values ​​greater than the first delay rate of change threshold, i.e., the rate of change exhibits obvious alternation between positive and negative, and the variance of the set is greater than the first variance threshold, but the maximum rate of change value in the set is less than the congestion threshold. The congestion threshold can be set to, for example, 50%. This state typically corresponds to scenarios such as switching between strong and weak wireless network signals or slight changes in routing paths. The congestion state is determined as follows: in the smoothed rate of change set, the values ​​of elements exceeding a preset proportion are greater than the congestion threshold, or a significant delay spike occurs, meaning the rate of change value of a certain sample exceeds the spike threshold, which can be set to, for example, 100%. This state indicates that the network link has experienced queuing delays or precursors to packet loss, requiring an immediate reduction in the bit rate to alleviate congestion. Furthermore, a trend prediction mechanism can be introduced: a linear fit is performed on the smoothed rate of change set to analyze its trend slope. If the slope is positive and persists for multiple time windows, the network state can be marked as a congestion warning state in advance, even if the current state has not yet reached congestion, thereby achieving preventative control.

[0030] The determination of the bitrate adjustment strategy follows these rules: When the network is in a stable state, a gradual increase strategy is adopted. If the actual bitrate is lower than the target bitrate, the bitrate level is gradually increased by a preset step size. After each increase, a stable window is observed for a certain period of time. The increase continues only after confirming that the network remains stable, until the actual bitrate approaches the target bitrate. The increase step size can be set to 5% to 10% of the target bitrate. When the network is in a fluctuating state, a conservative maintenance strategy is adopted. The current bitrate level is kept unchanged, or only a very small increase, such as 3%, is made when the actual bitrate is significantly lower than the target bitrate. Simultaneously, the round-trip delay sampling period is shortened, and the monitoring density is increased to detect network changes more quickly. When the network is in a congested state or a congestion warning state, a rapid reduction strategy is adopted. The bitrate level is immediately reduced, and the reduction magnitude is positively correlated with the severity of congestion. Specifically, a congestion index is calculated, which is equal to the ratio of the maximum value in the smoothed rate of change set to the congestion determination threshold. The new target bitrate after downgrading is equal to the current actual bitrate multiplied by one, minus the product of the attenuation coefficient and the congestion index, where the attenuation coefficient typically ranges from 0.3 to 0.5. A minimum bitrate threshold is also set to ensure minimum video quality. After downgrading, a cooling-off period is implemented, during which upgrading is prohibited. When the network state recovers from congestion to stability, a stepped recovery strategy is adopted. Instead of immediately jumping back to the original target bitrate, a slow, stepped recovery is used, with each step not exceeding 50% of the previous downgrading magnitude to prevent sawtooth-like bitrate oscillations.

[0031] In the above strategy, the deviation between the target bitrate and the actual bitrate is also used as a strategy adjustment factor. If the actual bitrate is lower than the target bitrate and network conditions permit, it will be moved closer to the target bitrate; if the actual bitrate is close to the target bitrate but network congestion occurs, it is allowed to be temporarily lower than the target bitrate to ensure communication continuity.

[0032] In another embodiment, the network state of the video communication network includes three types: congested, saturated, and good. The bitrate adjustment strategy includes three types: bitrate downgrading, bitrate upgrading, and bitrate maintenance. If the transmitter in the video communication network determines that the network state is congested, or that the target bitrate and the actual bitrate meet a first preset condition, then the bitrate adjustment strategy is determined to be bitrate downgrading. If the network state is determined to be saturated or good, and the target bitrate and the actual bitrate meet a second preset condition, then bandwidth probing is performed, and based on the bandwidth probing results, the bitrate adjustment strategy is determined to be bitrate upgrading or bitrate maintenance. The first preset condition is that the actual bitrate is less than a bitrate threshold, which is determined based on the target bitrate. The second preset condition is that the actual bitrate is not less than the bitrate threshold, which is determined based on the target bitrate.

[0033] In one embodiment, the step of determining the network state of the video communication network based on the set of data round-trip delay change rates includes: Step S1021: Compare each data round-trip delay change rate in the set of data round-trip delay change rates with a preset change rate threshold to determine the change information corresponding to each data round-trip delay change rate.

[0034] Step S1022: Determine the network status of the video communication network based on the change information corresponding to the change rate of each data round-trip delay.

[0035] In this embodiment, the transmitting end in the video communication network compares each data round-trip delay change rate in the data round-trip delay change rate set with a preset change rate threshold to determine the change information corresponding to each data round-trip delay change rate. Then, based on the change information corresponding to each data round-trip delay change rate, the network state of the video communication network is determined. It can be understood that the data round-trip delay change rates in the data round-trip delay change rate set are collected within adjacent time periods; that is, the data round-trip delay change rate set reflects the degree of change in the data round-trip delay change rate of the video communication network over a continuous period of time.

[0036] In one embodiment, such as Figure 2 As shown, Figure 2 This application provides a flowchart illustrating the process for determining the network status of a video communication network. The data round-trip delay (RTT) rate set includes two RTT rates, ΔRTT1 and ΔRTT2, collected within adjacent time periods. A preset threshold for the RTT rate is set to ±5ms. A RTT rate greater than 5ms is denoted as "increasing," a RTT rate between -5ms and 5ms is denoted as "stable," and a RTT rate less than -5ms is denoted as "decreasing." The transmitting end in the video communication network combines the comparison results of ΔRTT1 and ΔRTT2 with the preset RTT rate threshold, and queries a preset mapping table to determine the network status of the video communication network. Specifically, when both ΔRTT1 and ΔRTT2 are recorded as "increasing", the network state of the video communication network is determined to be congested; when ΔRTT1 is recorded as "decreasing" and ΔRTT2 is recorded as "stable", the network state of the video communication network is determined to be good; when both ΔRTT1 and ΔRTT2 are recorded as "stable", the network state of the video communication network is determined to be good; in all other cases, the network state of the video communication network is determined to be saturated.

[0037] Step S103: Based on the bitrate adjustment strategy, adjust the bitrate level of the video communication network so that the video communication network transmits video data based on the adjusted bitrate level.

[0038] In this embodiment, the transmitting end in the video communication network adjusts the bitrate level of the video communication network based on a bitrate adjustment strategy, so that the video communication network transmits video data based on the adjusted bitrate level. In one embodiment, the five preset bitrate levels are: 1) 1080P, 25fps, 3Mbps; 2) 720P, 25fps, 2Mbps; 3) 720P, 25fps, 1.2Mbps; 4) 640×360, 25fps, 800kbps; 5) 640×360, 25fps, 500kbps. The bitrate adjustment strategy includes bitrate increase, bitrate maintenance, and bitrate decrease. In one embodiment, the bitrate adjustment method is as follows: First, bitrate mapping is performed, mapping the new target bitrate calculated by the strategy to the nearest available bitrate. When downgrading, the bitrate is rounded down to the highest bitrate not exceeding the new target bitrate; when upgrading, the bitrate is rounded up to the lowest bitrate not lower than the new target bitrate. Second, parameter linkage adjustment is performed, adjusting related parameters synchronously when switching bitrate levels. For example, when downgrading, resolution is reduced first, and if the bitrate still does not meet the requirements, the quantization parameter value is increased for further compression; when upgrading, the reverse is performed, first reducing the quantization parameter value to restore image quality, and then increasing the resolution. Third, a smooth transition mechanism is introduced. To avoid abrupt changes in the image due to bitrate switching, a gradual parameter adjustment is used during the transition period before and after the bitrate switch, such as gradually changing the quantization parameter value, rather than an instantaneous jump. At the same time, the sending end synchronizes the new bitrate level information to the receiving end through real-time transmission control protocol messages to ensure that the decoding end correctly parses it. Finally, a bitrate locking and fallback protection mechanism is set up. If the network status does not improve after multiple consecutive bitrate adjustments, an emergency fallback is triggered, directly downgrading to the lowest bitrate and prompting the user that the current network environment is poor. If the network condition deteriorates during the upshift process, the upshift will be terminated immediately and the gear will be reverted to the previous stable gear.

[0039] In this embodiment, the transmitting end of the video communication network collects a set of data round-trip delay variation rates of the video communication network and obtains the target bitrate and actual bitrate of the video data. Based on the set of data round-trip delay variation rates, the network state of the video communication network is determined, and based on the network state, the target bitrate, and the actual bitrate, a bitrate adjustment strategy is determined. Based on the bitrate adjustment strategy, the bitrate level of the video communication network is adjusted so that the video communication network transmits video data based on the adjusted bitrate level. This method can determine the network state based on the set of data round-trip delay variation rates of the video communication network and determine the bitrate adjustment strategy based on the network state, the target bitrate, and the actual bitrate of the video data. This avoids misjudging the video communication network as congested in stable video communication networks with high data round-trip delays, triggering unnecessary bitrate downgrading, and improves video transmission quality.

[0040] Please refer to Figure 3 , Figure 3 This is a flowchart illustrating a second embodiment of the video communication network bitrate adjustment method provided in this application. The difference between the second embodiment and the first embodiment is that the step of determining the bitrate adjustment strategy based on the network status, the target bitrate, and the actual bitrate includes: Step S201: Determine the bitrate threshold based on the first preset ratio and the target bitrate.

[0041] In this embodiment, the transmitting end in the video communication network determines a bitrate threshold based on a first preset ratio and a target bitrate, wherein the first preset ratio is pre-set. In one embodiment, the first preset ratio is 90%, and the bitrate threshold = target bitrate × 90%.

[0042] Step S202: If the network status is congested, or the actual bitrate is less than the bitrate threshold, then the bitrate adjustment strategy is determined to be bitrate downgrading.

[0043] In this embodiment, if the transmitting end in the video communication network determines that the network status of the video communication network is congested, or that the actual bitrate is less than the bitrate threshold, then it determines the bitrate adjustment strategy as bitrate downgrading. After determining the bitrate adjustment strategy as bitrate downgrading, the transmitting end first sets the extra bitrate to zero, and then determines whether the current bitrate level is the lowest level. If the current bitrate level is not the lowest level, then the current bitrate level is reduced according to the bitrate level that the actual bitrate falls into; if the current bitrate level is the lowest level, then the bitrate downgrading strategy is not executed, and the current bitrate level is kept unchanged.

[0044] Step S203: If the network state is non-congested and the actual bit rate is not less than the bit rate threshold, then an additional bit rate is determined according to the second preset ratio and the actual bit rate, and a probe bit rate is determined based on the actual bit rate and the additional bit rate, and bandwidth detection is performed based on the probe bit rate.

[0045] In this embodiment, if the network status of the transmitting end in the video communication network is non-congested (including good and saturated) and the actual bitrate is not less than the bitrate threshold, then an additional bitrate is determined according to the second preset ratio and the actual bitrate, and a probe bitrate is determined based on the actual bitrate and the additional bitrate. Bandwidth probing is then performed based on the probe bitrate. It should be noted that the second preset ratio is set in advance. The additional bitrate is specifically used to carry FEC (Forward Error Correction) redundancy packets. FEC packets are data packets used to send data carrying redundant data, which are used by the receiving end to recover data in the event of packet loss. Bandwidth probing involves adding the additional bitrate of the FEC redundancy packets to the actual bitrate of the video data packets to detect whether the upgraded bitrate can support the simultaneous transmission of video data packets and FEC redundancy packets.

[0046] In one embodiment, the second preset ratio is 5%, and the additional bitrate = actual bitrate × 5%.

[0047] Step S204: If, based on the bandwidth detection result, it is determined that the detected bitrate is greater than or equal to the bitrate corresponding to the previous bitrate level of the current bitrate level, then the bitrate adjustment strategy is determined to be bitrate upgrade.

[0048] In this embodiment, the transmitting end in the video communication network first determines whether the current bitrate level is the highest level. If the current bitrate level is the highest level, regardless of the bandwidth detection result, no bitrate increase is performed; instead, the strategy is maintained, and the current bitrate level remains unchanged. If the current bitrate level is not the highest level, and the detected bitrate is determined to be greater than or equal to the bitrate corresponding to the previous bitrate level based on the bandwidth detection result, then the bitrate adjustment strategy is determined to be bitrate increase. After determining the bitrate adjustment strategy to be bitrate increase, the transmitting end increases the current bitrate level to the previous bitrate level and simultaneously sets the additional bitrate to zero.

[0049] Step S205: If, based on the bandwidth detection result, it is determined that the detected bitrate is less than the bitrate corresponding to the previous bitrate level of the current bitrate level, then the bitrate adjustment strategy is determined to be bitrate maintenance.

[0050] In this embodiment, if the transmitting end in the video communication network determines that the current bitrate is not the highest bitrate, and determines that the detected bitrate is less than the bitrate corresponding to the previous bitrate based on the bandwidth detection result, then the bitrate adjustment strategy is determined to be bitrate maintenance.

[0051] In one embodiment, such as Figure 4 As shown, Figure 4This is a flowchart illustrating the process of determining and executing a bitrate adjustment strategy provided in this application. The transmitting end in the video communication network first determines a bitrate threshold based on a first preset ratio and a target bitrate, and then determines whether the network is congested or whether the actual bitrate is less than the bitrate threshold. If the transmitting end determines that the network is congested or the actual bitrate is less than the bitrate threshold, it sets the additional bitrate to zero and determines whether the current bitrate level is the lowest level. If the current bitrate level is not the lowest level, it lowers the current bitrate level according to the bitrate level the actual bitrate falls into. If the current bitrate level is the lowest level, it does not execute the bitrate downgrading strategy, but instead keeps the current bitrate level unchanged. If the sender determines that the network is not congested and the actual bitrate is not less than the bitrate threshold, it first checks whether the current bitrate level is the highest level. If the current bitrate level is the highest level, it keeps the current bitrate level unchanged. If the current bitrate level is not the highest level and the detected bitrate is determined to be greater than or equal to the bitrate corresponding to the previous bitrate level based on the bandwidth probe results, it raises the current bitrate level to the previous bitrate level and sets the extra bitrate to zero. If it determines that the current bitrate level is not the highest level and the detected bitrate is determined to be less than the bitrate corresponding to the previous bitrate level based on the bandwidth probe results, it determines that the bitrate adjustment strategy is to maintain the bitrate.

[0052] In this embodiment, the transmitting end of the video communication network determines a bitrate adjustment strategy based on the network status, target bitrate, and actual bitrate. During the execution of the bitrate adjustment strategy, it will determine whether the current bitrate level is the lowest or highest level, and perform bandwidth probing by superimposing an additional bitrate specifically used to carry FEC redundancy packets on the actual bitrate, thereby determining whether to execute the bitrate adjustment strategy, which improves the accuracy of bitrate adjustment strategy execution.

[0053] Please refer to Figure 5 , Figure 5 This is a flowchart illustrating a third embodiment of the video communication network bitrate adjustment method provided in this application. The difference between the third embodiment and the first to second embodiments is that, after the step of adjusting the bitrate level of the video communication network based on the bitrate adjustment strategy, the method includes: Step S301: If the bitrate level of the video communication network is reduced, then the transmission of redundant data packets of video data is stopped.

[0054] In this embodiment, when the transmitting end in the video communication network determines that a lower video bitrate is needed, it first sets the redundancy parameter n of the redundant data packets to zero, thereby stopping the transmission of redundant data packets containing video data. All bandwidth is then used to send video data packets, and the target bitrate is reduced to the new bitrate level. It should be noted that in the video communication network, the redundancy n / m of the redundant data packets is dynamically set using the SRTO_FEC_PERCENT parameter of the SRT protocol in the string format "n, m". Setting parameter n to zero sets the redundancy of the redundant data packets to zero, thus stopping the transmission of redundant data packets containing video data.

[0055] Step S302: If the bitrate level of the video communication network is increased, then the target redundancy is determined based on the actual bitrate and the bitrate corresponding to the increased bitrate level, and redundant data packets of video data are transmitted according to the target redundancy.

[0056] In this embodiment, when the transmitting end in the video communication network determines that a higher video bitrate is needed, it determines the target redundancy based on the actual bitrate and the bitrate corresponding to the increased bitrate level, and transmits redundant data packets of video data according to the target redundancy. It should be noted that the transmitting end continuously adjusts the redundancy of the redundant data packets transmitted in the video data transmission, and then calculates the expected bitrate by combining the redundancy and the actual bitrate. The expected bitrate is compared with the bitrate corresponding to the increased bitrate level until a redundancy that meets the conditions is determined as the target redundancy. In the video communication network, the redundancy n / m of the redundant data packets is dynamically set in the "n, m" string format using the SRTO_FEC_PERCENT parameter of the SRT protocol. After determining the target redundancy, the transmitting end sets the values ​​of n and m respectively in the SRT protocol to achieve the transmission of redundant data packets of video data according to the target redundancy.

[0057] In one embodiment, the step of determining the target redundancy based on the actual bitrate and the bitrate corresponding to the increased bitrate level includes: Step S3021: Adjust the step size and current redundancy according to the preset redundancy to determine the reference redundancy.

[0058] Step S3022: Calculate the expected bitrate based on the reference redundancy and the actual bitrate.

[0059] Step S3023: If the expected bitrate is less than the bitrate corresponding to the increased bitrate level, then the reference redundancy is re-determined.

[0060] Step S3024: If the expected bitrate is not less than the bitrate corresponding to the increased bitrate level, then the reference redundancy is determined as the target redundancy.

[0061] In this embodiment, the transmitting end in the video communication network adjusts the step size and current redundancy according to a preset redundancy to determine a reference redundancy; then, based on the reference redundancy and the actual bitrate, it calculates the expected bitrate, where the expected bitrate = actual bitrate × (1 + fec additional bandwidth multiplier × reference redundancy) × 0.9, and the fec additional bandwidth multiplier = (cols+rows) / (cols×rows), where cols is the number of columns in the redundant data packet and rows is the number of rows in the redundant data packet. The number of columns and rows is determined by the matrix structure of the redundant data packet, and 0.9 is the allowable error tolerance. The sending end compares the expected bitrate with the bitrate corresponding to the rising bitrate level. If the expected bitrate is not less than the bitrate corresponding to the rising bitrate level, the reference redundancy is determined as the target redundancy. If the expected bitrate is less than the bitrate corresponding to the rising bitrate level, the reference redundancy is redefined, and a new expected bitrate is calculated based on the redefined reference redundancy. The new expected bitrate is then compared with the bitrate corresponding to the rising bitrate level. This process is repeated until it is determined that the calculated expected bitrate is not less than the bitrate corresponding to the rising bitrate level, at which point the reference redundancy is determined as the target redundancy.

[0062] It should be noted that during the process of cyclically determining the target redundancy, the current bitrate of the video communication network remains unchanged. Only after the target redundancy is determined will the bitrate of the video communication network be increased.

[0063] In this embodiment, the transmitting end of the video communication network effectively coordinates the bandwidth reservation mechanism and video bitrate control strategy for redundant data packets when adjusting the bitrate level of the video communication network. This avoids the redundancy of redundant data packets being fixed or statically configured. It can dynamically adjust the redundancy of redundant data packets according to real-time network conditions and video bitrate, which helps to improve the bandwidth utilization of the video communication network and prevents redundant data packets from crowding out the effective bandwidth of video data packets when the bandwidth of the video communication network is tight. This prioritizes the transmission of video data packets and improves the quality of video transmission.

[0064] Please refer to Figure 6 , Figure 6 This is a flowchart illustrating the fourth embodiment of the video communication network bitrate adjustment method provided in this application. The difference between the fourth embodiment and the first to third embodiments is that the method further includes: Step S401: During the process of adjusting the bitrate level of the video communication network, obtain the estimated bandwidth provided by the preset secure and reliable transmission protocol and calculate the packet loss rate of the video communication network.

[0065] In this embodiment, the transmitting end in the video communication network obtains the estimated bandwidth provided by the preset secure and reliable transmission protocol and calculates the packet loss rate of the video communication network during the process of adjusting the bitrate level of the video communication network. The preset secure and reliable transmission protocol is the SRT protocol. The transmitting end reads the estimated bandwidth available in the video communication network based on the number of ACK packets from the SRT protocol stack. Based on the pktRcvFilterLoss (number of lost packets after filtering) and m_iRcvCurrPhySeqNo (maximum packet sequence number) statistics from the SRT protocol, the transmitting end calculates the packet loss rate within a period according to the formula.

[0066] In one embodiment, the step of calculating the packet loss rate of the video communication network includes: Step S4011: Obtain the current number of packet losses, the previous number of packet losses, the current maximum received packet sequence number, and the previous recorded maximum packet sequence number of the video communication network.

[0067] Step S4012: Calculate the packet loss rate of the video communication network based on the current number of lost packets, the previous number of lost packets, the current maximum received packet sequence number, and the previous maximum recorded packet sequence number.

[0068] In this embodiment, the transmitting end in the video communication network obtains the current statistical packet loss count, the previous statistical packet loss count, the current maximum received packet sequence number, and the previous recorded maximum packet sequence number of the video communication network. Based on these data, the packet loss rate of the video communication network is calculated. The formula for calculating the packet loss rate is: Packet Loss Rate = (Current Statistical Packet Loss Count - Previous Statistical Packet Loss Count) / (Current Maximum Received Packet Sequence Number - Previous Recorded Maximum Packet Sequence Number).

[0069] Step S402: Determine the actual bandwidth based on the estimated bandwidth and the packet loss rate, and adjust the bitrate level of the video communication network based on the bitrate adjustment strategy and the actual bandwidth.

[0070] In this embodiment, the transmitting end in the video communication network determines the actual bandwidth based on the estimated bandwidth and packet loss rate, and adjusts the bitrate level of the video communication network based on the bitrate adjustment strategy and the actual bandwidth. The actual bandwidth is calculated as: Actual bandwidth = Estimated bandwidth × (1 - Packet loss rate). It should be noted that the bandwidth statistics mechanism of the SRT protocol is based on the number of AC packets, and does not fully consider the erosion of actual available bandwidth by a high packet loss rate, especially in scenarios with limited bandwidth (e.g., 700kbps). A high packet loss rate results in the actual available bandwidth being far lower than the SRT estimate. However, existing solutions directly use the estimated bandwidth of the SRT protocol as the actual bandwidth, leading to inaccurate actual bandwidth. This can cause the estimated bandwidth to fluctuate around the threshold of two adjacent bitrate levels, resulting in instantaneous congestion during rate increase detection and immediate rate decrease, forming a cyclical oscillation of "rate increase-congestion-rate decrease," causing extremely unstable video quality. Therefore, this application introduces a packet loss compensation mechanism, where the actual bandwidth = estimated bandwidth × (1 - packet loss rate), which improves the accuracy of the actual bandwidth and avoids bandwidth fluctuations near the thresholds of two adjacent bitrate levels. This avoids the formation of a "upgrade-congestion-downgrade" cycle and helps to improve the stability of video transmission quality.

[0071] In one embodiment, the stability of the bandwidth threshold scenario is maintained at a critical scenario where the bandwidth is limited to 700kbps. Traditional solutions, due to the SRT estimated bandwidth (approximately 1Mbps) being higher than the limit, cause the bitrate to oscillate between 800kbps and 500kbps. In this application, with a packet loss rate of 0.15, the actual bandwidth is calculated to be approximately 700kbps * (1 - 0.15) = 595kbps through a packet loss compensation mechanism, thereby stably selecting the 500kbps level and avoiding frequent switching.

[0072] In this embodiment, the transmitting end of the video communication network introduces a packet loss compensation mechanism. By combining the estimated bandwidth and packet loss rate, the actual bandwidth is determined, which improves the accuracy of the actual bandwidth. This avoids the bandwidth fluctuating around the threshold of two adjacent bitrate levels, thereby avoiding the formation of a "upgrade-congestion-downgrade" cycle and helping to improve the stability of video transmission quality.

[0073] refer to Figure 7 , Figure 7 This is a schematic diagram of the video communication network bitrate adjustment device provided in this application. The video communication network bitrate adjustment device includes: The acquisition module 10 is used to acquire the set of data round-trip delay variation rates of the video communication network and obtain the target bitrate and actual bitrate of the video data.

[0074] The determination module 20 is used to determine the network status of the video communication network based on the set of data round-trip delay change rates, and to determine a bitrate adjustment strategy based on the network status, the target bitrate, and the actual bitrate.

[0075] The adjustment module 30 is used to adjust the bitrate level of the video communication network based on the bitrate adjustment strategy, so that the video communication network transmits video data based on the adjusted bitrate level.

[0076] It is understood that the video communication network bitrate adjustment device in this embodiment corresponds to the video communication network bitrate adjustment method in the above embodiment. The options in the above embodiment are also applicable to this embodiment, so they will not be described again here.

[0077] This application also provides a computer device, exemplary of which includes a processor and a memory, wherein the memory stores a computer program, and the processor executes the computer device to perform the video communication network bitrate adjustment method described above by running the computer program.

[0078] The processor can be an integrated circuit chip with signal processing capabilities. The processor can be a general-purpose processor, including at least one of a Central Processing Unit (CPU), Graphics Processing Unit (GPU), Network Processor (NP), Digital Signal Processor (DSP), Application-Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The general-purpose processor can be a microprocessor or any conventional processor, capable of implementing or executing the methods, steps, and logic block diagrams disclosed in the embodiments of this application.

[0079] The memory can be, but is not limited to, Random Access Memory (RAM), Read Only Memory (ROM), Programmable Read-Only Memory (PROM), Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), etc. The memory is used to store computer programs, and the processor can execute the computer programs accordingly after receiving execution instructions.

[0080] This application also provides a computer storage medium for storing the computer program used in the aforementioned computer device. The computer storage medium can be a readable storage medium, a non-volatile storage medium, or a volatile storage medium. For example, the computer storage medium may include, but is not limited to, various media capable of storing program code, such as a USB flash drive, a portable hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0081] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can also be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings show the architecture, functionality, and operation of possible implementations of apparatus, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that, in alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagram and / or flowchart, and combinations of blocks in the block diagram and / or flowchart, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0082] In addition, the functional modules or units in the various embodiments of this application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0083] If the aforementioned functions are implemented as software functional modules and sold or used as independent products, they can be stored in a readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a smartphone, personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application.

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

Claims

1. A method for adjusting the bit rate of a video communication network, characterized in that, The method includes: Collect the set of round-trip delay variation rates of video communication network data, and obtain the target bitrate and actual bitrate of video data; The network status of the video communication network is determined based on the set of data round-trip delay change rates, and a bitrate adjustment strategy is determined based on the network status, the target bitrate, and the actual bitrate. Based on the bitrate adjustment strategy, the bitrate level of the video communication network is adjusted so that the video communication network transmits video data based on the adjusted bitrate level.

2. The video communication network bitrate adjustment method according to claim 1, characterized in that, The step of determining the network status of the video communication network based on the set of data round-trip delay change rates includes: Each data round-trip delay change rate in the set of data round-trip delay change rates is compared with a preset change rate threshold to determine the change information corresponding to each data round-trip delay change rate. The network status of the video communication network is determined based on the change information corresponding to the change rate of round-trip delay for each of the data.

3. The video communication network bitrate adjustment method according to claim 1, characterized in that, The step of determining the bitrate adjustment strategy based on the network status, the target bitrate, and the actual bitrate includes: A bitrate threshold is determined based on the first preset ratio and the target bitrate; If the network status is congested, or the actual bitrate is less than the bitrate threshold, then the bitrate adjustment strategy is determined to be bitrate downgrading. If the network state is non-congested and the actual bit rate is not less than the bit rate threshold, then an additional bit rate is determined according to the second preset ratio and the actual bit rate, and a probe bit rate is determined based on the actual bit rate and the additional bit rate, and bandwidth detection is performed based on the probe bit rate; If, based on the bandwidth detection results, it is determined that the detected bitrate is greater than or equal to the bitrate corresponding to the previous bitrate level of the current bitrate level, then the bitrate adjustment strategy is determined to be bitrate increase. If the bandwidth detection result determines that the detected bitrate is less than the bitrate corresponding to the previous bitrate level, then the bitrate adjustment strategy is determined to be bitrate maintenance.

4. The video communication network bitrate adjustment method according to claim 1, characterized in that, After the step of adjusting the bitrate level of the video communication network based on the bitrate adjustment strategy, the following steps are included: If the bitrate level of the video communication network is reduced, redundant data packets for transmitting video data will be stopped. If the bitrate level of the video communication network is increased, the target redundancy is determined based on the actual bitrate and the bitrate corresponding to the increased bitrate level, and redundant data packets of video data are transmitted according to the target redundancy.

5. The video communication network bitrate adjustment method according to claim 4, characterized in that, The step of determining the target redundancy based on the actual bitrate and the bitrate corresponding to the increased bitrate level includes: Adjust the step size and current redundancy according to the preset redundancy to determine the reference redundancy; Based on the reference redundancy and the actual bitrate, the expected bitrate is calculated; If the expected bitrate is less than the bitrate corresponding to the increased bitrate level, then the reference redundancy is re-determined. If the expected bitrate is not less than the bitrate corresponding to the increased bitrate level, then the reference redundancy is determined as the target redundancy.

6. The video communication network bitrate adjustment method according to claim 1, characterized in that, The method further includes: During the process of adjusting the bitrate level of the video communication network, the estimated bandwidth of the preset secure and reliable transmission protocol is obtained and the packet loss rate of the video communication network is calculated. Based on the estimated bandwidth and the packet loss rate, the actual bandwidth is determined, and the bitrate level of the video communication network is adjusted based on the bitrate adjustment strategy and the actual bandwidth.

7. The video communication network bitrate adjustment method according to claim 6, characterized in that, The step of calculating the packet loss rate of the video communication network includes: Obtain the current number of packet losses, the previous number of packet losses, the current maximum received packet sequence number, and the previous recorded maximum packet sequence number of the video communication network; The packet loss rate of the video communication network is calculated based on the current number of lost packets, the previous number of lost packets, the current maximum received packet sequence number, and the previous maximum recorded packet sequence number.

8. A video communication network bitrate adjustment device, characterized in that, The video communication network bitrate adjustment device includes: The acquisition module is used to collect the data round-trip delay variation rate set of the video communication network and obtain the target bitrate and actual bitrate of the video data; The determination module is used to determine the network status of the video communication network based on the set of data round-trip delay change rates, and to determine a bitrate adjustment strategy based on the network status, the target bitrate, and the actual bitrate. An adjustment module is used to adjust the bitrate level of the video communication network based on the bitrate adjustment strategy, so that the video communication network transmits video data based on the adjusted bitrate level.

9. A computer device, characterized in that, The computer device includes a processor and a memory, the memory storing a computer program, and the processor executing the computer program to implement the video communication network bitrate adjustment method according to any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when run on a processor, executes the video communication network bitrate adjustment method according to any one of claims 1-7.