Jamming prediction method and device, equipment, storage medium and product

By constructing a combination of event feature vectors and temporal feature vectors for streaming media mutation events, the problem of the inability to predict stuttering in existing technologies is solved, thereby improving prediction accuracy and enhancing the smoothness of video playback and user experience.

CN121940591APending Publication Date: 2026-04-28FANXING INTELLIGENT COMPUTING TECHNOLOGY (BEIJING) CO LTD +2
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
FANXING INTELLIGENT COMPUTING TECHNOLOGY (BEIJING) CO LTD
Filing Date
2025-12-09
Publication Date
2026-04-28

AI Technical Summary

Technical Problem

Existing technologies cannot achieve forward-looking stuttering prediction in the field of video streaming and have low prediction accuracy, and cannot effectively capture the profound impact of sudden events on the playback status.

Method used

By acquiring streaming media mutation events and their change information during the streaming media transmission process, an event feature vector is constructed, and combined with the temporal feature vector of the target object, stuttering prediction is performed. A machine learning model is then used to output the stuttering probability in the future time period.

Benefits of technology

It enables proactive stuttering prediction, improves prediction accuracy, enhances video playback smoothness and user experience, and provides effective support for business optimization decisions in uncertain environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121940591A_ABST
    Figure CN121940591A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a lag prediction method and device, equipment, a storage medium and a product. The method comprises the following steps: acquiring a streaming media mutation event of a target object in a streaming media transmission process and corresponding event change information; determining an event feature vector of the streaming media mutation event according to the event change information; and according to the event feature vector and the time sequence feature vector of the target object at the current moment, carrying out lagging prediction to obtain a lagging probability of the target object in the target time period. According to the embodiment of the invention, the defect of lack of accurate event modeling in the prior art is made up, the profound influence of sudden events such as network switching and CDN switching on the playing state can be effectively captured, prospective prediction is realized, and the prediction precision is improved, so that an effective support is provided for service optimization decision making in an uncertain environment, and the service optimization decision making efficiency is improved. And the video playing fluency and the user experience are effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of streaming media technology, and in particular relates to a method, apparatus, device, storage medium and product for predicting buffering issues. Background Technology

[0002] In the field of video streaming playback, the audio / video access SDK (Software Development Kit) acts as a buffer proxy for the player, and one of its core functions is to predict the risk of stuttering to ensure smooth playback. Existing technologies mainly predict stuttering by analyzing the trends of inflow and outflow rates in the buffer, estimating buffer duration based on the rhythm of HTTP (Hypertext Transfer Protocol) requests, or using machine learning to post-classify download rate waveforms. However, these methods have significant limitations: they are essentially post-hoc analyses or instantaneous assessments of the current state, unable to provide forward-looking predictions of the buffer state at multiple future time steps; furthermore, because they do not consider the profound impact of sudden events on the playback state, the accuracy of the prediction results is difficult to guarantee. Summary of the Invention

[0003] This application provides a method, apparatus, device, storage medium, and product for predicting stuttering, which can solve the technical problem that existing stuttering prediction methods in the field of video streaming media cannot achieve forward-looking prediction and have low prediction accuracy.

[0004] In a first aspect, embodiments of this application provide a stuttering prediction method, the method comprising: Obtain streaming media mutation events and corresponding event change information that occur during streaming media transmission for the target object; The event feature vector of the streaming media mutation event is determined based on the event change information; Based on the event feature vector and the time-series feature vector of the target object at the current moment, stuttering prediction is performed to obtain the stuttering probability of the target object within the target time period.

[0005] In one feasible implementation, the step of determining the event feature vector of the streaming media mutation event based on the event change information includes: The event type, event occurrence time, event context information, and event intensity of the streaming media mutation event are determined based on the event change information. Perform vector transformations on the event type and the event context information respectively to obtain a first feature vector corresponding to the event type and a second feature vector corresponding to the event context information; The event feature vector of the streaming media mutation event is determined based on the time of the event occurrence, the event intensity, the first feature vector, and the second feature vector.

[0006] In one feasible implementation, the step of determining the event feature vector of the streaming media mutation event based on the event occurrence time, the event intensity, the first feature vector, and the second feature vector includes: Calculate the time difference between the time the event occurred and the current time; The attenuation characteristics are obtained by calculating the attenuation based on the time difference. The event feature vector of the streaming media mutation event is determined by adding the weighted time decay feature, the weighted event intensity, the first feature vector, and the second feature vector.

[0007] In one feasible implementation, the step of predicting the lag probability of the target object within a target time period based on the event feature vector and the temporal feature vector of the target object at the current moment includes: The event feature vector and the temporal feature vector of the target object at the current time are concatenated to obtain the target feature vector of the target object at the current time. The target feature vector is input into the target prediction model to perform stuttering prediction, and multiple stuttering probabilities corresponding to each time step of the target object within the target time period are obtained; wherein, the multiple stuttering probabilities corresponding to each time step include the stuttering probabilities corresponding to each quantile.

