A bandwidth prediction method based on buffer duration and stable segment segmentation

By adopting a bandwidth prediction method based on buffering time and stable segment segmentation in the live broadcast scenario, the problem of inaccurate bandwidth prediction in the prior art is solved, and more accurate bandwidth prediction is achieved, which reduces lag and delay in the live broadcast scenario and improves the user experience quality.

CN119583903BActive Publication Date: 2025-04-15CENT SOUTH UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510117436.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-24
Publication Date
2025-04-15
Estimated Expiration
2045-01-24

AI Technical Summary

Technical Problem

The existing bandwidth prediction algorithm has problems with inaccurate prediction in live broadcast scenarios, and has failed to effectively consider the segmented stability of network bandwidth and the demand for low latency and less lag in live broadcast scenarios.

Method used

The bandwidth prediction method based on buffering time and stable segment segmentation is adopted. By recording the network bandwidth and buffer duration when video block download, the probability of potential segmentation points is calculated, combined with the buffer duration, the segmentation points are determined, the bandwidth sequence is divided into stable segments, and the GRU model is used for training to generate more accurate bandwidth prediction results.

Benefits of technology

It improves the accuracy of bandwidth prediction in live broadcast scenarios, reduces lag rate and latency, and improves the quality of user experience. Experimental results show that the root mean square error of bandwidth prediction is reduced by 39.1% to 40.6%, the jam length ratio is reduced by 15.94% to 21.41%, and the average latency of video blocks is reduced by 5.26% to 4.11%.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119583903B_ABST
    Figure CN119583903B_ABST
Patent Text Reader

Abstract

The present invention discloses a bandwidth prediction method based on buffer duration and stable segment segmentation, which helps the rate adaptive algorithm to improve the bandwidth prediction accuracy in the live broadcast scenario. The present invention performs stable segment segmentation on the network bandwidth sequence, and performs bandwidth prediction with the average bandwidth within the buffer duration as the target. In this way, the present invention can provide more accurate bandwidth prediction results for the rate adaptive algorithm of the live broadcast scenario, and help the rate adaptive algorithm reduce the jamming duration ratio and delay. The experimental results show that by replacing the bandwidth prediction schemes of the rate adaptive algorithm ThroughputRule and MPC implemented in Dash.js with the bandwidth prediction model of the present invention, the root mean square error of the bandwidth prediction is reduced by 39.1% and 40.6% respectively, the jamming duration ratio is reduced by 15.94% and 21.41% respectively, and the average delay of the video block is reduced by 5.26% and 4.11% respectively. In short, the present invention can help the rate adaptive algorithm to control the delay within the acceptable range of the live broadcast system, and effectively improve the user experience quality.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the field of streaming media transmission, and in particular to a bandwidth prediction method based on buffering duration and stable segment segmentation. Background Art

[0002] Today, video traffic has become the largest component of Internet traffic. As of the third quarter of 2023, global live streaming accounts for 23% of viewing time and 17% of global Internet traffic. It is expected that by 2029, the global live streaming market will reach US$252.76 billion. Live streaming is one of the key applications of streaming technology, and platforms such as YouTube and TikTok are already in the leading position in the industry.

[0003] Compared with on-demand scenarios, live streaming has more stringent requirements on buffering and latency due to its interactive and real-time characteristics. Adaptive Bitrate Streaming (ABR) dynamically selects the appropriate video bitrate based on changing network conditions (such as bandwidth and buffer size), which is crucial to improving the user's Quality of Experience (QoE). However, the effectiveness of the ABR algorithm is highly dependent on the accuracy of bandwidth prediction. In on-demand scenarios, a larger buffer can tolerate a certain degree of bandwidth prediction error, but in live streaming, since the buffer is usually smaller, overestimation of bandwidth may lead to the selection of too high a bitrate, which in turn causes the download time to exceed the buffering time, resulting in video freezes. Therefore, a more robust and accurate bandwidth prediction strategy is needed to meet the needs of live streaming.

[0004] Bandwidth prediction is essentially a time series prediction problem, which relies on the bandwidth measurement values ​​of multiple video chunks downloaded in the past to predict the download bandwidth of the next video chunk, thereby guiding the bitrate selection. For example, the ThroughputRule algorithm in Dash.js uses the exponentially weighted moving average (EWMA) to predict the bandwidth of the next video chunk and selects a bitrate level that does not exceed the predicted bandwidth; the MPC algorithm uses the harmonic mean of the bandwidth measurement values ​​of the past 5 to 10 video chunks to predict the bandwidth of the next video chunk. However, these existing bandwidth prediction algorithms have two main problems:

