A method and device for adjusting data transmission rate
Through real-time monitoring and intelligent analysis of the network status of participants, combined with historical data and identification models, dynamically adjusting the audio and video transmission rate, the problem that remote conferencing systems cannot effectively utilize resources in complex network environments is solved, and a high-quality multi-person video conferencing experience is achieved.
Patent Information
- Application Number
- CN202411539912.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-31
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2044-10-31
AI Technical Summary
The existing remote conferencing systems cannot effectively utilize network resources when facing changes in complex network environments, resulting in frequent screen lags and sound delays in multi-person video conferences.
Through real-time monitoring and intelligent analysis of each participant's network status, combined with historical conference performance data and pre-trained identification models, the audio and video transmission rate is dynamically adjusted to optimize bandwidth allocation, improve conference quality and enhance user experience.
It realizes efficient use of network resources in multi-person video conferencing, reduces picture lag and sound delay, and improves overall meeting quality and user experience.
Smart Images

Figure CN119052406B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of computers, and in particular to a method and device for adaptively adjusting data transmission rate. Background Art
[0002] With the popularity of remote work and the increase in global cooperation, remote conferencing systems have become an important tool for daily communication for enterprises and individuals. These systems need to maintain stable audio and video transmission during multi-person video calls to ensure a high-quality conference experience. However, network fluctuations may cause audio to be intermittent or video to freeze, seriously affecting the user experience.
[0003] Existing teleconferencing systems usually use fixed bitrate and resolution settings, or adjust the rate based on simple rules. For example, when the packet loss rate exceeds a certain threshold, the video bitrate is reduced. Although this simple method can alleviate network problems to a certain extent, it cannot cope with complex changes in the network environment and cannot fully utilize network resources.
[0004] From the above, we can see that how to efficiently utilize network resources in multi-person conferences still needs to be solved. Summary of the invention
[0005] In order to achieve efficient utilization of network resources in a multi-person conference, the present application provides an adaptive data transmission rate adjustment method.
[0006] In a first aspect, the present application provides an adaptive data transmission rate adjustment method, which adopts the following technical solution:
[0007] A method for adaptively adjusting data transmission rate, comprising: when conducting a multi-person video conference, obtaining current network status data corresponding to each participant, determining a corresponding rate adjustment priority based on audio and video encoding parameters in all the current network status data, wherein the current network status data includes uplink bandwidth, downlink bandwidth, packet loss rate, delay and jitter, and the rate adjustment priority is the adjustment priority for all participants; retrieving corresponding historical conference performance data and a pre-trained recognition model, inputting the current network status data and the historical conference performance data into the recognition model, and obtaining a corresponding recognition result, wherein the historical conference performance data includes bandwidth, packet loss rate, and delay; determining a corresponding target participant based on the recognition result and the rate adjustment priority, retrieving the target network status data corresponding to the target participant, and adjusting the audio and video transmission speed of the target participant based on the target network status data.
[0008] By adopting the above technical solution, through real-time monitoring and intelligent analysis of the network status of each participant, combined with historical meeting performance data and pre-trained recognition models, the audio and video transmission rates are dynamically adjusted to optimize bandwidth allocation, improve meeting quality and enhance user experience, effectively solving problems such as picture freezes and sound delays caused by low network resource utilization in multi-person video conferences.
[0009] Optionally, the method also includes: obtaining the geographic location and network type corresponding to the participants, grouping the participants based on the geographic location and the network type, and determining the group type corresponding to the participants; setting a corresponding rate adjustment strategy for the group type, wherein the rate adjustment strategy includes a basic bit rate setting, a bit rate fluctuation range, an adjustment frequency, and audio and video encoding parameters.
[0010] By adopting the above technical solution, the participants' geographic locations and network types are obtained, the participants are grouped and their corresponding group types are determined, and then a specific rate adjustment strategy (including basic bit rate settings, bit rate fluctuation range, adjustment frequency, and audio and video encoding parameters) is set for each group type; participants under different network conditions can be managed more finely, bandwidth usage can be optimized, delays and freezes can be reduced, and the overall meeting quality and user experience can be improved.
[0011] Optionally, the rate adjustment strategy between group types can be switched, and the method also includes: retrieving the current network status data of each participant in real time to determine whether the current network status data has changed; when it is detected that the current network status data of a participant has changed, determining the corresponding changed participant, and switching the changed participant from the current group type to the latest group type; after the group type of the changed participant is switched, applying the rate adjustment strategy corresponding to the latest group type.
[0012] By adopting the above technical solution, by real-time monitoring of the network status data of each participant, when a change in the network status is detected, the participant can be automatically switched from the current group type to a more suitable latest group type, and the corresponding rate adjustment strategy can be applied; this ensures that when the network conditions change, each participant can obtain the optimal audio and video transmission settings.
[0013] Optionally, in the process of detecting that the current network status data of a participant has changed, the method also includes: retrieving the current network status data corresponding to the previous time period, and determining the corresponding current network change data set based on the current network status data of the current time period, wherein the current network change data set includes bandwidth changes, packet loss rate changes, delay changes, and jitter changes; retrieving a preset current network change threshold set, wherein the current network change threshold set includes a bandwidth change threshold, a packet loss rate change threshold, a delay change threshold, and a jitter change threshold; determining whether there is a change threshold in the current network change data set that is greater than the change threshold of the current network change threshold set, and if so, determining that the current network status data has changed.
[0014] By adopting the above technical solution, by comparing the network status data of the current period with the previous period, a current network change data set (including changes in bandwidth, packet loss rate, delay and jitter) is formed, and it is compared with the preset network change threshold set. If any change data exceeds the corresponding threshold, it is determined that the network status has changed; it can accurately detect network fluctuations and adjust the group type of participants and the corresponding rate strategy in time, thereby ensuring the stability and smoothness of the video conference.
[0015] Optionally, the method also includes: obtaining conference-related data corresponding to the device used by the participant, wherein the conference-related data includes screen size data and viewing distance; retrieving the current resolution corresponding to the participant's video stream in the meeting, and adjusting the current resolution of the participant's video stream based on the conference-related data; obtaining the participant's location information to determine whether the participant is close to the camera, and if so, adjusting based on the resolution settings refined in advance; in the process of adjusting the current resolution of the participant's video stream, retrieving the resolution adjustment preference option set by the participant, and adjusting the current resolution based on the conference-related data and the resolution adjustment preference option.
[0016] By adopting the above technical solution, by obtaining the screen size, viewing distance and other participant-related data of the participant's device, combined with the participant's location information (whether close to the camera) and personal resolution adjustment preference options, the current resolution of the video stream can be intelligently adjusted; it can provide the most appropriate video quality according to the specific viewing conditions and preferences of each participant, which not only improves the visual experience, but also optimizes the efficiency of the use of network resources, ensuring the smooth progress of the meeting while meeting personalized needs.
[0017] Optionally, the method also includes: retrieving corresponding historical conference performance data, and predicting a corresponding network fluctuation time period based on the historical conference performance data; adjusting the corresponding audio and video transmission parameters of the participants before the network fluctuation occurs; and downloading and storing the key frame information within the network fluctuation time period in the client cache area.
[0018] By adopting the above technical solution, historical conference performance data is retrieved to predict the time period of possible network fluctuations, and the audio and video transmission parameters of the participants are pre-adjusted before the network fluctuations occur. At the same time, the key frame information is downloaded and stored in the client cache area; it is possible to respond to potential network problems in advance and reduce audio and video interruptions or freezes caused by network fluctuations, thereby providing more stable and smooth meetings.
[0019] In a second aspect, the present application provides an adaptive data transmission rate adjustment method, which adopts the following technical solution:
[0020] An adaptive data transmission rate adjustment device, comprising:
[0021] The current network status data acquisition module is used to obtain the current network status data corresponding to each participant during a multi-person video conference, and determine the corresponding rate adjustment priority based on the audio and video encoding parameters in all the current network status data, wherein the current network status data includes uplink bandwidth, downlink bandwidth, packet loss rate, delay and jitter, and the rate adjustment priority is the adjustment priority for all participants;
[0022] The recognition result acquisition module retrieves the corresponding historical conference performance data and the pre-trained recognition model, inputs the current network status data and the historical conference performance data into the recognition model to obtain the corresponding recognition result, where the historical conference performance data includes bandwidth, packet loss rate, and delay;
[0023] The audio and video transmission speed adjustment module determines the corresponding target participant based on the recognition result and the rate adjustment priority, retrieves the target network status data corresponding to the target participant, and adjusts the audio and video transmission speed of the target participant based on the target network status data.
[0024] In a third aspect, the present application provides an adaptive data transmission rate adjustment method, which adopts the following technical solution:
[0025] An adaptive data transmission rate adjustment method comprises a processor, wherein a program of any one of the adaptive data transmission rate adjustment methods described above is run in the processor.
[0026] In a fourth aspect, the present application provides a storage medium, which adopts the following technical solution:
[0027] A storage medium stores a program of any one of the above-mentioned adaptive data transmission rate adjustment methods.
[0028] In summary, the present application includes at least one of the following beneficial technical effects: by real-time monitoring and intelligent analysis of the network status of each participant (including uplink / downlink bandwidth, packet loss rate, delay, jitter), combined with historical conference performance data and pre-trained recognition models, the audio and video transmission rate is dynamically adjusted. It can optimize bandwidth allocation, improve conference quality and user experience, and effectively solve problems such as screen freezes and sound delays caused by low network resource utilization in multi-person video conferences. In addition, it also groups participants according to their geographic location and network type, and sets specific rate adjustment strategies for different groups; when a change in network status is detected, it automatically switches the group type to which the participant belongs and applies a new rate strategy; intelligently adjusts the video stream resolution based on device characteristics and personal preferences; and adjusts transmission parameters and caches key frame information in advance by predicting network fluctuation time periods to further enhance the stability and fluency of the meeting. BRIEF DESCRIPTION OF THE DRAWINGS
[0029] Figure 1 The figure is a flow chart showing a method for adaptively adjusting data transmission rate according to an exemplary embodiment.
[0030] Figure 2 The figure is a structural block diagram of a method and device for adaptively adjusting data transmission rate according to an exemplary embodiment. DETAILED DESCRIPTION
[0031] Embodiments of the present application are described in detail below, examples of which are shown in the accompanying drawings.
[0032] In the description of this specification, the description with reference to the terms "certain embodiments", "one embodiment", "some embodiments", "illustrative embodiments", "examples", "specific examples", or "some examples" means that the specific features, structures, materials, or characteristics described in conjunction with the embodiments or examples are included in at least one embodiment or example of the present application. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.
[0033] The present application discloses an adaptive data transmission rate adjustment method, referring to Figure 1 ,include:
[0034] S100, when conducting a multi-person video conference, obtain the current network status data corresponding to each participant, and determine the corresponding rate adjustment priority based on the audio and video encoding parameters in all the current network status data. The rate adjustment priority is the adjustment priority for all participants.
[0035] Among them, during a multi-person video conference, the system regularly (for example, every second or more frequently) collects the current network status data of each participant through client software or server tools. It should be pointed out here that the current network status data includes key indicators such as uplink bandwidth, downlink bandwidth, packet loss rate, delay and jitter.
[0036] In addition, based on this current network status data, the system calculates audio and video encoding parameters that are suitable for the current network conditions; for example, low bandwidth and high packet loss may require reducing video resolution and frame rate. Then, based on the calculated encoding parameters and other factors (such as user role, device capabilities), a rate adjustment priority is assigned to each participant. Participants with higher priorities will be given priority to obtain better audio and video quality.
[0037] Real-time monitoring of current network status data ensures instant understanding of network status. At the same time, rate adjustment priority helps the system decide how to most effectively allocate limited network resources to ensure the best overall conference quality.
[0038] S110, retrieve corresponding historical conference performance data and a pre-trained recognition model, input current network status data and historical conference performance data into the recognition model, and obtain corresponding recognition results.
[0039] Among them, historical performance data of past meetings related to the current meeting are extracted from the database, and the historical performance data include indicators such as bandwidth, packet loss rate, and delay; a pre-trained recognition model is used, which has learned patterns and trends in a large amount of historical data. By inputting the current network status data together with the historical meeting performance data into the recognition model, the recognition model processes the input data to generate prediction results or classification results.
[0040] It should be pointed out here that historical meeting performance data provides contextual information that helps predict future network behavior; and the recognition model can use this data to predict the changing trends of the current network status and improve the accuracy of decision-making.
[0041] For the recognition model used in this application solution, training is continued in advance. The specific training process is as follows:
[0042] 1. Data collection: Collect a large amount of network performance data from historical meetings, including but not limited to bandwidth, packet loss rate, latency and other indicators. This data can be obtained from multiple meetings, covering different time periods, geographical locations and network types; Data cleaning: Remove outliers, missing values and noise data to ensure data quality; Feature engineering: Select and construct features that help model learning. For example, the change rate of bandwidth, the trend of packet loss rate, etc. can be calculated.
[0043] 2. Feature selection: Use statistical methods (such as the Pearson correlation coefficient) or feature selection algorithms (such as recursive feature elimination (RFE)) to determine which features are most helpful in predicting the target (such as future network fluctuations); standardize or normalize features of different dimensions to ensure that the importance of each feature is the same during model training.
[0044] 3. Training set and test set division: Divide the data set into training set and test set. The commonly used division ratio is 80% of the data for training and 20% of the data for testing.
[0045] 4. Model selection and training: Choose a suitable model based on the nature of the problem. For time series prediction tasks, you can use a recurrent neural network (RNN), and then use random search to find the optimal hyperparameter combination; use the training set data to train the model. During the training process, you can use the early stopping method to prevent overfitting, and use the loss function to guide the learning of the model.
[0046] 5. Model evaluation: Use the test set data to evaluate the performance of the model. Common evaluation indicators include accuracy, precision, recall, F1 score, mean square error, mean absolute error, etc. For classification tasks, the confusion matrix can be used to view the performance of the model in each category.
[0047] 6. Model optimization and deployment: Adjust the model structure, feature selection or hyperparameters according to the evaluation results to further improve the model performance; save the trained model as a file so that it can be loaded and used in actual applications; integrate the model into the video conferencing system, receive the current network status data in real time, and output the prediction results for dynamically adjusting the audio and video transmission rate.
[0048] S120, determining the corresponding target participant based on the recognition result and the rate adjustment priority, retrieving the target network status data corresponding to the target participant, and adjusting the audio and video transmission speed of the target participant based on the target network status data.
[0049] The recognition model outputs a recognition result, which may include a prediction of future network conditions or a classification of current network conditions. The recognition result is combined with the previously determined rate adjustment priority to comprehensively consider which participants need to be prioritized for rate adjustment. The system will select the target participants who need rate adjustment. For example, if a participant's network condition has deteriorated significantly and his priority is high, the participant may be selected as the target participant.
[0050] For the selected target participants, the system obtains their latest network status data, and adjusts the audio and video transmission speed of these participants based on the latest network status data. This may involve the following operations: Change video resolution: reduce or increase video resolution to match the current bandwidth; adjust frame rate: reduce or increase video frame rate to adapt to network conditions; adjust audio bitrate: reduce or increase audio bitrate to ensure audio quality; optimize buffer strategy: adjust buffer size and strategy to cope with delay and jitter; apply adjustment: apply the adjusted parameters to the participant's audio and video streams to ensure that audio and video transmission meets the current network conditions.
[0051] By dynamically adjusting the audio and video transmission speed, we can better match the current network conditions and reduce freezes and delays, thereby ensuring that every participant can get the best possible audio and video experience and maintain basic service quality even in poor network conditions.
[0052] Based on the above solution, by combining real-time network monitoring, historical data analysis and intelligent recognition technology, adaptive adjustment of audio and video transmission rates in multi-person video conferences is achieved; it not only improves the overall quality and stability of the meeting, but also enhances the user experience. Especially when network conditions change greatly, the system can more efficiently utilize available network resources and provide smoother and more reliable video conferencing services.
[0053] In an embodiment of the present application, the method further includes:
[0054] S131, obtaining the geographical location and network type corresponding to the participants, grouping the participants based on the geographical location and network type, and determining the group type corresponding to the participants;
[0055] The geographical location of each participant is determined through the IP address, GPS data or other positioning services (such as Wi-Fi positioning) of the client device. The geographical location information helps to understand the area where the participant is located. The network infrastructure and service quality in different regions may vary. The network type of each participant is identified through the network information reported by the client device (such as cellular network, Wi-Fi, wired connection, etc.). This can be achieved through device APIs or network diagnostic tools. The network type information can help the system understand the network connection method used by the participant, so as to better predict its network performance.
[0056] Define different grouping criteria based on geographic location and network type. For example, participants can be divided into different combinations such as "urban / rural", "4G / 5G / Wi-Fi", etc. Grouping helps to group participants with similar network conditions together, which can more effectively manage and optimize resource allocation and improve the overall meeting quality.
[0057] S132, setting a corresponding rate adjustment strategy for the group type, wherein the rate adjustment strategy includes basic bit rate setting, bit rate fluctuation range, adjustment frequency, and audio and video encoding parameters.
[0058] The specific implementation process includes:
[0059] Basic bitrate setting: Set a basic audio and video encoding bitrate for each group type. For example, "urban 4G users" may set a higher basic bitrate, while "rural Wi-Fi users" may set a lower basic bitrate.
[0060] Bitrate fluctuation range: Define the bitrate fluctuation range for each group type. For example, the bitrate of "urban 4G users" can fluctuate within a higher range to adapt to better network conditions, while the bitrate fluctuation range of "rural Wi-Fi users" is smaller to ensure basic service quality.
[0061] Adjustment frequency: Determine the rate adjustment frequency for each group type. For example, for a group type with relatively stable network conditions, the adjustment frequency can be reduced; while for a group type with large fluctuations in network conditions, a higher adjustment frequency is required.
[0062] Audio and video encoding parameters: Set the audio and video encoding parameters for each group type, including resolution, frame rate, audio sampling rate, etc. For example, "urban 4G users" may support higher resolution and frame rate, while "rural Wi-Fi users" may use lower resolution and frame rate.
[0063] By executing the above steps S131 to S132, by obtaining the geographic location and network type of the participants, grouping the participants based on this information, and then setting a corresponding rate adjustment strategy for each group type, this method can more finely manage participants under different network conditions, optimize bandwidth usage, reduce delays and freezes, and thus improve the overall conference quality and user experience. Not only does it take into account changes in network conditions, but it also combines differences in geography and network types to provide more personalized service quality.
[0064] It should be noted that the rate adjustment strategies between group types can be switched, and the methods also include:
[0065] S133, retrieve the current network status data of each participant in real time to determine whether the current network status data has changed.
[0066] The system collects the current network status data of each participant regularly (such as every second or more frequently) through client software or server tools. The collected current network status data includes key indicators such as uplink bandwidth, downlink bandwidth, packet loss rate, delay and jitter.
[0067] The current network status data corresponding to the previous period is retrieved from the database, and then based on the network status data of the current period and the data of the previous period, the change amount of each indicator is calculated to form the current network change data set. For example: bandwidth change = current bandwidth - bandwidth of the previous period; packet loss rate change = current packet loss rate - packet loss rate of the previous period; delay change = current delay - delay of the previous period; jitter change = current jitter - jitter of the previous period. Then, the preset current network change threshold set is retrieved: the current network change threshold set includes bandwidth change threshold, packet loss rate change threshold, delay change threshold and jitter change threshold. Finally, by comparing the change amount with the threshold: the calculated change amount is compared with the preset threshold. If any change amount exceeds the corresponding threshold, it is determined that the network status has changed. By comparing the data of the current period with the data of the previous period, the change of the network status can be accurately detected.
[0068] S134, when it is detected that the current network status data of a participant has changed, the corresponding changed participant is determined, and the changed participant is switched from the current group type to the latest group type.
[0069] When a participant's network status is detected to have changed, the participant is marked as a changed participant. According to the latest network status data (geographic location, network type, etc.), the changed participant is reallocated to a new group type, and then the group type label of the changed participant is updated to switch it from the current group type to the latest group type.
[0070] By regrouping, it ensures that the changing participants are assigned to the group type that best matches their current network conditions, and updating the group labels enables the system to apply the rate adjustment strategy that best suits the current network conditions.
[0071] S135, after the group type of the changed participants is switched, a rate adjustment strategy corresponding to the latest group type is applied.
[0072] Specifically, it includes retrieving new strategies, applying new strategies, and implementing adjustments; Retrieving new strategies: according to the new group type of the changed participants, the corresponding rate adjustment strategy is retrieved from the pre-set rate adjustment strategy library.
[0073] Apply new policies: Apply new policies to the audio and video transmission of the changed participants. Including: Basic bitrate setting: adjust the basic encoding bitrate of audio and video; Bitrate fluctuation range: adjust the bitrate fluctuation range to adapt to new network conditions; Adjust frequency: adjust the frequency of rate adjustment; Audio and video encoding parameters: adjust encoding parameters such as resolution, frame rate, audio sampling rate, etc.; Implement adjustment: Apply the adjusted parameters to the audio and video streams of the participants to ensure that the audio and video transmission meets the current network conditions.
[0074] Based on executing the above steps S133 to S135, by real-time monitoring of the network status of each participant, network changes are detected in time, and the changed participants are switched from the current group type to the latest group type, and then the rate adjustment strategy that best suits the current network conditions is applied; this dynamic adjustment mechanism can ensure that each participant can obtain the best audio and video experience in different network environments, thereby improving the overall quality of the meeting and user experience.
[0075] In addition, the method also includes:
[0076] S141, obtaining conference-related data corresponding to the device used by the participant.
[0077] Among them, the conference-related data includes screen size data and viewing distance. Specifically, the screen size of the device, including screen width and height, is obtained through the system API or user agent string (User-Agent) of the client device. The screen size data helps the system understand the size of the user's display device and thus select the appropriate video resolution; the user's viewing distance can be estimated through the device's front camera or other sensors (such as infrared sensors). If the device does not support these functions, a simple interface can be provided for the user to manually enter the estimated viewing distance, which helps optimize the video quality and ensure that users can get a good visual experience at different distances. The obtained screen size data and viewing distance are stored in the system for subsequent processing.
[0078] S142, retrieve the current resolution corresponding to the video stream of the participant in the conference, and adjust the current resolution of the video stream of the participant based on the conference-related data.
[0079] Among them, the video stream resolution of the current participant is retrieved from the video conferencing system, which can usually be achieved through the server-side or client-side API, and then the current resolution setting is recorded for comparison with the new recommended resolution.
[0080] Then, the optimal video resolution is calculated based on the screen size and viewing distance. For example, a higher resolution can be selected for a smaller screen and a closer viewing distance; a lower resolution can be selected for a larger screen and a farther viewing distance to save bandwidth. The calculated optimal resolution is applied to the participant's video stream.
[0081] By adjusting the resolution, you can ensure that the video content is clearly visible on different devices while optimizing bandwidth usage. Especially in poor network conditions, lowering the resolution can reduce lag and delay.
[0082] S143, obtaining the location information of the participant, determining whether the participant is close to the camera, and if so, making adjustments based on the resolution setting refined in advance.
[0083] The location information of the participant relative to the camera is obtained through the front camera or other sensors of the device, and based on the obtained location information, it is determined whether the participant is close to the camera. A threshold value (such as a distance less than 50 cm) can be set, and if the distance exceeds the threshold value, the user is considered to be close to the camera. If the participant is close to the camera, adjustments can be made based on the resolution settings that have been refined in advance. For example, when the user is close to the camera, the resolution can be increased to ensure that facial details are clearly visible.
[0084] S144, in the process of adjusting the current resolution of the participant's video stream, retrieve the resolution adjustment preference option set by the participant, and adjust the current resolution based on the participant-related data and the resolution adjustment preference option.
[0085] The resolution adjustment preference options of the participant are retrieved from the user settings or configuration files. These preference options may include the user's preference for resolution, whether to allow automatic adjustment, etc. The resolution to be applied is finally determined by combining the relevant data of the participant (screen size, viewing distance, location information) and the user's preference options. The finalized resolution is applied to the participant's video stream, and the client or server is notified to make corresponding adjustments.
[0086] Based on executing the above steps S141 to S144, the resolution of the video stream is dynamically adjusted by obtaining relevant data of the participant's device (screen size, viewing distance, location information) and the user's resolution adjustment preference options. This adaptive adjustment not only optimizes bandwidth usage, reduces freezes and delays, but also ensures that the best video quality can be provided under different devices and viewing conditions, thereby improving the overall quality and user experience of multi-person video conferencing.
[0087] Finally, the scheme in the embodiment of the present application also has a certain prediction function, and the specific process includes:
[0088] S151, retrieve corresponding historical conference performance data, and predict the corresponding network fluctuation time period based on the historical conference performance data.
[0089] The historical performance data of past meetings related to the current meeting are retrieved from the database. These data include but are not limited to indicators such as bandwidth, packet loss rate, and delay; the historical data are organized into a format suitable for input into the prediction model. For example, they can be arranged in time series, and each record contains network performance indicators over a period of time.
[0090] The latest network status data is input into the trained recognition model to predict the time period of network fluctuations that may occur in the future. For example, the model may output the time period of bandwidth decrease or packet loss rate increase that may occur in the next 10 minutes.
[0091] By identifying possible network fluctuation periods in advance, early predictions can help the system make more timely and effective adjustments, thereby improving the overall stability of the meeting.
[0092] S152, before network fluctuation occurs, adjust the audio and video transmission parameters corresponding to the participants.
[0093] Among them, based on the predicted network fluctuation period, formulate corresponding audio and video transmission parameter adjustment strategies. For example: reduce resolution: reduce the resolution of the video stream in advance before the network fluctuation is expected to occur; reduce frame rate: reduce the video frame rate to save bandwidth; adjust audio bit rate: reduce the audio bit rate to ensure basic audio quality; optimize buffer strategy: adjust the buffer size and strategy to cope with the upcoming network fluctuation. Finally, before the predicted network fluctuation period arrives, the adjusted parameters are applied to the audio and video streams of the participants.
[0094] By adjusting the audio and video transmission parameters in advance, you can reduce freezes and delays when network fluctuations occur, and improve user experience; pre-adjustment strategies enable the system to better respond to upcoming network changes and maintain the smoothness of meetings.
[0095] S153, downloading and storing the key frame information within the network fluctuation time period in the client buffer area.
[0096] Among them, determine the key frame: according to the video encoding standard (such as H.264, H.265), determine the key frame (I frame) in the video stream. The key frame is an independent frame that can be decoded without relying on other frames. Before the network fluctuation period arrives, download these key frames from the server and store them in the client's cache area to ensure that the client has enough cache space to store the key frames, and clear the old key frames to make room when necessary.
[0097] The present application discloses an adaptive data transmission rate adjustment device. Figure 2 , including but not limited to:
[0098] The current network status data acquisition module 200 is used to acquire the current network status data corresponding to each participant during a multi-person video conference, and determine the corresponding rate adjustment priority based on the audio and video encoding parameters in all the current network status data, wherein the current network status data includes uplink bandwidth, downlink bandwidth, packet loss rate, delay and jitter, and the rate adjustment priority is the adjustment priority for all participants;
[0099] The recognition result acquisition module 210 retrieves the corresponding historical conference performance data and the pre-trained recognition model, inputs the current network status data and the historical conference performance data into the recognition model to obtain the corresponding recognition result, where the historical conference performance data includes bandwidth, packet loss rate, and delay;
[0100] The audio and video transmission speed adjustment module 220 determines the corresponding target participant based on the recognition result and the rate adjustment priority, retrieves the target network status data corresponding to the target participant, and adjusts the audio and video transmission speed of the target participant based on the target network status data.
[0101] Further, including but not limited to:
[0102] A grouping module obtains the geographic location and network type corresponding to the participants, and groups the participants based on the geographic location and network type to determine the group type corresponding to the participants;
[0103] The rate adjustment strategy setting module is used to set the corresponding rate adjustment strategy for the group type, wherein the rate adjustment strategy includes basic bit rate setting, bit rate fluctuation range, adjustment frequency and audio and video encoding parameters.
[0104] Further, including but not limited to:
[0105] The network status judgment module retrieves the current network status data of each participant in real time to determine whether the current network status data has changed;
[0106] A changed participant determination module, when detecting that the current network status data of a participant has changed, is used to determine the corresponding changed participant and switch the changed participant from the current group type to the latest group type;
[0107] Rate adjustment strategy application module. After the group type of the participants is changed, it is used to apply the rate adjustment strategy corresponding to the latest group type.
[0108] Further, including but not limited to:
[0109] The current network change data set determination module retrieves the current network status data corresponding to the previous period, and determines the corresponding current network change data set based on the current network status data of the current period, wherein the current network change data set includes bandwidth change, packet loss rate change, delay change and jitter change;
[0110] A threshold set retrieval module is used to retrieve a preset current network change threshold set, where the current network change threshold set includes a bandwidth change threshold, a packet loss rate change threshold, a delay change threshold, and a jitter change threshold;
[0111] The threshold judgment module is used to judge whether there is a change data in the current network change data set that is greater than the change threshold of the current network change threshold set. If so, it is determined that the current network status data has changed.
[0112] Further, including but not limited to:
[0113] A conference-related data acquisition module is used to acquire conference-related data corresponding to the device used by the participant, wherein the conference-related data includes screen size data and viewing distance;
[0114] The current resolution retrieving module is used to retrieve the current resolution corresponding to the video stream of the participant in the conference, and adjust the current resolution of the video stream of the participant based on the relevant data of the conference;
[0115] A location information acquisition module is used to obtain the location information of the participant and determine whether the participant is close to the camera. If so, the camera is adjusted based on the resolution setting that has been refined in advance.
[0116] The current resolution adjustment module, in the process of adjusting the current resolution of the participant's video stream, retrieves the resolution adjustment preference options set by the participant, and adjusts the current resolution based on the participant-related data and the resolution adjustment preference options.
[0117] Further, including but not limited to:
[0118] A historical conference performance data retrieval module is used to retrieve the corresponding historical conference performance data and predict the corresponding network fluctuation time period based on the historical conference performance data;
[0119] The audio and video transmission parameter adjustment module is used to adjust the audio and video transmission parameters corresponding to the participants before network fluctuations occur;
[0120] The key frame information within the network fluctuation period is downloaded and stored in the client cache.
[0121] An embodiment of the present application further discloses an adaptive data transmission rate adjustment method, comprising a processor, wherein a program of any one of the adaptive data transmission rate adjustment methods described above is executed in the processor.
[0122] The embodiment of the present application further discloses a storage medium storing a program of any one of the above-mentioned adaptive data transmission rate adjustment methods.
[0123] Although the embodiments of the present application have been shown and described above, it can be understood that the above embodiments are exemplary and cannot be understood as limitations on the present application. Ordinary technicians in this field can change, modify, replace and modify the above embodiments within the scope of the present application.
Claims
1. A method for adaptively adjusting data transmission rate, characterized in that: include: When conducting a multi-person video conference, obtain the current network status data corresponding to each participant, and determine the corresponding rate adjustment priority based on the audio and video encoding parameters in all the current network status data, wherein the current network status data includes uplink bandwidth, downlink bandwidth, packet loss rate, delay and jitter, and the rate adjustment priority is the adjustment priority for all participants; Retrieving corresponding historical conference performance data and a pre-trained recognition model, inputting the current network status data and the historical conference performance data into the recognition model, and obtaining corresponding recognition results, the recognition results including predictions of future network status or classifications of current network status, and the historical conference performance data including bandwidth, packet loss rate, and latency; Determine the corresponding target participant based on the recognition result and the rate adjustment priority, retrieve the target network status data corresponding to the target participant, and adjust the audio and video transmission speed of the target participant based on the target network status data; The method further includes: obtaining the geographical location and network type corresponding to each participant, grouping each participant based on the geographical location and the network type, and determining the group type corresponding to each participant; setting a corresponding rate adjustment strategy for the group type; retrieving the current network status data of each participant in real time to determine whether the current network status data has changed; when it is detected that the current network status data of a participant has changed, determining the corresponding changed participant, and switching the changed participant from the current group type to the latest group type; after the group type of the changed participant is switched, applying the rate adjustment strategy corresponding to the latest group type, wherein the rate adjustment strategy includes basic bit rate settings, bit rate fluctuation range, adjustment frequency, and audio and video encoding parameters.
2. The adaptive data transmission rate adjustment method according to claim 1, characterized in that: In the process of detecting that the current network status data of the participant has changed, the method further includes: Retrieving the current network status data corresponding to the previous period, and determining the corresponding current network change data set based on the current network status data of the current period, wherein the current network change data set includes bandwidth change, packet loss rate change, delay change, and jitter change; Retrieving a preset current network change threshold set, wherein the current network change threshold set includes a bandwidth change threshold, a packet loss rate change threshold, a delay change threshold, and a jitter change threshold; It is determined whether there is any change data in the current network change data set that is greater than a change threshold of the current network change threshold set. If so, it is determined that the current network status data has changed.
3. The adaptive data transmission rate adjustment method according to claim 1, characterized in that: The method also includes: Retrieving corresponding historical conference performance data, and predicting a corresponding network fluctuation time period based on the historical conference performance data; Before network fluctuations occur, adjust the audio and video transmission parameters corresponding to the target participants; The key frame information within the network fluctuation time period is downloaded and stored in the client buffer area.
4. An adaptive data transmission rate adjustment device, characterized in that: include: The current network status data acquisition module is used to obtain the current network status data corresponding to each participant during a multi-person video conference, and determine the corresponding rate adjustment priority based on the audio and video encoding parameters in all the current network status data, wherein the current network status data includes uplink bandwidth, downlink bandwidth, packet loss rate, delay and jitter, and the rate adjustment priority is the adjustment priority for all participants; The recognition result acquisition module retrieves the corresponding historical conference performance data and the pre-trained recognition model, inputs the current network status data and the historical conference performance data into the recognition model, and is used to obtain the corresponding recognition result, the recognition result includes the prediction of the future network status or the classification of the current network status, and the historical conference performance data includes bandwidth, packet loss rate and delay; An audio and video transmission speed adjustment module determines a corresponding target participant based on the recognition result and the rate adjustment priority, retrieves target network status data corresponding to the target participant, and adjusts the audio and video transmission speed of the target participant based on the target network status data; Among them, it also includes: A grouping module obtains the geographical location and network type corresponding to each participant, and groups each participant based on the geographical location and network type to determine the group type corresponding to each participant; A rate adjustment strategy setting module, used to set the corresponding rate adjustment strategy for the group type, wherein the rate adjustment strategy includes basic bit rate setting, bit rate fluctuation range, adjustment frequency and audio and video encoding parameters; The network status judgment module retrieves the current network status data of each participant in real time to determine whether the current network status data has changed; A changed participant determination module, when detecting that the current network status data of a participant has changed, is used to determine the corresponding changed participant and switch the changed participant from the current group type to the latest group type; The rate adjustment strategy application module is used to apply the rate adjustment strategy corresponding to the latest group type after the group type of the participants is switched.
5. An adaptive data transmission rate adjustment device, characterized in that: The method comprises a processor in which a program for implementing the adaptive data transmission rate adjustment method according to any one of claims 1 to 3 is run.
6. A storage medium, characterized in that: A program for implementing the adaptive data transmission rate adjustment method according to any one of claims 1 to 3 is stored.
Citation Information
Patent Citations
Media capability dynamic adjustment method and device
CN112422879A
Video transmission control method and control system based on real-time network state
CN118764663A