[0008] In one feasible implementation, the step of inputting the target feature vector into a target prediction model to perform stutter prediction and obtaining multiple stutter probabilities corresponding to each time step of the target object within the target time period includes: The target feature vector is input into the target prediction model to perform stuttering prediction, and multiple stuttering probabilities corresponding to the target object at the first time step are obtained. The multiple stuttering probabilities corresponding to the previous time step and the target feature vector are input into the target prediction model to perform stuttering prediction, so as to obtain the multiple stuttering probabilities corresponding to the target object in the next time step; wherein, the multiple stuttering probabilities corresponding to the first time step are the initial multiple stuttering probabilities corresponding to the previous time step. Repeat the process of inputting multiple stuttering probabilities corresponding to the previous time step and the target feature vector into the target prediction model to perform stuttering prediction, and obtaining multiple stuttering probabilities corresponding to the target object in the next time step, until multiple stuttering probabilities corresponding to the target object in each time step within the target time period are obtained.

[0009] In one feasible implementation, before the step of predicting the lag probability of the target object within the target time period based on the event feature vector and the temporal feature vector of the target object at the current moment, the method further includes: Obtain the data rate parameters and buffer data volume of the target object at a historical time, and obtain the data rate parameters and network transmission quality parameters of the target object at the current time; The data volume is calculated based on the data rate parameters and buffer data volume of the target object at historical moments to determine the buffer data volume of the target object at the current moment; The buffer data volume, data rate parameters, and network transmission quality parameters of the target object at the current moment are normalized to obtain the temporal feature vector of the target object at the current moment.

[0010] Secondly, embodiments of this application provide a stuttering prediction device, the device comprising: The acquisition module is used to acquire streaming media mutation events and corresponding event change information that occur to the target object during streaming media transmission. The processing module is used to determine the event feature vector of the streaming media mutation event based on the event change information; The prediction module is used to predict the stuttering probability of the target object within the target time period based on the event feature vector and the temporal feature vector of the target object at the current time.

[0011] Thirdly, embodiments of this application provide a stuttering prediction device, the device including: a processor, and a memory storing computer program instructions; the processor reads and executes the computer program instructions to implement the stuttering prediction method as described in the first aspect.

[0012] Fourthly, embodiments of this application provide a computer storage medium on which computer program instructions are stored. When the computer program instructions are executed by a processor, they implement the stuttering prediction method as described in the first aspect.

[0013] Fifthly, embodiments of this application provide a computer program product in which instructions, when executed by a processor of an electronic device, cause the electronic device to perform the stuttering prediction method as described in the first aspect.

[0014] The stuttering prediction method, apparatus, device, storage medium, and product of this application construct event feature vectors by using event change information from streaming media mutation events. This overcomes the shortcomings of existing technologies in accurately modeling events and effectively captures the profound impact of mutation events such as network switching and CDN (Content Delivery Network) switching on playback status. Furthermore, by combining the event feature vector with the temporal feature vector of the target object at the current moment for stuttering prediction, the stuttering probability within the target time period can be obtained. This achieves forward-looking prediction, improves prediction accuracy, and provides effective support for business optimization decisions in uncertain environments, effectively improving the smoothness of video playback and user experience. Attached Figure Description

[0015] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0016] Figure 1 This is a schematic flowchart of an embodiment of a stuttering prediction method provided in this application. Figure 2 This is a schematic flowchart of a second embodiment of a stuttering prediction method provided in this application. Figure 3 This is a flowchart illustrating Embodiment 3 of a stuttering prediction method provided in this application. Figure 4 This is a schematic diagram of the structure of a stuttering prediction device provided in an embodiment of this application; Figure 5 This is a schematic diagram of the structure of a stuttering prediction device provided in an embodiment of this application. Detailed Implementation

[0017] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.

[0018] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.

[0019] It should be noted that the acquisition, storage, use, and processing of data in this application embodiment all comply with the relevant provisions of national laws and regulations.

[0020] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.

[0021] In video streaming applications, the audio / video access SDK is integrated with the audio / video player. The SDK supports accessing the internet via Wi-Fi or 4G / 5G, acquiring data from CDN or peer-to-peer nodes, and then transmitting it to the player for decoding and playback. Functionally, the SDK acts as a playback buffer proxy before the player. It continuously acquires video streams from the network, assembles and processes them, and then streams them to the player. Analyzing the SDK buffer to determine whether a series of events in the video stream will cause the current buffer to exhaustion, ultimately leading to video stuttering, becomes crucial. When the risk of stuttering is predicted, the SDK can take measures such as switching the video bitrate and adjusting the playback rhythm to ensure smooth playback.