[0005] First, the piecewise stable characteristics of network bandwidth are not considered. Network bandwidth behaves as a piecewise stable random process, that is, each stable segment follows a Gaussian distribution with the same parameters. In time series analysis, the stable state helps pattern recognition and feature extraction. If the input sequence is non-stationary and there are segmentation points, this will affect the model's extraction of useful features, leading to inaccurate predictions.

[0006] Second, existing bandwidth prediction methods usually only predict the bandwidth within the download time of a future video block. This short-term prediction target ignores the special requirements of live broadcast scenarios for less lag and low latency, resulting in large deviations in bandwidth prediction results. Using a single video block download bandwidth as a learning target is prone to overfitting the noise in the training data. The model is more inclined to capture short-term fluctuations rather than long-term stable trends, resulting in inaccurate bandwidth prediction. The bit rate selected by the ABR module does not match the actual network bandwidth conditions, which can easily cause video playback to freeze and affect user experience. Summary of the invention

[0007] In order to solve the problem of inaccurate prediction in existing bandwidth prediction methods, the present invention provides a bandwidth prediction method based on buffering duration and stable segment segmentation that can be applied in live broadcast scenarios.

[0008] In order to achieve the above technical objectives, the technical solution of the present invention is: a bandwidth prediction method based on buffer duration and stable segment segmentation, comprising the following steps:

[0009] Step 1: Record the network bandwidth when downloading each video block, so as to construct a bandwidth sequence; at the same time, record the buffer duration after each video block is downloaded, that is, the total future playback time of all video blocks downloaded in the buffer, so as to construct a buffer duration sequence;

[0010] Step 2: Calculate the probability of potential segmentation points in the bandwidth sequence, and then obtain segmentation points based on the potential segmentation points in combination with the buffer duration, so as to divide the bandwidth sequence into a stable segment set, and then unify the lengths of each stable segment in the stable segment set as training features; finally, calculate the average bandwidth of the buffer duration at the end time point of each bandwidth stable segment as a training label; thereby obtaining training samples;

[0011] Step 3, based on the training samples obtained in step 2, a bandwidth prediction model is constructed using a gated neural unit (GRU) and trained;

[0012] Step 4, obtain the stable segment according to the network bandwidth and buffer duration when downloading the current video block, then construct the stable segment into a sub-segment that meets the training feature length of the bandwidth prediction model, and input it into the bandwidth prediction model to obtain the bandwidth prediction result.

[0013] The method, in step 1, the bandwidth sequence is represented by C 1:n , C 1:n =[c1,c2,…,c n ], and c t represents the network bandwidth when the tth video block is downloaded, t∈{1,2,...,n}, n is the total number of video blocks counted in the bandwidth sequence; the corresponding buffer duration sequence is represented by B1:n , B 1:n =[b1,b2,...,b n ], and b t Indicates the buffer length after the tth video chunk is downloaded.

[0014] The method described, c t It is calculated by the following formula:

[0015]

[0016] Where q represents the bit rate of the video block, q∈{1,2,...,K}, and K represents the total number of optional bit rate levels of the video block; represents the t-th video block with bit rate q, express The size of t Indicates the downloading time of the tth video chunk.

[0017] The method, in step 2, calculating the probability of potential segmentation points in the bandwidth sequence includes the following steps:

[0018] Let the discrete random variable S t represents the length of the bandwidth stability segment until the tth video block; then S t =1 indicates c t is a segmentation point of a bandwidth stability segment; otherwise, c t It is a continuation of the previous bandwidth stability segment. At this time, S t =S t-1 +1; in the acquired bandwidth sequence C 1:t Under the premise of t The conditional probability distribution law of the value is p(S t |C 1:t ), where C 1:t =[c1,c2,…,c t ], p represents the probability, according to the Bayesian formula:

[0019]

[0020] The numerator in the above formula is the length S of the bandwidth stability segment until the tth video block. t and the acquired bandwidth sequence C 1:t The joint probability distribution p(S t ,C 1:t ), is obtained by recursive calculation as follows:

[0021]

[0022] Where p(c t |S t =i,C1:t-1 ) represents the historical bandwidth sequence C 1:t-1 And S t =i (i = 1, 2, ... t), the current observation value c t Likelihood probability; p(S t |S t-1 ) is a predefined parameter, indicating that the bandwidth is c t The probability of a jump at , and set it as the probability of an abnormal point appearing, that is, in, and Respectively indicate the use of C 1:n The calculated mean and standard deviation; p(S t-1 ,C 1:t-1 ) represents the inference probability at the previous time point; and the initial condition of the recursive calculation is set to p(S1=1,C 1:1 )=1.

