Video code rate adjustment method and device, equipment and storage medium
By predicting and evaluating network index data and dynamically adjusting the bit rate and frame rate of video, the problems of bandwidth prediction uncertainty and insufficient data quality in the prior art are solved, and more efficient video transmission and better user experience are achieved.
Patent Information
- Application Number
- CN202411782582.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-05
- Publication Date
- 2025-04-11
AI Technical Summary
In the current video bit rate adjustment technology, uncertainty in bandwidth prediction and insufficient data quality lead to frequent bit rate adjustments, affecting user experience, and existing methods are difficult to effectively cope with the complexity of the network environment.
By predicting the network index data at the current moment, obtaining the network index data at the next moment, and weighting the network quality score based on the preset contribution coefficients to obtain the total score of the target network quality, so as to evaluate the network quality during the video transmission process in real time, and dynamically adjust the video code rate and frame rate to optimize bandwidth utilization and user experience.
Real-time evaluation and dynamic adjustment of network quality during video transmission is realized, which improves the smoothness and quality of video transmission, significantly improves user viewing experience, and optimizes bandwidth utilization.
Smart Images

Figure CN119815131A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of deep learning technology, and in particular to a video bit rate adjustment method, apparatus, device and storage medium. Background Art
[0002] Among the currently widely used video bitrate adjustment technologies, directly predicting transmission bandwidth information is a common method. However, this method faces significant challenges. First, there is a lot of uncertainty in bandwidth prediction. Factors such as dynamic changes in network topology, diversity in user behavior, and fluctuations in application requirements can lead to frequent fluctuations in bandwidth. This fluctuation not only makes bitrate adjustments more frequent, but also directly affects user experience and reduces user satisfaction with network services.
[0003] Secondly, the lack of bandwidth prediction data is also a key issue. During the data collection process, there are often errors in the quantification of uplink and downlink bandwidths. These errors are further affected by factors such as changes in network topology and user behavior, resulting in poor quality of collected data. This low-quality data input directly affects the accuracy of the prediction model, making it difficult for bandwidth prediction results to achieve the expected results.
[0004] Therefore, current bandwidth prediction methods have shown obvious limitations when faced with the complexity of the network environment and the instability of data quality. Summary of the invention
[0005] Embodiments of the present application provide a video bit rate adjustment method, device, system, electronic device, and computer-readable storage medium.
[0006] In a first aspect, an embodiment of the present application provides a method for adjusting a video bit rate, the method comprising:
[0007] Predicting second network indicator data corresponding to a next moment based on the pre-acquired first network indicator data at the current moment;
[0008] Obtaining a network quality score corresponding to each of the second network indicator data;
[0009] A weighted sum is performed on each of the network quality scores according to a preset contribution coefficient to obtain a target network quality total score, wherein the target network quality total score is used to determine the network quality during video transmission.
[0010] Optionally, before the step of predicting the second network indicator data corresponding to the next moment based on the pre-acquired first network indicator data at the current moment, the method includes:
[0011] Obtain historical network indicator data for different business scenarios;
[0012] Determine the network indicator score corresponding to each of the historical indicator data according to the preset correspondence relationship between the network indicator data and the network indicator score;
[0013] All the historical indicator data are divided according to a preset quality score range, and the network indicator data in each preset quality score range is sampled to obtain target network indicator data, wherein the target network indicator data is used to train a preset initial prediction model.
[0014] Optionally, predicting the second network indicator data corresponding to the next moment based on the pre-acquired first network indicator data at the current moment includes:
[0015] The preset initial prediction model is trained by using the target network indicator data to generate a prediction model;
[0016] The first network indicator data at the current moment obtained in advance is input into the prediction model to predict the second network indicator data corresponding to the next moment.
[0017] Optionally, the second network indicator data includes transmission delay data, packet loss rate and network jitter data; and obtaining a network quality score corresponding to each of the second network indicator data includes:
[0018] Generate a first network quality score corresponding to the transmission delay data according to the delay adjustment factor and the transmission delay data;
[0019] Generating a second network quality score corresponding to the packet loss rate according to the packet loss rate prediction value;
[0020] A third network quality score corresponding to the network jitter data is generated according to the network jitter data and the jitter adjustment factor.
[0021] Optionally, the preset contribution coefficients include a first contribution coefficient corresponding to the transmission delay data, a second contribution coefficient corresponding to the packet loss rate, and a third contribution coefficient corresponding to the network jitter data;
[0022] The weighted summing of each network quality score according to the preset contribution coefficient to obtain the target network quality total score includes:
[0023] The target network quality total score is obtained by summing up the first contribution coefficient multiplied by the transmission delay data, the second contribution coefficient multiplied by the packet loss rate, and the third contribution coefficient multiplied by the network jitter data.
[0024] Optionally, after the step of performing weighted summation on each of the network quality scores according to a preset contribution coefficient to obtain a target network quality total score, the method includes:
[0025] The bit rate corresponding to the video is adjusted during the video transmission process according to the target network quality total score.
[0026] Optionally, adjusting a bit rate corresponding to the video during video transmission according to the target network quality total score includes:
[0027] When the current frame rate corresponding to the video is greater than a preset threshold during video transmission, the frame rate corresponding to the video is adjusted according to the target network quality total score, and the bit rate corresponding to the video is adjusted according to the target network quality total score;
[0028] When the current frame rate corresponding to the video is less than or equal to a preset threshold during video transmission, the bit rate corresponding to the video is adjusted according to the target network quality total score.
[0029] In a second aspect, an embodiment of the present application provides a video bit rate adjustment device, the device comprising:
[0030] A prediction module, used to predict second network indicator data corresponding to a next moment based on the first network indicator data at the current moment acquired in advance;
[0031] An acquisition module, used to acquire a network quality score corresponding to each of the second network indicator data;
[0032] The summing module is used to perform weighted summation on each of the network quality scores according to a preset contribution coefficient to obtain a target network quality total score, wherein the target network quality total score is used to evaluate the network quality during video transmission.
[0033] Optionally, the device further comprises:
[0034] The historical acquisition module is used to obtain historical network indicator data in different business scenarios;
[0035] A determination module, configured to determine the network indicator score corresponding to each of the historical indicator data according to a preset correspondence relationship between the network indicator data and the network indicator score;
[0036] The sampling module is used to divide all the historical indicator data according to a preset quality score range, and sample the network indicator data in each preset quality score range to obtain target network indicator data, wherein the target network indicator data is used to train a preset initial prediction model.
[0037] Optionally, the prediction module includes:
[0038] A first prediction submodule, used to train the preset initial prediction model through the target network indicator data to generate a prediction model;
[0039] The second prediction submodule is used to input the pre-acquired first network indicator data at the current moment into the prediction model to predict the second network indicator data corresponding to the next moment.
[0040] Optionally, the second network indicator data includes transmission delay data, packet loss rate and network jitter data, and the acquisition module includes:
[0041] A first acquisition submodule, configured to generate a first network quality score corresponding to the transmission delay data according to a delay adjustment factor and the transmission delay data;
[0042] A second acquisition submodule, configured to generate a second network quality score corresponding to the packet loss rate according to the packet loss rate prediction value;
[0043] The third acquisition submodule is used to generate a third network quality score corresponding to the network jitter data according to the network jitter data and the jitter adjustment factor.
[0044] Optionally, the preset contribution coefficients include a first contribution coefficient corresponding to the transmission delay data, a second contribution coefficient corresponding to the packet loss rate, and a third contribution coefficient corresponding to the network jitter data;
[0045] The summing module comprises:
[0046] A summing submodule is used to sum the first contribution coefficient multiplied by the transmission delay data, the second contribution coefficient multiplied by the packet loss rate, and the third contribution coefficient multiplied by the network jitter data to obtain a total target network quality score.
[0047] Optionally, the adjustment module includes:
[0048] The first adjustment submodule is used to adjust the frame rate corresponding to the video according to the target network quality total score when the current frame rate corresponding to the video is greater than a preset threshold during video transmission, and to adjust the bit rate corresponding to the video according to the target network quality total score.
[0049] Optionally, the adjustment module includes:
[0050] The second adjustment submodule is used to adjust the bit rate corresponding to the video according to the target network quality total score when the current frame rate corresponding to the video is less than or equal to a preset threshold during the video transmission process.
[0051] In a third aspect, an embodiment of the present application further provides an electronic device, comprising: a processor; and a memory for storing instructions executable by the processor, wherein the processor is configured to execute the instructions to implement any of the video bit rate adjustment methods described above.
[0052] In a fourth aspect, an embodiment of the present application further provides a storage medium, which, when instructions in the storage medium are executed by a processor of an electronic device, enables the electronic device to execute any of the video bit rate adjustment methods described above.
[0053] In an embodiment of the present application, the first network indicator data at the current moment is predicted to obtain the second network indicator data at the next moment, and the network quality score corresponding to each second network indicator data is weighted and summed in combination with the pre-set contribution coefficient to obtain the target network quality total score. This method can not only evaluate the network quality during video transmission in real time, but also improve the accuracy and stability of network quality assessment by dynamically adjusting the prediction model and weighting coefficient. During video transmission, when the current frame rate of the video is greater than the preset threshold, the frame rate and bit rate of the video are adjusted according to the target network quality total score to optimize bandwidth utilization and user experience; when the current frame rate of the video is less than or equal to the preset threshold, only the bit rate of the video is adjusted to ensure video quality while reducing bandwidth occupancy. Through this adaptive adjustment strategy, the embodiment of the present application can effectively improve the fluency and quality of video transmission and significantly improve the user viewing experience.
[0054] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] Various other advantages and benefits will become apparent to those of ordinary skill in the art by reading the detailed description of the preferred embodiments below. The accompanying drawings are only for the purpose of illustrating the preferred embodiments and are not to be considered as limiting the present application. Also, the same reference symbols are used throughout the accompanying drawings to represent the same components. In the accompanying drawings:
[0056] Figure 1 is a flowchart of a method for adjusting a video bit rate provided by an embodiment of the present application;
[0057] Figure 2 is a device block diagram of a video bit rate adjustment device provided in an embodiment of the present application;
[0058] Figure 3 is a structural diagram of an electronic device provided in an embodiment of the present application;
[0059] Figure 4 It is a schematic diagram of an exemplary video bit rate adjustment method provided in an embodiment of the present application. DETAILED DESCRIPTION
[0060] The exemplary embodiments of the present application will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present application are shown in the accompanying drawings, it should be understood that the present application can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided in order to enable a more thorough understanding of the present application and to fully convey the scope of the present application to those skilled in the art.
[0061] Figure 1 is a flowchart of a method for adjusting a video bit rate provided by an embodiment of the present application. Figure 1 As shown, the method may include:
[0062] It should be noted that, before step 101, before the step of predicting the second network indicator data corresponding to the next moment based on the pre-acquired first network indicator data at the current moment, the method includes:
[0063] Obtain historical network indicator data for different business scenarios;
[0064] Determine the network indicator score corresponding to each of the historical indicator data according to the preset correspondence relationship between the network indicator data and the network indicator score;
[0065] All the historical indicator data are divided according to a preset quality score range, and the network indicator data in each preset quality score range is sampled to obtain target network indicator data, wherein the target network indicator data is used to train a preset initial prediction model.
[0066] It should be noted that in the embodiment of the present application, data collection and organization are performed to collect and clean the network indicator data of the business scenario, and a quality score label is given to each piece of data.
[0067] First, real-time sampling is performed from the business, and the original data is obtained every 200ms. Historical network indicator data under different business scenarios will be obtained simultaneously. In the embodiment of the present application, the network indicator data may include three indicator data: transmission delay, packet loss rate, and network jitter.
[0068] Therefore, the original data is sampled every 2 seconds, and data for continuous time periods is obtained on a daily basis to obtain historical network indicator data under different business scenarios.
[0069] Each indicator is assigned a quality index between [0, 100], and the data obtained for each indicator is clustered to obtain the range and frequency of occurrence of each indicator data. A set of step-by-step scoring criteria for the quality of each indicator is initially formulated. For example, assuming that the value of the transmission delay is T x , its quality score Q score yes:
[0070]
[0071] In the above formula 1, [Q1, Q2] represents the quality score range of transmission delay within [T1, T2]. In this way, the quality of transmission delay, packet loss rate, and network jitter is evaluated. When the value is 0, it indicates that the quality is good. In order to adapt to the interference caused by network jitter, combined with multiple business scenarios, the data within each quality score range is sampled again to ensure that the proportion of training data with a quality of each indicator below 50 reaches 10%.
[0072] For example, each indicator is assigned a quality score between [0, 100], with the score range from 0 to 100, indicating that the data quality ranges from the worst to the best. The specific score ranges are as follows: 0-10: extremely poor, 11-20: poor, 21-30: average, 31-40: good, 41-50: relatively good, 51-60: good, 61-70: very good, 71-80: very good, 81-90: excellent, 91-100: best.
[0073] In order to obtain the range and frequency of occurrence of each indicator data, cluster analysis is performed on the data obtained for each indicator. The specific steps are as follows:
[0074] Collect data on transmission delay, packet loss rate, network jitter and other indicators in real time from business scenarios; remove outliers and noise to ensure data accuracy and reliability; use clustering algorithms (such as K-means, DBSCAN, etc.) to cluster data and divide the data into different clusters; determine the data range and frequency of occurrence of each cluster through clustering results.
[0075] Based on the results of cluster analysis, a set of step-by-step scoring criteria was initially developed to evaluate the quality of transmission delay, packet loss rate, and network jitter. The specific scoring criteria are as follows:
[0076] For example, you can set the transmission delay as follows: 0-10ms: 100 minutes, 11-20ms: 90 minutes, 21-30ms: 80 minutes, 31-40ms: 70 minutes, 41-50ms: 60 minutes, 51-60ms: 50 minutes, 61-70ms: 40 minutes, 71-80ms: 30 minutes, 81-90ms: 20 minutes, 91-100ms and above: 10 minutes.
[0077] Packet loss rate: 0%: 100 points, 0.1%-1%: 90 points, 1.1%-2%: 80 points, 2.1%-3%: 70 points, 3.1%-4%: 60 points, 4.1%-5%: 50 points, 5.1%-6%: 40 points, 6.1%-7%: 30 points, 7.1%-8%: 20 points, 8.1%-9% and above: 10 points.
[0078] Network jitter: 0-10ms: 100 points, 11-20ms: 90 points, 21-30ms: 80 points, 31-40ms: 70 points, 41-50ms: 60 points, 51-60ms: 50 points, 61-70ms: 40 points, 71-80ms: 30 points, 81-90ms: 20 points, 91-100ms and above: 10 points.
[0079] In order to ensure the diversity and representativeness of the training data set, data sampling is performed again for each quality score range. The specific steps are as follows:
[0080] Divide all data into quality score ranges; perform random sampling within each score range to ensure that the data in each range is fully represented; pay special attention to ranges with quality scores below 50 to ensure that the data in these ranges account for 10% of the training data set.
[0081] In this way, not only can the data quality of each indicator be evaluated, but also the diversity and representativeness of the training data set can be ensured through data sampling, thereby improving the prediction accuracy and stability of the model.
[0082] Step 101, predicting second network indicator data corresponding to the next moment based on the pre-acquired first network indicator data at the current moment;
[0083] Further, the predicting of the second network indicator data corresponding to the next moment based on the pre-acquired first network indicator data at the current moment includes:
[0084] The preset initial prediction model is trained by using the target network indicator data to generate a prediction model;
[0085] The first network indicator data at the current moment obtained in advance is input into the prediction model to predict the second network indicator data corresponding to the next moment.
[0086] It should be noted that, in the embodiment of the present application, the pre-set initial prediction model is trained by the target network indicator data to generate a prediction model.
[0087] Specifically, the target network indicator data is normalized to [0,1] as training data. Transmission delay, packet loss rate, and network jitter constitute three features. The window sliding step is 1. To compare the impact of different window sizes on model accuracy, three different values of window size are used for comparison: 15, 10, and 5. The longer the window length, the more accurate the model's control of the overall trend, but the prediction accuracy of mutation data is poor. The shorter the window, the stronger the model's adaptability to mutation data, but the overall trend is relatively weak. Combined business scenarios, for example, use a window length of 5.
[0088] After determining the window sliding step size, for model network design and LSTM layer number selection, the experiment used 3, 4, and 5 values for comparative experiments. Among them, 5-layer LSTM performed the best, which may be related to the complexity of multi-feature input and output tasks. Finally, 5 layers were used, with 128 hidden layers in each layer and 2 layers in each layer. Finally, three fully connected layers were used to predict the three indicators of transmission delay, packet loss rate, and network jitter respectively. For example, the dropout ratio of each LSTM layer during training was 0.2.
[0089] Finally, we select the loss function. Transmission delay, packet loss rate, and network jitter are positively correlated. If one indicator increases, the other two will also increase. Therefore, in the loss function design, we assign the same weight, that is, the sum of the three indicator losses is used as the final loss. We select mean square error as the loss function and select Adam optimizer for training. Finally, we train a model that simultaneously predicts transmission delay, packet loss rate, and network jitter. For example, the training loss is 0.0012.
[0090] After the prediction model is trained, the first network indicator data at the current moment obtained in advance is input into the prediction model to predict the second network indicator data corresponding to the next moment.
[0091] Step 102, obtaining a network quality score corresponding to each of the second network indicator data;
[0092] Furthermore, the second network indicator data includes transmission delay data, packet loss rate and network jitter data; and obtaining a network quality score corresponding to each of the second network indicator data includes:
[0093] Generate a first network quality score corresponding to the transmission delay data according to the delay adjustment factor and the transmission delay data;
[0094] Generating a second network quality score corresponding to the packet loss rate according to the packet loss rate prediction value;
[0095] A third network quality score corresponding to the network jitter data is generated according to the network jitter data and the jitter adjustment factor.
[0096] In actual business scenarios, we first use the trained prediction model to predict the transmission delay at the next time t based on the data in the past time window, recorded as latency. t , the packet loss rate is recorded as loss t , jitter is recorded as jitter t Next, we quantify the three network indicators and get their respective scores:
[0097] First, transmission delay quantification: transmission delay latency t Represents the time from the sender to the receiver. First, normalize it and express it as:
[0098]
[0099] Because when the transmission delay reaches 400ms, it is almost in a serious state of jamming, so the transmission delay greater than 400ms is normalized to 400. The network quality score s1 of the transmission delay is:
[0100]
[0101] In the above formula 2, k represents the adjustment factor of the delay data. In the current actual business scenario,
[0102] Second, packet loss rate quantification: packet loss rate loss t It represents the proportion of data packets lost during data transmission due to network congestion, router failure, etc. The partial quality score s2 of the packet loss rate is:
[0103] s2=(1-loss t )×100(Formula 3)
[0104] Third, network jitter quantification: jitter t It refers to the time jitter of the data packet during transmission. The partial quality score s3 of the jitter is:
[0105]
[0106] Where d represents the adjustment factor of network jitter data. In the current actual business scenario,
[0107] Step 103: performing weighted summation on each of the network quality scores according to a preset contribution coefficient to obtain a target network quality total score.
[0108] Furthermore, the preset contribution coefficients include a first contribution coefficient corresponding to the transmission delay data, a second contribution coefficient corresponding to the packet loss rate, and a third contribution coefficient corresponding to the network jitter data;
[0109] The weighted summing of each network quality score according to the preset contribution coefficient to obtain the target network quality total score includes:
[0110] The target network quality total score is obtained by summing up the first contribution coefficient multiplied by the transmission delay data, the second contribution coefficient multiplied by the packet loss rate, and the third contribution coefficient multiplied by the network jitter data.
[0111] It should be noted that the network quality at time t is obtained by weighted summing the network quality scores corresponding to each second network indicator data calculated above:
[0112] s=α×s1+β×s2+γ×s3(Formula 5)
[0113] In formula 5, α, β, and γ are the contribution factors of the three indicators, and different parameter groups are used in different application scenarios. For example, in real-time audio and video communication scenarios, transmission delay and jitter are key indicators. Lower actual data of these two indicators can provide faster response time and better user experience, so when calculating network quality, the weight ratio of [α, β, γ] = [0.4, 0.2, 0.4] can be used.
[0114] Step 104: adjusting the bit rate corresponding to the video during video transmission according to the target network quality total score.
[0115] Further, adjusting the bit rate corresponding to the video during video transmission according to the target network quality total score includes:
[0116] When the current frame rate corresponding to the video is greater than a preset threshold during video transmission, the frame rate corresponding to the video is adjusted according to the target network quality total score, and the bit rate corresponding to the video is adjusted according to the target network quality total score.
[0117] Further, adjusting the bit rate corresponding to the video during video transmission according to the target network quality total score includes:
[0118] When the current frame rate corresponding to the video is less than or equal to a preset threshold during video transmission, the bit rate corresponding to the video is adjusted according to the target network quality total score.
[0119] If the current frame rate is > 20, the frame rate is adjusted first, that is, the video frame rate is adjusted first and then the bit rate. Otherwise, the compression quality is adjusted directly to reduce the bit rate.
[0120] It should be noted that in the embodiment of the present application, the frame rate of the transmitted video can be dynamically adjusted according to the target network quality score. If the network quality is good, the frame rate can be increased to improve the fluency and clarity; if the network quality is poor, the frame rate can be reduced to avoid video freezes.
[0121] Let the current frame rate be f, then the adjusted frame rate is f1:
[0122]
[0123] where f max The maximum transmittable frame rate.
[0124] According to the target network quality score, the bit rate can be adjusted by changing the compression quality, thereby optimizing bandwidth usage and adapting to different network environments.
[0125] Let the current bit rate be m, then the adjusted frame rate is m1:
[0126]
[0127] In addition, it should be noted that, referring to Figure 4 ,The video bitrate adjustment process of this application is divided into data preprocessing, model training and prediction ,adjustment parts.
[0128] The embodiment of the present application predicts the first network indicator data at the current moment by using the LSTM model to obtain the second network indicator data at the next moment, and performs weighted summation on the network quality score corresponding to each second network indicator data in combination with the pre-set contribution coefficient, thereby obtaining the target network quality total score. This method can not only evaluate the network quality in the video transmission process in real time, but also improve the accuracy and stability of the network quality evaluation by dynamically adjusting the prediction model and the weighting coefficient. During the video transmission process, when the current frame rate of the video is greater than the preset threshold, the frame rate and bit rate of the video are adjusted according to the target network quality total score to optimize bandwidth utilization and user experience; when the current frame rate of the video is less than or equal to the preset threshold, only the bit rate of the video is adjusted to ensure the video quality while reducing bandwidth occupancy. Through this adaptive adjustment strategy, the embodiment of the present application can effectively improve the fluency and quality of video transmission and significantly improve the user viewing experience. It can improve the quality of video transmission, reduce problems such as video freeze and blurred images, and provide a better user experience; optimize bandwidth utilization, more effectively use transmission resources to avoid network congestion and transmission delays; improve system stability, timely adjust strategies to cope with changes in network status, and maintain the continuity and stability of video transmission.
[0129] Corresponding to the method provided in the above-mentioned video bit rate adjustment method embodiment of the present application, see Figure 2The present application also provides a device block diagram of a video bit rate adjustment device. In this embodiment, the device includes:
[0130] Prediction module 201, used to predict second network indicator data corresponding to a next moment based on first network indicator data at a current moment acquired in advance;
[0131] An acquisition module 202 is used to acquire a network quality score corresponding to each of the second network indicator data;
[0132] The summing module 203 is used to perform weighted summation on each of the network quality scores according to a preset contribution coefficient to obtain a target network quality total score.
[0133] The adjustment module 204 is used to adjust the bit rate corresponding to the video during the video transmission process according to the target network quality total score.
[0134] Optionally, the device further comprises:
[0135] The historical acquisition module is used to obtain historical network indicator data in different business scenarios;
[0136] A determination module, used to determine the network indicator score corresponding to each of the historical indicator data according to a preset correspondence relationship between the network indicator data and the network indicator score;
[0137] The sampling module is used to divide all the historical indicator data according to a preset quality score range, and sample the network indicator data in each preset quality score range to obtain target network indicator data, wherein the target network indicator data is used to train a preset initial prediction model.
[0138] Optionally, the prediction module includes:
[0139] A first prediction submodule, used to train the preset initial prediction model through the target network indicator data to generate a prediction model;
[0140] The second prediction submodule is used to input the pre-acquired first network indicator data at the current moment into the prediction model to predict the second network indicator data corresponding to the next moment.
[0141] Optionally, the second network indicator data includes transmission delay data, packet loss rate and network jitter data, and the acquisition module includes:
[0142] A first acquisition submodule, configured to generate a first network quality score corresponding to the transmission delay data according to a delay adjustment factor and the transmission delay data;
[0143] A second acquisition submodule, configured to generate a second network quality score corresponding to the packet loss rate according to the packet loss rate prediction value;
[0144] The third acquisition submodule is used to generate a third network quality score corresponding to the network jitter data according to the network jitter data and the jitter adjustment factor.
[0145] Optionally, the preset contribution coefficients include a first contribution coefficient corresponding to the transmission delay data, a second contribution coefficient corresponding to the packet loss rate, and a third contribution coefficient corresponding to the network jitter data;
[0146] The summing module comprises:
[0147] A summing submodule is used to sum the first contribution coefficient multiplied by the transmission delay data, the second contribution coefficient multiplied by the packet loss rate, and the third contribution coefficient multiplied by the network jitter data to obtain a total target network quality score.
[0148] Optionally, the adjustment module includes:
[0149] The first adjustment submodule is used to adjust the frame rate corresponding to the video according to the target network quality total score when the current frame rate corresponding to the video is greater than a preset threshold during video transmission, and to adjust the bit rate corresponding to the video according to the target network quality total score.
[0150] Optionally, the adjustment module includes:
[0151] The second adjustment submodule is used to adjust the bit rate corresponding to the video according to the target network quality total score when the current frame rate corresponding to the video is less than or equal to a preset threshold during the video transmission process.
[0152] In summary, a video bit rate adjustment device provided by an embodiment of the present application predicts the first network indicator data at the current moment to obtain the second network indicator data at the next moment, and performs weighted summation on the network quality score corresponding to each second network indicator data in combination with a pre-set contribution coefficient, thereby obtaining a target network quality total score. This method can not only evaluate the network quality during video transmission in real time, but also improve the accuracy and stability of network quality evaluation by dynamically adjusting the prediction model and weighting coefficient. During video transmission, when the current frame rate of the video is greater than a preset threshold, the frame rate and bit rate of the video are adjusted according to the target network quality total score to optimize bandwidth utilization and user experience; when the current frame rate of the video is less than or equal to the preset threshold, only the bit rate of the video is adjusted to ensure video quality while reducing bandwidth occupancy. Through this adaptive adjustment strategy, the embodiment of the present application can effectively improve the fluency and quality of video transmission and significantly improve the user viewing experience.
[0153] Figure 3 This is a structural diagram of an electronic device M00 provided in an embodiment of the present application. In the figure, the electronic device M00 includes a processor M01 and a memory M02. The electronic device includes: a processor; a memory for storing instructions executable by the processor, wherein the processor is configured to execute the instructions to implement any of the video bit rate adjustment methods described above, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0154] In an embodiment of the present application, the memory M02 can be used to store software programs and various data. The memory M02 may mainly include a first storage area for storing programs or instructions and a second storage area for storing data, wherein the first storage area may store an operating system, an application program or instructions required for at least one function (such as a sound playback function, an image playback function, etc.), etc. In addition, the memory M02 may include a volatile memory or a non-volatile memory, or the memory x09 may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), a static random access memory (SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (SDRAM), a double data rate synchronous dynamic random access memory (DDRSDRAM), an enhanced synchronous dynamic random access memory (ESDRAM), a synchronous link dynamic random access memory (SLDRAM) and a direct memory bus random access memory (DRRAM). The memory M02 in the embodiment of the present application includes but is not limited to these and any other suitable types of memories.
[0155] The processor M01 may include one or more processing units; optionally, the processor M01 integrates an application processor and a modem processor, wherein the application processor mainly processes operations related to an operating system, a user interface, and application programs, and the modem processor mainly processes wireless communication signals, such as a baseband processor. It is understandable that the modem processor may not be integrated into the processor M01.
[0156] An embodiment of the present application also provides a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, each process of the above-mentioned video bit rate adjustment method embodiment is implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0157] The processor is the processor in the electronic device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory ROM, a random access memory RAM, a magnetic disk or an optical disk.
[0158] An embodiment of the present application further provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the various processes of the above-mentioned video bit rate adjustment method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0159] It should be understood that the chip involved in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.
[0160] An embodiment of the present application further provides a storage medium. When instructions in the storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute any of the above-described video bit rate adjustment methods.
[0161] An embodiment of the present application provides a computer program product, which is stored in a storage medium. The program product is executed by at least one processor to implement the various processes of the above-mentioned video bit rate adjustment method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0162] An embodiment of the present application also provides a vehicle, which includes the video bit rate adjustment device as described above.
[0163] It should be noted that, in this article, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises one..." does not exclude the presence of other identical elements in the process, method, article or device including the element. In addition, it should be noted that the scope of the method and device in the embodiment of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved, for example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.
[0164] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the relevant technology, can be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM / RAM, a disk, or an optical disk), and includes a number of instructions for a terminal (which can be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods described in each embodiment of the present application.
[0165] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.
Claims
1. A video bit rate adjustment method, characterized in that: The method comprises: Predicting second network indicator data corresponding to a next moment based on the pre-acquired first network indicator data at the current moment; Obtaining a network quality score corresponding to each of the second network indicator data; Performing a weighted summation on each of the network quality scores according to a preset contribution coefficient to obtain a target network quality total score; The bit rate corresponding to the video is adjusted during the video transmission process according to the target network quality total score.
2. The method according to claim 1, characterized in that Before the step of predicting the second network indicator data corresponding to the next moment based on the pre-acquired first network indicator data at the current moment, the method includes: Obtain historical network indicator data for different business scenarios; Determine the network indicator score corresponding to each of the historical indicator data according to the preset correspondence relationship between the network indicator data and the network indicator score; All the historical indicator data are divided according to a preset quality score range, and the network indicator data in each preset quality score range is sampled to obtain target network indicator data, wherein the target network indicator data is used to train a preset initial prediction model.
3. The method according to claim 2, characterized in that The predicting of the second network indicator data corresponding to the next moment based on the pre-acquired first network indicator data at the current moment includes: The preset initial prediction model is trained by using the target network indicator data to generate a prediction model; The first network indicator data at the current moment obtained in advance is input into the prediction model to predict the second network indicator data corresponding to the next moment.
4. The method according to claim 1, characterized in that: The second network indicator data includes transmission delay data, packet loss rate and network jitter data; The obtaining of the network quality score corresponding to each of the second network indicator data comprises: Generate a first network quality score corresponding to the transmission delay data according to the delay adjustment factor and the transmission delay data; Generating a second network quality score corresponding to the packet loss rate according to the packet loss rate prediction value; A third network quality score corresponding to the network jitter data is generated according to the network jitter data and the jitter adjustment factor.
5. The method according to claim 4, characterized in that The preset contribution coefficients include a first contribution coefficient corresponding to the transmission delay data, a second contribution coefficient corresponding to the packet loss rate, and a third contribution coefficient corresponding to the network jitter data; The weighted summing of each network quality score according to the preset contribution coefficient to obtain the target network quality total score includes: The target network quality total score is obtained by summing up the first contribution coefficient multiplied by the transmission delay data, the second contribution coefficient multiplied by the packet loss rate, and the third contribution coefficient multiplied by the network jitter data.
6. The method according to claim 1, characterized in that The adjusting the bit rate corresponding to the video during the video transmission process according to the target network quality total score includes: When the current frame rate corresponding to the video is greater than a preset threshold during video transmission, the frame rate corresponding to the video is adjusted according to the target network quality total score, and the bit rate corresponding to the video is adjusted according to the target network quality total score.
7. The method according to claim 1, characterized in that The adjusting the bit rate corresponding to the video during the video transmission process according to the target network quality total score includes: When the current frame rate corresponding to the video is less than or equal to a preset threshold during video transmission, the bit rate corresponding to the video is adjusted according to the target network quality total score.
8. A video bit rate adjustment device, characterized in that: The device comprises: A prediction module, used to predict second network indicator data corresponding to a next moment based on the first network indicator data at the current moment acquired in advance; An acquisition module, used to acquire a network quality score corresponding to each of the second network indicator data; A summing module, used to perform weighted summation on each of the network quality scores according to a preset contribution coefficient to obtain a target network quality total score; The adjustment module is used to adjust the bit rate corresponding to the video during the video transmission process according to the target network quality total score.
9. An electronic device, characterized in that: include: processor; a memory for storing instructions executable by the processor; The processor is configured to execute the instructions to implement the video bit rate adjustment method according to any one of claims 1 to 7.
10. A computer storage medium, a readable storage medium, for storing a program, characterized in that: When the program is executed by a processor, the video bit rate adjustment method as described in any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Video data transmission code rate self-adaption method, system and device and storage medium
CN111083535A
Data processing method and device, equipment, storage medium and product
CN117319228A
Cited By
Aircraft network service quality dynamic optimization method, device, equipment and medium
CN120238923A
Method, device, equipment and medium for dynamic optimization of aircraft network service quality
CN120238923B