[0022] The current audio and video access SDKs mainly employ the following three methods for estimating and analyzing the player buffer: 1. On the SDK side, by real-time calculation of the video stream speed flowing out of the SDK (playback speed) and into the SDK (download speed), combined with frame group receive pointer and playback pointer information, predicting whether stuttering will occur in the next stage. This type of algorithm can analyze the inflow and outflow trends of the bitstream; 2. By identifying the HAS (HTTP Adaptive Streaming, such as DASH, HLS) request / response rhythm, estimating the buffer's playable duration, and counting the number and duration of stutters; 3. Using machine learning methods to extract download rate information from the bitstream and label it with playback status tags. A video stuttering prediction model is obtained by training the rate waveform features using machine learning classification algorithms. In actual deployment, after the SDK receives the video bitstream, it uses this model to analyze the bitstream waveform to determine whether stuttering will occur. However, the aforementioned existing technologies all have significant shortcomings: First, they only focus on "post-event" stuttering analysis or "current" playback status assessment, and cannot achieve multi-step forward-looking prediction; second, they lack accurate modeling of event characteristics and fail to fully consider the profound impact of sudden events on playback status; third, they fail to provide effective confidence information for business decisions, making it difficult to make accurate optimization decisions in uncertain environments.

[0023] To address the problems of the prior art, embodiments of this application provide a method, apparatus, device, storage medium, and product for predicting stuttering. The stuttering prediction method provided in this application embodiment will be described first below.

[0024] Figure 1 A flowchart illustrating a stuttering prediction method provided in one embodiment of this application is shown. Figure 1 As shown, the method may include steps 210-230: Step 210: Obtain streaming media mutation events and corresponding event change information that occur during streaming media transmission of the target object.

[0025] The execution entity in this embodiment can be a stuttering prediction device, which is a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone. The stuttering prediction device can acquire streaming media mutation events and corresponding event change information that occur during the streaming media transmission of the target object, construct an event feature vector for the streaming media mutation event based on the change information, and combine the event feature vector with the temporal features at the current moment to predict the stuttering probability of the target object at a future time step.

[0026] The target object refers to the entity that needs to be predicted for buffering, such as a video playback session, a video player instance, or an audio / video access SDK. Streaming media mutation events refer to discrete events that occur during streaming media transmission and may cause drastic changes in the data transmission state, including but not limited to CDN switching events, Wi-Fi / 4G / 5G network switching events, bitrate switching events, packet loss events, and keyframe loss events. Event change information is a data set used to describe the specific attributes of streaming media mutation events, including but not limited to: event type, event occurrence time, event context information (such as CDN node identifier before and after the switch), and event intensity (such as the bandwidth change rate before and after the switch, and the packet loss rate of packet loss events).

[0027] After triggering the prediction of stuttering for the target object, a historical time window is determined by backtracking backward at a fixed time step, with the current time as the end point. The system then acquires streaming media mutation events and corresponding event change information that occur within this window during the streaming media transmission process. In this embodiment, the time step can be preset or dynamically adjusted; this embodiment does not impose any limitations on this.

[0028] Optionally, the status changes of the network module, CDN scheduling module, bitrate control module, buffer management module and other related functional modules can be monitored in real time through the status listener of the target object; when a sudden change that meets the preset threshold (such as network type change, CDN node identifier switch) is detected, the event capture mechanism is triggered to synchronously collect and store the event change information corresponding to the event.

[0029] Step 220: Determine the event feature vector of the streaming media mutation event based on the event change information.

[0030] An event feature vector refers to a numerical representation that characterizes the event's properties by mapping the event change information of a streaming media mutation event into a low-dimensional, dense vector space through mathematical transformation. In this embodiment, one streaming media mutation event corresponds to one event feature vector.

[0031] Optionally, the data in the event change information are concatenated to form an original feature vector; this original feature vector is then input into a small feedforward neural network encoder, which learns the complex relationships between the data through nonlinear transformation and compresses and encodes them into a low-dimensional event feature vector.

[0032] In addition to the methods described above, event feature vectors can also be obtained through digital and standardized processing such as event embedding. This embodiment does not limit the method of obtaining event feature vectors.

[0033] Step 230: Based on the event feature vector and the temporal feature vector of the target object at the current moment, perform stuttering prediction to obtain the stuttering probability of the target object within the target time period.

[0034] The current moment refers to the time step at which stuttering prediction for the target object is triggered; the temporal feature vector is a vector composed of a series of continuously changing runtime state parameters of the target object at the current moment (such as download speed, playback speed, buffer size, etc.) after normalization, reflecting the instantaneous state of the target object. Among them, the temporal feature vector changes over time, directly affecting the state of the buffer and the smoothness of video playback.

[0035] The target time period refers to the future time interval from which the probability of buffer overflow needs to be predicted, and may include one time step or multiple consecutive prediction time steps. The probability of buffer overflow refers to the probability value of the target object experiencing buffer exhaustion at each time step within the target time period, resulting in buffer overflow. Multiple quantiles can be output according to requirements to represent the corresponding probabilities.

[0036] Optionally, the time-series feature vector at the current moment is concatenated with the event feature vectors of all streaming media mutation events that occurred within the historical time window and during streaming media transmission. This concatenation is used as the input to a recurrent neural network. The predicted probability of the previous time step and the concatenated features are used as recurrent inputs to infer step by step, and the stuttering probability of all time steps within the target time period is output.

[0037] In addition to the methods mentioned above, stuttering prediction can also be performed using methods including but not limited to the following: the temporal feature vector at the current moment is fused and aligned with the event feature vectors of all streaming media mutation events that occurred within the historical time window and during streaming media transmission. The fused sequence is then input into a sequence model such as a temporal convolutional network or a Transformer encoder for processing. This model utilizes its powerful sequence modeling capabilities to output the stuttering probability of all time steps within the future target time period, achieving efficient multi-step prediction.