[0023] In the method, in step 2, the step of determining the segmentation point in combination with the buffer time comprises:

[0024] The buffer occupancy rate r is calculated by the following formula, that is, the ratio of the current buffer duration to the total duration of the video block that the buffer can accommodate:

[0025]

[0026] Where buffer_total indicates the total duration of the video block that the buffer can accommodate, b t Indicates the buffer length after the tth video chunk is downloaded;

[0027] Then based on the recursive calculation formula, calculate t The potential segmentation point probability value p(S t =1|C 1:t ) and compared with the buffer occupancy r, if p(S t =1|C 1:t )>r, then we think c t is a segmentation point of the bandwidth stability segment, starting from the previous segmentation point to c t-1 Marked as a bandwidth stable segment, c t is the beginning of the next stable segment; otherwise, the current segmentation point is considered to be a continuation of the previous stable segment; after traversing all potential segmentation points, the bandwidth sequence C 1:n Split into a set of stable segments C * , i and j are both video block numbers, i.e., the i-th video block and the j-th video block, where Represents the bandwidth sequence C i:j It is stable.

[0028] In the method, in step 2, the step of unifying the lengths of the various stable segments in the stable segment set includes:

[0029] The stable segment set C * The length m0 of the shortest stable segment is used as the unified standard, and the stable segments with a length greater than m0 are The sub-segments are overlapped by the sliding window method with a window length of m0 and a step size of 1 to generate a sub-segment of length m0, which is recorded as And used as training features, where s and e represent the starting point of the video block sequence number as the starting point and the video block sequence number as the end point in the sub-segment respectively, and satisfy e-s+1=m0.

[0030] In the method, in step 2, the training labels are obtained by the following steps:

[0031] The average bandwidth corresponding to the buffer duration at the end of each bandwidth stabilization period is calculated by the following formula As training labels:

[0032]

[0033] where b e Represents each sub-segment The buffer length after downloading the e-th video chunk, L is the playback time of each video chunk.

[0034] In the method, in step 3, the bandwidth prediction model includes a first GRU layer, a first Dropout layer, a second GRU layer, a second Dropout layer and a Dense layer connected in sequence, the first GRU layer and the second GRU layer include 80 hidden units and 100 hidden units respectively, the first Dropout layer and the second Dropout layer are both set to a drop rate of 0.2, and the Dense layer is set to one neuron.

[0035] In the method, in step 4, the step of obtaining a stable segment according to the network bandwidth and buffer duration when the current video block is downloaded includes:

[0036] Get the network bandwidth c when downloading the tth video chunk t and buffer duration b t , calculate S t The potential segmentation point probability value p(S t =1|C 1:t ), and the current buffer occupancy r, and then use p(S t =1|C 1:t ) and r determine c tWhether it corresponds to a segmentation point:

[0037] 1) If p(S t =1|C 1:t )>r, indicating c t is a segmentation point, then c t Directly used as bandwidth prediction result;

[0038] 2) If p(S t =1|C 1:t )≤r, indicating that c t is not a segmentation point, then based on S t The distribution law of p(S t =l|C 1:t ), determine the t is the maximum possible stable segment length l at the end, that is, arg max{p(S t =l|C 1:t )}.

[0039] In the method, in step 4, the step of constructing the stable segment into a sub-segment that meets the characteristic length of the bandwidth prediction model training includes:

[0040] The stable segment of length l to be input into the bandwidth prediction model is constructed as a subsegment of the bandwidth prediction model input size m0:

[0041] ①If l≥m0, then cut off the sub-segment from t-m0+1 to t with a length of m0, that is Then input the bandwidth prediction model;

[0042] ②If l<m0, then in the stable segment C t-l+1:t Before completing m0-l bandwidth data: by constructing a length of m0-l and a mean of And the standard deviation is Random number sequence, and C t-l+1:t After splicing, input the bandwidth prediction model.

[0043] The technical effect of the present invention is that the present invention can provide more accurate bandwidth prediction results for the bit rate adaptive algorithm of the live broadcast scene, helping the bit rate adaptive algorithm to reduce the freeze rate and delay. Experimental results show that by replacing the bandwidth prediction scheme of the bit rate adaptive algorithm ThroughputRule and MPC implemented in Dash.js with the SSS-PBP provided by the present invention, the root mean square error of bandwidth prediction is reduced by 39.1% and 40.6% respectively, the freeze duration ratio is reduced by 15.94% and 21.41% respectively, and the average delay of video blocks is reduced by 5.26% and 4.11% respectively. In short, the present invention can help the bit rate adaptive algorithm to control the delay within the acceptable range of the live broadcast system, effectively improving the user experience quality.