[0038] In one possible implementation, steps A11-A13 may be included before step 230: Step A11: Obtain the data rate parameters and buffer data volume of the target object at historical moments, and obtain the data rate parameters and network transmission quality parameters of the target object at the current moment.

[0039] A historical moment refers to a historical time step determined by looking back from the current moment as the end point and following a fixed time step. This historical time step can be consistent with the starting point of the historical time window used to statistically analyze streaming media mutation events.

[0040] Data rate parameters refer to parameters related to data transmission rate during streaming media transmission, which may include, but are not limited to, download speed. and playback speed Buffer data size This refers to the total amount of video data temporarily stored in the playback buffer of the target object that has not yet been consumed by the player. Network transmission quality parameters refer to parameters that characterize the state of the streaming media transmission network, and may include, but are not limited to, RTT (Round-Trip Time), packet loss rate, and jitter.

[0041] After triggering stuttering prediction for the target object, obtain the target object's data rate parameters and network transmission quality parameters at the current moment, as well as the target object's data rate parameters and buffer data volume at historical moments. The above parameters can be collected in real time or recorded periodically by calling the network monitoring module, buffer status query interface, and network diagnostic tools provided by the operating system within the target object.

[0042] Step A12: Calculate the data volume based on the data rate parameters and buffer data volume of the target object at historical moments to determine the buffer data volume of the target object at the current moment.

[0043] The amount of buffer data for the target object at the current moment. It can be calculated using the following formula: = + ( - ),in, It is the amount of buffer data at historical moments. , These are the download speed and playback speed at historical moments. It is the time step between the current moment and the historical moment.

[0044] Step A13: Normalize the buffer data volume, data rate parameter, and network transmission quality parameter of the target object at the current time to obtain the temporal feature vector of the target object at the current time.

[0045] After normalizing the buffer data volume, data rate parameters, and network transmission quality parameters of the target object at the current moment, they are concatenated in a preset order to form a vector of fixed dimensions, thereby obtaining the temporal feature vector at the current moment.

[0046] Alternatively, a Min-Max normalization method can be used to normalize the current buffer data size and data rate parameters (e.g., download rate). and playback speed Network transmission quality parameters (such as RTT, packet loss rate, jitter) are mapped to the interval [0, 1] to eliminate the dimensional differences between different parameters, and then concatenated in a preset order to form a time-series feature vector for the current moment. For example, the time-series feature vector = [download rate] Playback speed Buffer data size, RTT, packet loss rate, jitter.

[0047] In this embodiment, by accurately collecting the historical and current parameters of the target object, accurately calculating the current buffer data volume based on the buffer difference equation, and normalizing and concatenating the multi-dimensional parameters into a time-series feature vector, the accuracy of the buffer state calculation is ensured, and the dimensional differences between parameters are eliminated. This provides standardized, high-dimensional, and effective features for subsequent stuttering prediction, supporting the reliability and accuracy of forward-looking stuttering prediction.

[0048] This embodiment constructs an event feature vector by using event change information from streaming media mutation events, thus overcoming the shortcomings of existing technologies in accurately modeling events. It can effectively capture the profound impact of mutation events such as network switching and CDN (Content Delivery Network) switching on the playback status. Furthermore, by combining this event feature vector with the temporal feature vector of the target object at the current moment to predict stuttering, the stuttering probability within the target time period can be obtained, achieving forward-looking prediction and improving prediction accuracy. This provides effective support for business optimization decisions in uncertain environments and effectively improves the smoothness of video playback and user experience.

[0049] Based on the first embodiment of this application, in the second embodiment of this application, the content that is the same as or similar to that in the first embodiment described above can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 2 In the stuttering prediction method, step 220 may include steps 310-330: Step 310: Determine the event type, event occurrence time, event context information, and event intensity of the streaming media mutation event based on the event change information.

[0050] Event type refers to the classification identifier of streaming media mutation events, used to distinguish events of different natures; event occurrence time refers to the timestamp that triggered the streaming media mutation event; event context refers to the associated data describing the event occurrence scenario (such as the node identifiers before and after the switch in a CDN switch event, and the network type before and after the switch in a network switch event); event intensity refers to the numerical indicators used to quantify the severity or impact of the event, such as packet loss events using the packet loss rate per unit time, network switch events using the rate of change in network bandwidth before and after the switch, keyframe loss events using the proportion of keyframes lost per unit time, CDN switch events using the percentage of average latency difference between CDN nodes before and after the switch, and bitrate switch events using the ratio of the bitrate after the switch to the bitrate before the switch.

[0051] Step 320: Perform vector transformations on the event type and the event context information respectively to obtain the first feature vector corresponding to the event type and the second feature vector corresponding to the event context information.

[0052] The first feature vector refers to the quantized representation of the event type after vector transformation. It has a fixed dimension and corresponds one-to-one with the event type. The second feature vector refers to the quantized representation of the event context information after vector transformation. It has a fixed dimension and can accurately reflect the scene characteristics of the event.

[0053] Optionally, for event type The vector transformation is implemented using one-hot encoding: a fixed-dimensional basic vector space (e.g., a 5-dimensional vector space corresponding to 5 types of events) is pre-allocated for all streaming media mutation event types, and a unique one-hot encoded vector is assigned to each type of event. For example, [1 0 0 0 0] is assigned to network switching events, [0 1 0 0 0] to CDN switching events, and [0 0 1 0 0] to packet loss events; this one-hot encoded vector is the first feature vector corresponding to the event type. Regarding event context information The vector transformation is implemented using embedding: discrete event context information is mapped to a dense vector space of a preset dimension, generating a numerical vector of fixed dimension, which is the second feature vector corresponding to the event context information. .

[0054] Step 330: Determine the event feature vector of the streaming media mutation event based on the event occurrence time, the event intensity, the first feature vector, and the second feature vector.

[0055] Optionally, the event occurrence time, event intensity, first feature vector, and second feature vector can be concatenated to form an intermediate feature vector; this intermediate vector is then input into a small feedforward neural network. This neural network learns the complex interactions between the features through its non-linear activation function (such as ReLU) and ultimately outputs an event feature vector that integrates all the information. Besides the above method, other methods can also be used to determine the event feature vector of a streaming media mutation event; this embodiment does not impose any limitations on this approach.

[0056] In one feasible implementation, step 330 may further include steps B11-B13: Step B11: Calculate the time difference between the time the event occurred and the current time.

[0057] Step B12: Perform attenuation calculation based on the time difference to obtain the time attenuation characteristics.

[0058] Step B13: Add the weighted time decay feature, the weighted event intensity, the first feature vector, and the second feature vector to determine the event feature vector of the streaming media mutation event.

[0059] Optionally, the occurrence time of the streaming media mutation event and the current time that triggers the stuttering prediction are obtained, and the time interval between the two times is calculated to obtain the time difference. Substitute the time difference into a preset decay function (e.g., an exponential decay function). The decay calculation is performed to obtain the time decay characteristics that characterize the degree of decay of the event's impact over time. .