[0044] The present invention will be further described below in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] Figure 1 It is a schematic diagram of the overall process framework of the present invention.

[0046] Figure 2 It is a schematic diagram of the process framework of the segmentation point inference of the present invention.

[0047] Figure 3 This is a schematic diagram of the process framework of using average bandwidth as a prediction label in the present invention.

[0048] Figure 4 This is the effect diagram of bandwidth sequence stable segment segmentation.

[0049] Figure 5 Schematic diagram of the error curves for verifying the GRU using only stationary segmentation (SSS), the model using stationary segmentation and using average bandwidth as the prediction label (SSS-PBP), and training and testing using only GRU.

[0050] Figure 6 The bandwidth prediction effect comparison chart of the bandwidth prediction model adopted by the present invention (SSS-PBP) and the harmonic mean bandwidth prediction method (HM) used in MPC, the bandwidth prediction method (EWMA) used by ThroughputRule, and the moving average autoregression (ARMA) under the FCC data set.

[0051] Figure 7 After the bandwidth prediction model adopted by the present invention (SSS-PBP) replaces the original bandwidth prediction method of the ABR algorithm (MPC, Throughput Rule) based on bandwidth prediction, the total QoE histogram of all video blocks and the CDF curve of the average QoE of each video block are shown; (a) is the total QoE histogram of all video blocks, and (b) is the CDF curve of the average QoE of each video block.

[0052] Figure 8 After the bandwidth prediction model adopted by the present invention (SSS-PBP) replaces the original bandwidth prediction method of the ABR algorithm (MPC, Throughput Rule) based on bandwidth prediction, the freeze duration ratio histogram and the CDF curve of delay are shown; (a) is the freeze duration ratio histogram, and (b) is the CDF curve of delay.

[0053] Fig. 9The average bit rate of the video under three real network bandwidth data sets FCC, Oboe, Norway and synthetic data sets is shown after the bandwidth prediction model adopted by the present invention (SSS-PBP) replaces the original bandwidth prediction method of MPC and ThroughputRule. DETAILED DESCRIPTION

[0054] See also Figure 1 , the bandwidth prediction method based on buffering duration and stable segment segmentation provided in this embodiment comprehensively considers the stability of bandwidth segmentation and the goal of less lag and low playback delay in live broadcast scenarios. This embodiment divides the bandwidth sequence into stable segments and introduces the buffer length to assist in the determination of segmentation points. Secondly, the bandwidth prediction is performed based on the average bandwidth within the buffer duration when the last video block in each stable sub-segment is downloaded as the training label to obtain a prediction model, that is, a bandwidth prediction model that uses stable segment segmentation and uses the average bandwidth as the prediction label. Specifically, the following steps are included:

[0055] Step 1: Monitor the network bandwidth when downloading each video block and construct a bandwidth sequence: Let K represent the bit rate level of the video block, represents the t-th video block with bit rate q, q∈{1,2,...,K}, and the size of the video block is If the download time is d t , then the measured bandwidth value when downloading the video block is: The bandwidth sequence composed of the first n video chunk downloads is denoted as C 1:n =[c1,c2,...,c n ], and c t represents the network bandwidth when the tth video block is downloaded, t∈{1,2,...,n}. Record the buffer duration after each video block is downloaded, that is, the total future playback time of all downloaded video blocks in the buffer, and construct a buffer duration sequence: Let b i represents the buffer duration after the i-th video block is downloaded, that is, the playback time of the downloaded video block in the buffer. The buffer duration sequence composed of the first n video blocks downloaded is recorded as B 1:n =[b1,b2,...,b n ], and b t Indicates the buffer length after the tth video chunk is downloaded.

[0056] Step 2: Construct training samples. First, divide the bandwidth sequence into a set of stable segments as training features: calculate the probability of potential segmentation points in the bandwidth sequence, combine the buffer duration, determine the segmentation points, and divide the bandwidth sequence into a set of stable segments as training features. Secondly, calculate the average bandwidth corresponding to the buffer duration at the end of each bandwidth stable segment as the training label: for each bandwidth stable segment, take the buffer duration corresponding to the end of the segment, and calculate the average network bandwidth of this duration in the future as the training label.

[0057] The overall process of step 2 is as follows Figure 2 As shown, the specific operations are as follows:

[0058] Step A1: Let the discrete random variable S t represents the length of the bandwidth stability segment until the tth video block, S t All possible values ​​of are 1, 2, ..., t. Then S t =1 indicates c t is a segmentation point of a bandwidth stability segment; otherwise, c t It is a continuation of the previous bandwidth stability segment. At this time, S t =S t-1 +1. In the bandwidth measurement value C obtained 1:t Under the premise of t The conditional probability distribution law of the value p(S t |C 1:t ), according to the Bayesian formula:

[0059]

[0060] The numerator in the formula represents the length S of the bandwidth stability segment until the tth video block. t and the bandwidth measurement value C obtained 1:t The joint probability distribution p(S t ,C 1:t ), is obtained by recursive calculation as follows:

[0061]

[0062] Where p(c t |S t =i,C 1:t-1 ) represents the historical bandwidth information C 1:t-1 And S t =i (i = 1, 2, ... t), the current observation value c t The likelihood of Figure 2 It is abbreviated as π i (i=1,2,...t); p(S t |S t-1 ) indicates that the bandwidth is ct The probability of a jump at is a predefined parameter, which is usually set to the probability of an abnormal point appearing based on experience, that is, in, and Respectively represent the mean and standard deviation calculated using the original bandwidth dataset. Figure 2 It is abbreviated as p0; p(S t-1 ,C 1:t-1 ) represents the inference probability at the previous time point. In particular, set the recursive initial condition p(S1=1,C 1:1 )=1.

[0063] Step A2, determine the segmentation point. Buffer_total represents the total duration of the video block that the buffer can accommodate. The ratio of the current buffer duration to the total duration of the video block that the buffer can accommodate, that is, the buffer occupancy rate In order to adapt the determination of bandwidth stable segment segmentation to different network environments, based on the recursive calculation formula, the calculation of S t The potential segmentation point probability value p(S t =1|C 1:t ), p(S t =1|C 1:t ) and the buffer occupancy r. If p(S t =1|C 1:t ) is greater than the buffer occupancy, that is, p(S t =1|C 1:t )>r, then c t is a segmentation point of the bandwidth stability segment, starting from the previous segmentation point to c t-1 Marked as a bandwidth stable segment, c t is the beginning of the next stable segment; otherwise, the current point is considered to be the continuation of the previous stable segment. 1:n is divided into a set of stable segments, denoted as i and j are the video block numbers, where Represents the bandwidth sequence C i:j It is stable.

[0064] Step A3, due to the stable segment set C * The lengths of the various stable segments in may be different, so it is necessary to unify the input size of the SSS-PBP model. * The length m0 of the shortest stable segment is taken as the input size of the bandwidth prediction model, and then the stable segments with a length greater than m0 are The overlapping interception is performed by a sliding window method with a window length of m0 and a step size of 1 to generate a sub-segment of length m0, which is recorded as The video block numbers s and e represent the start and end points of the segment, respectively, and satisfy e-s+1=m0, which is used as the training feature. After downloading the e-th video chunk, the buffer duration is b e , L is the playback time of each video block, calculate the buffer length b e Average bandwidth within As training labels. Finally, we get the training samples of bandwidth prediction model. Step A3 The overall process is as follows Figure 3 shown.

[0065] Step 3: Model training. Use GRU to train the bandwidth prediction model. Specifically, the first layer of the model is a GRU layer with 80 hidden units, followed by a Dropout layer with a dropout rate of 0.2, which is used to randomly drop 20% of the neurons during training to prevent overfitting and improve the generalization ability of the model. The second layer is a GRU layer with 100 hidden units, followed by another Dropout layer with a dropout rate of 0.2 to further alleviate the risk of overfitting. Finally, the output is completed through a Dense layer, which has only one neuron for predicting scalar values. The entire model extracts the complex features of the time series by stacking two layers of GRU, and combines Dropout and fully connected layers to achieve efficient processing and prediction of input data.

[0066] Step 4: Bandwidth prediction based on the model. The trained SSS-PBP model is applied in the AITrans simulation environment. The AITrans simulation platform has simulated the download and playback process of video blocks, and also provides a QoE calculation module. The QoE of each video frame is QoE frame and the QoE of each video block, i.e., QoE chunk The calculation formula is as follows:

[0067] QoE frame =play_time·bitrate-1.5·rebuf-0.005·latency.

[0068]

[0069] Among them, play_time is the play time; bitrate is the bit rate; rebuf is the freeze duration; latency is the play delay; last_bitrate is the bit rate selected by the last video. The video available bit rate (bit rate) set by the simulation platform is {0.3, 0.6, 1.5, 2.5, 4, 6} Mbps.

[0070] When the bandwidth prediction model provided by the present invention is used to predict the bandwidth, the specific process is as follows: obtaining the bandwidth measurement value c of the t-th video block t and buffer duration b t , calculate S t The distribution law of , and the current buffer occupancy r. Then use p(S t =1|C 1:t ) and r determine c t Whether it corresponds to a segmentation point: (1) If c t is a segmentation point, indicating that the bandwidth has changed significantly, c t It is directly used as the predicted bandwidth and handed over to the ABR algorithm to make the bit rate decision. (2) If c t is not a segmentation point, it is considered to be part of the previous stable segment. At this time, based on S t The distribution law of p(S t =l|C 1:t ), determine the t is the maximum possible stable segment length l at the end, that is, argmax{p(S t =l|C 1:t )}. In order to input the stable segment of length l into the bandwidth prediction model for prediction, the input size m0 of the adaptation model needs to be adapted. ① If l ≥ m0, then the sub-segment from t-m0+1 to t with a length of m0 is intercepted, that is, Input SSS-PBP inference to get the predicted value; ② If l<m0, that is, the current stable segment length is smaller than the input size of the bandwidth prediction model, it is necessary to t-l+1:t Before that, fill in m0-l bandwidth data. Specifically, construct a length of m0-l and a mean of And the standard deviation is Random number sequence, and C t-l+1:t After splicing, the bandwidth prediction model is input to obtain the predicted value of the bandwidth, which can then be handed over to the ABR algorithm to make a bit rate decision.

[0071] Figure 4 The bandwidth stable segment segmentation effect of SSS-PBP provided in this example is shown. The figure shows that these segmentation points can be responded quickly, especially when the bandwidth drops suddenly. For example, between the video block index 352-353 in the figure, the bandwidth drops from 2.5Mbps to 1.3Mbps, and between the index 379-382, the bandwidth drops from 2.46Mbps to 0.83Mbps. SSS-PBP can effectively identify these segmentation points, marked with dotted lines in the figure, so as to provide accurate bandwidth values ​​for the ABR algorithm.

[0072] Figure 5The training and testing effects of the model using only GRU training, only stationary segment segmentation (SSS) GRU, and the SSS-PBP of the present invention using stationary segmentation and using the average bandwidth as the prediction label are progressively demonstrated. Whether it is the training error or the test error, it can be seen that the role of stationary segmentation on the predicted model, segmenting the bandwidth and predicting the average bandwidth within the buffer duration brings better model convergence performance.

[0073] Figure 6 The bandwidth prediction effect comparison chart of the bandwidth prediction model provided by the SSS-PBP of the present invention and the harmonic mean bandwidth prediction method (HM) used in MPC, the bandwidth prediction method (TR) used by ThroughputRule, and the moving average autoregression (ARMA) under the FCC data set is shown. Figure 6 In the video, the bandwidth drops at video blocks 47 and 83. SSS-PBP identifies them as segmentation points, and its prediction value quickly responds to the sudden change in bandwidth. In particular, at the 47th video block, the prediction values ​​of other bandwidth prediction algorithms such as TR, HM, and ARMA need to go through about 4 video blocks to gradually converge to the actual bandwidth in the face of the sudden drop in bandwidth. The actual bandwidth is overestimated between 47 and 50, which will lead to incorrect bitrate decisions and easily cause video freezes.

[0074] Figure 7 The total QoE bar graph of all video blocks and the CDF curve of the average QoE of each video block are shown after the bandwidth prediction model of the SSS-PBP of the present invention replaces the original bandwidth prediction method of the ABR algorithm (MPC, ThroughputRule) based on bandwidth prediction. Where (a) is the total QoE bar graph of all video blocks, and (b) is the CDF curve graph of the average QoE of each video block. Under the synthetic data and the public network bandwidth data set FCC, MPC, ThroughputRule, and ThroughputRule replaced by SSS-PBP (TR with SSS-PBP in the figure) and MPC (MPC with SSS-PBP in the figure) are compared. The results show that in the synthetic data set, the total QoE of the MPC video block using the SSS-PBP model is improved by 0.56%, and the total QoE of the ThroughputRule video block using the SSS-PBP model is improved by 6.13%. Under the FCC data set, the same performance is also shown through the CDF curve. However, the overall QoE of ThroughputRule combined with the bandwidth prediction model of the present invention is slightly lower than that of the pure MPC algorithm. This is because the present invention only focuses on accurate bandwidth prediction, while MPC also considers factors such as buffer occupancy and bit rate switching.