[0060] Weight parameters corresponding to time features The time decay feature is weighted and calculated by combining it with the time decay feature to obtain the weighted time decay feature; the weight parameters corresponding to the intensity feature are then used to calculate the weighted time decay feature. The event intensity is weighted by the event intensity to obtain the weighted event intensity. The weighted time decay feature and the weighted event intensity are then added to the first feature vector and the second feature vector to obtain the event feature vector corresponding to the streaming media mutation event. : + + + ( In this embodiment, the weight parameters corresponding to the time features... Weight parameters corresponding to intensity features It can be adjusted according to needs.

[0061] In this implementation, by calculating the time difference between the event and the current moment and generating a time decay feature, and combining it with weights, the event intensity, type features and context features are fused together to achieve accurate quantitative fusion of the event classification attributes, scene attributes and the degree of influence of time decay. This enables the event feature vector to truly reflect the real-time actual impact of the event, providing highly effective event feature support that is more in line with the actual streaming media transmission for subsequent stuttering prediction.

[0062] This embodiment determines the event type, event occurrence time, event context information, and event intensity of the streaming media mutation event based on the event change information; it performs vector transformations on the event type and the event context information to obtain a first feature vector corresponding to the event type and a second feature vector corresponding to the event context information; and it determines the event feature vector of the streaming media mutation event based on the event occurrence time, the event intensity, the first feature vector, and the second feature vector. This achieves comprehensive quantification of event classification attributes, scene association attributes, and impact degree, eliminating the problem that discrete event information is difficult to directly participate in stuttering prediction. It provides standardized, high-information-density event-dimensional feature support for subsequent stuttering prediction, ensuring accurate capture of event impact during stuttering prediction.

[0063] Based on any one or more embodiments of this application, in the third embodiment of this application, the content that is the same as or similar to the above embodiments can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 3 Step 230 may include steps 410-420: Step 410: Concatenate the event feature vector and the temporal feature vector of the target object at the current moment to obtain the target feature vector of the target object at the current moment.

[0064] Obtain the event feature vector of streaming media mutation events that occur in the target object within the historical time window and during streaming media transmission. The target object's temporal feature vector at the current moment is concatenated with the event feature vector according to a preset concatenation order to obtain the target feature vector at the current moment. (For example, target feature vector) =[Time series feature vector, event feature vector] When there are event feature vectors of multiple streaming media mutation events, they can be spliced ​​together in order of the occurrence time of each event from the most recent to the oldest.

[0065] Step 420: Input the target feature vector into the target prediction model to perform stutter prediction, and obtain multiple stutter probabilities corresponding to each time step of the target object within the target time period; wherein, the multiple stutter probabilities corresponding to the time step include the stutter probabilities corresponding to each quantile.

[0066] A target prediction model refers to a machine learning model used for predicting lag risk. It can output the lag probability of a target object at each time step within a future target time period, thus forming an interval estimate of the future lag risk. The target prediction model is obtained by training a machine learning model with a large number of sample feature vectors labeled with lag probability (sample feature vector = [time series feature vector, event feature vector]).

[0067] The quantile probabilities are predicted using quantile regression techniques, representing the probability of stuttering at specific quantiles (e.g., Q10%, Q50%, Q90%). Multiple quantile probabilities collectively characterize the distribution of future stuttering probabilities. For example, Q10% represents a low probability of stuttering; a value of 0.1 indicates a low likelihood of stuttering, and the system can maintain its existing playback strategy without immediate adjustments. Q50% represents the median probability of stuttering, indicating a moderate likelihood; the system can take measures such as adaptive bitrate adjustment or CDN switching to prevent stuttering. Q90% corresponds to a high probability of stuttering; a value of 0.8 indicates a high risk of stuttering, and the system can reduce the bitrate or perform other optimizations in advance to minimize the impact of stuttering on user experience. These outputs provide accurate stuttering probability range estimates for business decisions, helping the system flexibly choose adaptation decisions such as adjusting bitrate, switching networks, or using CDNs based on actual risk.

[0068] Optionally, the core architecture of the target prediction model can be a recurrent neural network, which takes the target feature vector at the current time as the input of the recurrent neural network, and uses the predicted probability of the previous time step and the current target feature vector as recursive input to infer step by step, and outputs multiple stutter probabilities for all time steps within the target time period.

[0069] In addition to the above methods, the core architecture of the target prediction model can also be a sequence model such as a temporal convolutional network or a Transformer encoder. Stuttering prediction can also be performed in ways including but not limited to the following: the target feature vector at the current time is input into a sequence model such as a temporal convolutional network or a Transformer encoder for processing; the model uses its powerful sequence modeling capabilities to output multiple stuttering probabilities for all time steps within the future target time period, thereby achieving efficient multi-step prediction.

[0070] In one feasible implementation, step 420 may further include steps C11-C13: Step C11: Input the target feature vector into the target prediction model to perform stutter prediction and obtain multiple stutter probabilities corresponding to the target object in the first time step.

[0071] Step C12: Input the multiple stuttering probabilities corresponding to the previous time step and the target feature vector into the target prediction model to perform stuttering prediction, and obtain the multiple stuttering probabilities corresponding to the target object in the next time step; wherein, the multiple stuttering probabilities corresponding to the first time step are the initial multiple stuttering probabilities corresponding to the previous time step.

[0072] Step C13: Repeat the process of inputting the multiple stuttering probabilities corresponding to the previous time step and the target feature vector into the target prediction model to perform stuttering prediction, and obtain the multiple stuttering probabilities corresponding to the target object in the next time step, until the multiple stuttering probabilities corresponding to the target object in each time step within the target time period are obtained.

[0073] The core architecture of the target prediction model is LSTM (Long Short-Term Memory Network), which has the ability to learn the relationship between historical time-series features and event features and to achieve multi-step recursive prediction. It can output multiple stutter probabilities corresponding to each time step; the first time step refers to the first prediction time step t+1 within the target time period.

[0074] The target feature vector obtained by concatenating the features at the current time t is input into the target prediction model. The model learns the correlation based on this feature vector and outputs the stuttering probability corresponding to each quantile of the target object at the first time step. This result will serve as the initial input for subsequent recursive predictions. Subsequently, the multiple stuttering probabilities corresponding to the first time step are used as the initial multiple stuttering probabilities corresponding to the previous time step, and these are input together with the target feature vector at the current time t into the target prediction model. The model combines the prediction result of the previous time step with the target feature vector to further infer and output the multiple stuttering probabilities corresponding to the target object at the next time step t+2, realizing recursive prediction based on the previous prediction results. The operation of "inputting the multiple stuttering probabilities corresponding to the previous time step together with the target feature vector at the current time t into the target prediction model" is repeated. Each prediction uses the prediction result of the immediately preceding time step as the recursive basis and continues to infer in combination with the target feature vector. This process continues until the model outputs the multiple stuttering probabilities corresponding to all consecutive time steps within the target time period, and finally completes the multi-step forward-looking stuttering risk prediction.

[0075] In this implementation, a recursive prediction mechanism is used to continuously reason by combining the target feature vector with the prediction result of the previous time step, and accurately output the multi-quantile stutter probability of each time step within the target time period. This achieves multi-step forward-looking stutter risk prediction and provides accurate time-series risk basis for the system to make optimization decisions in advance.

[0076] This embodiment concatenates the event feature vector and the temporal feature vector of the target object at the current moment to obtain the target feature vector of the target object at the current moment. The target feature vector is then input into a target prediction model for stuttering prediction, yielding multiple stuttering probabilities corresponding to each time step within the target time period. These stuttering probabilities include stuttering probabilities corresponding to each quantile. By fusing the temporal feature vector reflecting the real-time operating state of the target object with the event feature vector representing the attributes of historical streaming media mutation events, a high-information-density input feature that balances real-time status and the impact of historical events can be provided to the target prediction model. Furthermore, using a target prediction model supported by quantile regression technology, the multi-quantile stuttering probabilities for each time step within the target time period are output, forming a comprehensive stuttering risk interval estimate. This process achieves accurate and multi-scenario representation of future stuttering probabilities, providing differentiated decision-making basis for the system; it also further enhances the flexibility of the prediction results, providing the platform with fine-grained stuttering risk assessment, thereby supporting the system in making more accurate resource scheduling and optimization decisions, ultimately effectively improving the smoothness of streaming media playback and user experience.

[0077] like Figure 4 As shown, this application embodiment provides a stuttering prediction device 200, which may include an acquisition module 201, a processing module 202 and a prediction module 203; The acquisition module 201 is used to acquire streaming media mutation events and corresponding event change information that occur during the streaming media transmission of the target object.

[0078] Processing module 202 is used to determine the event feature vector of the streaming media mutation event based on the event change information.

[0079] The prediction module 203 is used to predict the lag based on the event feature vector and the time sequence feature vector of the target object at the current time, so as to obtain the lag probability of the target object in the target time period.

[0080] Optionally, the processing module 202 is further configured to: The event type, event occurrence time, event context information, and event intensity of the streaming media mutation event are determined based on the event change information. Perform vector transformations on the event type and the event context information respectively to obtain a first feature vector corresponding to the event type and a second feature vector corresponding to the event context information; The event feature vector of the streaming media mutation event is determined based on the time of the event occurrence, the event intensity, the first feature vector, and the second feature vector.

[0081] Optionally, the processing module 202 is further configured to: Calculate the time difference between the time the event occurred and the current time; The attenuation characteristics are obtained by calculating the attenuation based on the time difference. The event feature vector of the streaming media mutation event is determined by adding the weighted time decay feature, the weighted event intensity, the first feature vector, and the second feature vector.

[0082] Optionally, the prediction module 203 is further configured to: The event feature vector and the temporal feature vector of the target object at the current time are concatenated to obtain the target feature vector of the target object at the current time. The target feature vector is input into the target prediction model to perform stuttering prediction, and multiple stuttering probabilities corresponding to each time step of the target object within the target time period are obtained; wherein, the multiple stuttering probabilities corresponding to each time step include the stuttering probabilities corresponding to each quantile.

[0083] Optionally, the prediction module 203 is further configured to: The target feature vector is input into the target prediction model to perform stuttering prediction, and multiple stuttering probabilities corresponding to the target object at the first time step are obtained. The multiple stuttering probabilities corresponding to the previous time step and the target feature vector are input into the target prediction model to perform stuttering prediction, so as to obtain the multiple stuttering probabilities corresponding to the target object in the next time step; wherein, the multiple stuttering probabilities corresponding to the first time step are the initial multiple stuttering probabilities corresponding to the previous time step. Repeat the process of inputting multiple stuttering probabilities corresponding to the previous time step and the target feature vector into the target prediction model to perform stuttering prediction, and obtaining multiple stuttering probabilities corresponding to the target object in the next time step, until multiple stuttering probabilities corresponding to the target object in each time step within the target time period are obtained.

[0084] Optionally, the prediction module 203 is further configured to: Obtain the data rate parameters and buffer data volume of the target object at a historical time, and obtain the data rate parameters and network transmission quality parameters of the target object at the current time; The data volume is calculated based on the data rate parameters and buffer data volume of the target object at historical moments to determine the buffer data volume of the target object at the current moment; The buffer data volume, data rate parameters, and network transmission quality parameters of the target object at the current moment are normalized to obtain the temporal feature vector of the target object at the current moment.

[0085] Figure 5 A schematic diagram of the hardware structure of the stuttering prediction device provided in an embodiment of this application is shown.

[0086] The stuttering prediction device may include a processor 301 and a memory 302 storing computer program instructions.

[0087] Specifically, the processor 301 may include a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.

[0088] Memory 302 may include mass storage for data or instructions. For example, and not limitingly, memory 302 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. In one instance, memory 302 may include removable or non-removable (or fixed) media, or memory 302 may be non-volatile solid-state memory. Memory 302 may be internal or external to the integrated gateway disaster recovery device.

[0089] In one instance, memory 302 may be read-only memory (ROM). In one instance, the ROM may be a mask-programmed ROM, a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (EEPROM), an electrically rewritable ROM (EAROM), or flash memory, or a combination of two or more of these.

[0090] Memory 302 may include read-only memory (ROM), random access memory (RAM), disk storage media device, optical storage media device, flash memory device, electrical, optical, or other physical / tangible memory storage device. Therefore, generally, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the method according to one aspect of this disclosure.

[0091] The processor 301 reads and executes computer program instructions stored in the memory 302 to achieve... Figure 1 The stuttering prediction method in the illustrated embodiment.

[0092] In one example, the stuttering prediction device may also include a communication interface 303 and a bus 304. Wherein, for example... Figure 5 As shown, the processor 301, memory 302, and communication interface 303 are connected through bus 304 and complete communication with each other.

[0093] The communication interface 303 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.

[0094] Bus 304 includes hardware, software, or both, that couples components of a stuttering prediction device together. For example, and not as a limitation, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Extended Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hyper Transport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 304 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.

[0095] This stuttering prediction device can achieve a combination based on stuttering prediction methods. Figures 1-3 The method for predicting stuttering is described.

[0096] Furthermore, in conjunction with the stuttering prediction methods in the above embodiments, this application embodiment can provide a computer storage medium for implementation. The computer storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any of the stuttering prediction methods in the above embodiments.

[0097] This application also provides a computer program product, including a computer program that, when executed by a processor, implements any of the stuttering prediction methods described in the above embodiments.

[0098] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.

[0099] The functional blocks shown in the above-described block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, read-only memory (ROM), flash memory, erasable read-only memory (EROM), floppy disks, compact disc read-only memory (CD-ROM), optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.

[0100] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.

[0101] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.

[0102] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.

Claims

1. A stuttering prediction method, characterized in that, The method includes: Obtain streaming media mutation events and corresponding event change information that occur during streaming media transmission for the target object; The event feature vector of the streaming media mutation event is determined based on the event change information; Based on the event feature vector and the time-series feature vector of the target object at the current moment, stuttering prediction is performed to obtain the stuttering probability of the target object within the target time period.

2. The method according to claim 1, characterized in that, The step of determining the event feature vector of the streaming media mutation event based on the event change information includes: The event type, event occurrence time, event context information, and event intensity of the streaming media mutation event are determined based on the event change information. Perform vector transformations on the event type and the event context information respectively to obtain a first feature vector corresponding to the event type and a second feature vector corresponding to the event context information; The event feature vector of the streaming media mutation event is determined based on the time of the event occurrence, the intensity of the event, the first feature vector, and the second feature vector.

3. The method according to claim 2, characterized in that, The step of determining the event feature vector of the streaming media mutation event based on the event occurrence time, the event intensity, the first feature vector, and the second feature vector includes: Calculate the time difference between the time the event occurred and the current time; The attenuation characteristics are obtained by calculating the attenuation based on the time difference. The event feature vector of the streaming media mutation event is determined by adding the weighted time decay feature, the weighted event intensity, the first feature vector, and the second feature vector.

4. The method according to claim 1, characterized in that, The step of predicting the probability of lag for the target object within a target time period based on the event feature vector and the temporal feature vector of the target object at the current moment includes: The event feature vector and the temporal feature vector of the target object at the current time are concatenated to obtain the target feature vector of the target object at the current time. The target feature vector is input into the target prediction model to perform stuttering prediction, and multiple stuttering probabilities corresponding to each time step of the target object within the target time period are obtained; wherein, the multiple stuttering probabilities corresponding to each time step include the stuttering probabilities corresponding to each quantile.

5. The method according to claim 4, characterized in that, The step of inputting the target feature vector into the target prediction model to perform stutter prediction and obtaining multiple stutter probabilities corresponding to each time step of the target object within the target time period includes: The target feature vector is input into the target prediction model to perform stuttering prediction, and multiple stuttering probabilities corresponding to the target object at the first time step are obtained. The multiple stuttering probabilities corresponding to the previous time step and the target feature vector are input into the target prediction model to perform stuttering prediction, so as to obtain the multiple stuttering probabilities corresponding to the target object in the next time step; wherein, the multiple stuttering probabilities corresponding to the first time step are the initial multiple stuttering probabilities corresponding to the previous time step. Repeat the process of inputting multiple stuttering probabilities corresponding to the previous time step and the target feature vector into the target prediction model to perform stuttering prediction, and obtaining multiple stuttering probabilities corresponding to the target object in the next time step, until multiple stuttering probabilities corresponding to the target object in each time step within the target time period are obtained.

6. The method according to any one of claims 1 to 5, characterized in that, Before the step of predicting the lag probability of the target object within the target time period based on the event feature vector and the temporal feature vector of the target object at the current moment, the method further includes: Obtain the data rate parameters and buffer data volume of the target object at a historical time, and obtain the data rate parameters and network transmission quality parameters of the target object at the current time; The data volume is calculated based on the data rate parameters and buffer data volume of the target object at historical moments to determine the buffer data volume of the target object at the current moment; The buffer data volume, data rate parameters, and network transmission quality parameters of the target object at the current moment are normalized to obtain the temporal feature vector of the target object at the current moment.

7. A stuttering prediction device, characterized in that, The device includes: The acquisition module is used to acquire streaming media mutation events and corresponding event change information that occur to the target object during streaming media transmission. The processing module is used to determine the event feature vector of the streaming media mutation event based on the event change information; The prediction module is used to predict the stuttering probability of the target object within the target time period based on the event feature vector and the temporal feature vector of the target object at the current time.

8. A stuttering prediction device, characterized in that, The stuttering prediction device includes: a processor and a memory storing computer program instructions; the processor reads and executes the computer program instructions to implement the stuttering prediction method as described in any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions, which, when executed by a processor, implement the stuttering prediction method as described in any one of claims 1-6.

10. A computer program product, characterized in that, When the instructions in the computer program product are executed by the processor of the electronic device, the electronic device performs the stuttering prediction method as described in any one of claims 1-6.