[0075] Figure 8 The CDF curves of the freeze duration ratio and playback delay are shown after the bandwidth prediction model SSS-PBP replaces the original bandwidth prediction methods of MPC and ThroughputRule, both using the FCC dataset. Figure 8 Figure (a) shows that the ThroughputRule and MPC models using SSS-PBP bandwidth prediction have lower freeze duration ratios, which are reduced by 15.94% and 21.41% respectively. Figure 8 Figure (b) shows that ThroughputRule with SSS-PBP reduces the average playback delay to 1.567 seconds, which meets the low delay (2 seconds) requirement for live streaming. In contrast, the delays of MPC and ThroughputRule are 2.425 seconds and 1.654 seconds, respectively. Compared with ThroughputRule and MPC, SSS-PBP reduces the delay by 5.26% and 4.11%, respectively, keeping the average delay within the acceptable range for live streaming. Although MPC with SSS-PBP does not fully meet the delay tolerance (less than 2 seconds), it still reduces the delay by 4.11% compared to the original MPC, showing some improvement.

[0076] Fig. 9 The average bit rate of videos in three real network bandwidth datasets, FCC, Oboe, Norway, and synthetic datasets, is shown after the bandwidth prediction model SSS-PBP replaces the original bandwidth prediction methods of MPC and ThroughputRule. The bit rate improvement achieved by MPC combined with SSS-PBP is 8.26% to 9.94% higher than the baseline MPC, while TR combined with SSS-PBP shows more significant improvements, with the average bit rate increased by 11.32% to 30.11% compared to TR.

[0077] The above experimental results effectively confirm the excellent performance of SSS-PBP under different network bandwidth environments in live broadcast scenarios.

Claims

1. A bandwidth prediction method based on buffer duration and stable segment segmentation, characterized in that: The following steps are involved: Step 1: Record the network bandwidth when downloading each video block, so as to construct a bandwidth sequence; at the same time, record the buffer duration after each video block is downloaded, that is, the total future playback time of all video blocks downloaded in the buffer, so as to construct a buffer duration sequence; Step 2: Calculate the probability of potential segmentation points in the bandwidth sequence, and then obtain segmentation points based on the potential segmentation points in combination with the buffer duration, so as to divide the bandwidth sequence into a stable segment set, and then unify the lengths of each stable segment in the stable segment set as training features; Finally, the average bandwidth corresponding to the buffer duration at the end of each bandwidth stabilization period is calculated as a training label, thereby obtaining training samples. Step 3, based on the training samples obtained in step 2, a bandwidth prediction model is constructed using a gated neural unit (GRU) and trained; Step 4, obtain the stable segment according to the network bandwidth and buffer duration when downloading the current video block, then construct the stable segment into a sub-segment that meets the training feature length of the bandwidth prediction model, and input it into the bandwidth prediction model to obtain the bandwidth prediction result.

2. The method according to claim 1, characterized in that In step 1, the bandwidth sequence is represented by C 1:n , C 1:n =[c1,c2,…,c n ], and c t represents the network bandwidth when the tth video block is downloaded, t∈{1,2,...,n}, n is the total number of video blocks counted in the bandwidth sequence; the corresponding buffer duration sequence is represented by B 1:n , B 1:n =[b1,b2,...,b n ], and b t Indicates the buffer length after the tth video chunk is downloaded.

3. The method according to claim 2, characterized in that c t It is calculated by the following formula: Where q represents the bit rate of the video block, q∈{1,2,...,K}, and K represents the total number of optional bit rate levels of the video block; represents the t-th video block with bit rate q, express The size of t Indicates the downloading time of the tth video chunk.

4. The method according to claim 3, characterized in that: In step 2, calculating the probability of potential segmentation points in the bandwidth sequence includes the following steps: Let the discrete random variable S t represents the length of the bandwidth stability segment until the tth video block; then S t =1 indicates c t is a segmentation point of a bandwidth stability segment; otherwise, c t It is a continuation of the previous bandwidth stability segment. At this time, S t =S t-1 +1; in the acquired bandwidth sequence C 1:t Under the premise of t The conditional probability distribution law of the value is p(S t |C 1:t ), where C 1:t =[c1,c2,…,c t ], p represents the probability, according to the Bayesian formula: The numerator in the above formula is the length S of the bandwidth stability segment until the tth video block. t and the acquired bandwidth sequence C 1:t The joint probability distribution p(S t ,C 1:t ), is obtained by recursive calculation as follows: Where p(c t |S t =i,C 1:t-1 ) represents the historical bandwidth sequence C 1:t-1 And S t =i (i = 1, 2, ... t), the current observation value c t The likelihood probability; p(S t |S t-1 ) is a predefined parameter, indicating that the bandwidth is c t The probability of a jump at , and set it as the probability of an abnormal point appearing, that is, in, and Respectively indicate the use of C 1:n The calculated mean and standard deviation; p(S t-1 ,C 1:t-1 ) represents the inference probability at the previous time point; and the initial condition of the recursive calculation is set to p(S1=1,C 1:1 )=1.

5. The method according to claim 4, characterized in that In step 2, the step of determining the segmentation point in combination with the buffer time includes: The buffer occupancy rate r is calculated by the following formula, that is, the ratio of the current buffer duration to the total duration of the video block that the buffer can accommodate: Where buffer_total indicates the total duration of the video block that the buffer can accommodate, b t Indicates the buffer length after the tth video chunk is downloaded; Then based on the recursive calculation formula, calculate t The potential segmentation point probability value p(S t =1|C 1:t ) and compared with the buffer occupancy r, if p(S t =1|C 1:t )>r, then we think c t is a segmentation point of the bandwidth stability segment, starting from the previous segmentation point to c t-1 Marked as a bandwidth stable segment, c t is the beginning of the next stable segment; otherwise, the current segmentation point is considered to be a continuation of the previous stable segment; after traversing all potential segmentation points, the bandwidth sequence C 1:n Split into a set of stable segments C * , i and j are both video block numbers, i.e., the i-th video block and the j-th video block, where Represents the bandwidth sequence C i:j It is stable.

6. The method according to claim 5, characterized in that In step 2, the step of unifying the lengths of the various stable segments in the stable segment set includes: The stable segment set C * The length m0 of the shortest stable segment is used as the unified standard, and the stable segments with a length greater than m0 are The sub-segments are overlapped by the sliding window method with a window length of m0 and a step size of 1 to generate a sub-segment of length m0, which is recorded as And used as training features, where s and e represent the starting point of the video block sequence number as the starting point and the video block sequence number as the end point in the sub-segment respectively, and satisfy e-s+1=m0.

7. The method according to claim 6, characterized in that In step 2, the training labels are obtained by the following steps: The average bandwidth corresponding to the buffer duration at the end of each bandwidth stabilization period is calculated by the following formula As training labels: where b e Represents each sub-segment The buffer length after downloading the e-th video chunk, L is the playback time of each video chunk.

8. The method according to claim 1, characterized in that In the step 3, the bandwidth prediction model includes a first GRU layer, a first Dropout layer, a second GRU layer, a second Dropout layer and a Dense layer connected in sequence, the first GRU layer and the second GRU layer include 80 hidden units and 100 hidden units respectively, the first Dropout layer and the second Dropout layer are both set to a drop rate of 0.2, and the Dense layer is set to one neuron.

9. The method according to claim 7, characterized in that: In step 4, the step of obtaining a stable segment according to the network bandwidth and buffer duration when downloading the current video block includes: Get the network bandwidth c when downloading the tth video chunk t and buffer duration b t , calculate S t The potential segmentation point probability value p(S t =1|C 1:t ), and the current buffer occupancy r, and then use p(S t =1|C 1:t ) and r determine c t Whether it corresponds to a segmentation point: 1) If p(S t =1|C 1:t )>r, indicating c t is a segmentation point, then c t Directly used as bandwidth prediction result; 2) If p(S t =1|C 1:t )≤r, indicating that c t is not a segmentation point, then based on S t The distribution law of p(S t =l|C 1:t ), determine the t is the maximum possible stable segment length l at the end, that is, arg max{p(S t =l|C 1:t )}.

10. The method according to claim 9, characterized in that In step 4, the step of constructing the stable segment into a sub-segment that meets the characteristic length of the bandwidth prediction model training includes: The stable segment of length l to be input into the bandwidth prediction model is constructed as a subsegment of the bandwidth prediction model input size m0: ①If l≥m0, then cut off the sub-segment from t-m0+1 to t with a length of m0, that is Then input the bandwidth prediction model; ②If l<m0, then in the stable segment C t-l+1:t Before completing m0-l bandwidth data: by constructing a length of m0-l and a mean of And the standard deviation is σ Ct-l+1:t Random number sequence, and C t-l+1:t After splicing, input the bandwidth prediction model.

Citation Information

Patent Citations

  • Video stream adaptive transmission method based on deep reinforcement learning under QUIC protocol

    CN115022684A

  • Video stream bit rate self-adaption method and device based on bandwidth prediction

    CN119071576A