Data processing method and apparatus, and related product

By determining the matching of bit rate and bandwidth at the data sending end and controlling the start and stop of the smooth sending module, the performance consumption and delay problems caused by continuously turning on the module in real-time communication are solved, achieving a low-consumption and low-latency communication experience.

WO2025208937A1PCT designated stage Publication Date: 2025-10-09BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/140579
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-02
Filing Date
2024-12-19
Publication Date
2025-10-09

AI Technical Summary

Technical Problem

During real-time communication, continuously turning on the smooth sending module will increase the performance consumption of the data sending end, resulting in increased latency and affecting user experience.

Method used

By judging whether the data transmission code rate of the data sending end matches the bandwidth, the start and stop of the smooth transmission module is controlled to ensure that data is sent at a matching code rate to avoid unnecessary performance consumption.

Benefits of technology

While reducing the performance consumption of the data sending end, it also reduces the real-time communication delay and improves the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024140579_09102025_PF_FP_ABST
    Figure CN2024140579_09102025_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the embodiments of the present disclosure are a data processing method and apparatus, and a related product. The data processing method comprises: on the basis of at least one data sending state indicator of a data sending end, determining whether the data sending bitrate of the data sending end matches the data sending bandwidth of the data sending end; and on the basis of the determination result, controlling a smooth sending module of the data sending end to start or stop operation, wherein after the smooth sending module starts operation, the data sending end sends data to a data receiving end on the basis of a data sending bitrate, which matches the data sending bandwidth of the data sending end, and after the smooth sending module stops operation, the data sending end sends data to the data receiving end on the basis of the data generation rate of the data sending end.
Need to check novelty before this filing date? Find Prior Art

Description

Data processing method, device and related products

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application is based on the Chinese application with application number 202410396799.4 and application date April 2, 2024, and claims its priority. The disclosed content of the Chinese application is hereby introduced as a whole into this application. Technical Field

[0003] The present disclosure relates to the field of communications, and in particular to a data processing method, device, and related products. Background Art

[0004] During real-time communication, the data sending end usually has a smooth sending module, which can send data according to the data sending bandwidth of the data sending end, thereby reducing the data delay of real-time communication and ensuring the user's real-time communication experience. Summary of the Invention

[0005] In a first aspect, an embodiment of the present disclosure provides a data processing method, including:

[0006] determining, based on at least one data transmission status indicator of the data transmitting end, whether a data transmission bit rate of the data transmitting end matches a data transmission bandwidth of the data transmitting end;

[0007] Based on the judgment result, the smooth sending module in the data sending end is controlled to start or stop working; after starting working, the smooth sending module enables the data sending end to send data to the data receiving end based on a data sending code rate that matches the data sending bandwidth of the data sending end; after stopping working, the smooth sending module enables the data sending end to send data to the data receiving end based on the data generation rate of the data sending end.

[0008] In a second aspect, an embodiment of the present disclosure provides a data processing device, including:

[0009] a judgment module, configured to judge whether a data transmission code rate of the data transmitting end matches a data transmission bandwidth of the data transmitting end according to at least one data transmission status indicator of the data transmitting end;

[0010] a control module configured to control a smooth transmission module in the data transmitting end to start or stop working according to a judgment result; after starting working, the smooth transmission module causes the data transmitting end to send data to the data receiving end based on a data transmission code rate that matches the data transmission bandwidth of the data transmitting end; and after stopping working, the smooth transmission module causes the data transmitting end to send data to the data receiving end based on a data generation rate of the data transmitting end.

[0011] In a third aspect, an embodiment of the present disclosure provides an electronic device, comprising: a processor; and a memory configured to store computer-executable instructions, wherein the computer-executable instructions, when executed, enable the processor to implement the steps of the method described in the first aspect above.

[0012] In a fourth aspect, an embodiment of the present disclosure provides a computer-readable storage medium, which is used to store computer-executable instructions. When the computer-executable instructions are executed by a processor, the steps of the method described in the first aspect are implemented.

[0013] In a fifth aspect, an embodiment of the present disclosure provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, it implements the steps of the method described in the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] In order to more clearly illustrate one or more embodiments of the present disclosure or technical solutions in the prior art, the following briefly introduces the drawings required for use in the description of the embodiments or the prior art. Obviously, the drawings described below are only some embodiments described in the present disclosure. Those skilled in the art can derive other drawings based on these drawings without inventive effort.

[0015] FIG1 is a flow chart of a data processing method provided by an embodiment of the present disclosure;

[0016] FIG2 is a schematic structural diagram of a data sending end provided by an embodiment of the present disclosure;

[0017] FIG3 is a schematic diagram showing the working principle of a smooth sending module provided by an embodiment of the present disclosure;

[0018] FIG4 is a schematic diagram of a scenario of a data processing method provided by an embodiment of the present disclosure;

[0019] FIG5 is a schematic structural diagram of a data processing device provided by an embodiment of the present disclosure;

[0020] FIG6 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure. DETAILED DESCRIPTION

[0021] In order to enable those skilled in the art to better understand the technical solutions in one or more embodiments of the present disclosure, the technical solutions in one or more embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in one or more embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, not all of the embodiments. Based on one or more embodiments of the present disclosure, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of the present disclosure.

[0022] It is understandable that before using the technical solutions disclosed in the various embodiments of this disclosure, the type, scope of use, usage scenarios, etc. of the personal information involved in this disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.

[0023] For example, in response to a user's active request, a prompt message is sent to the user to clearly inform the user that the operation requested will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the electronic device, application, server, storage medium, or other software or hardware that performs the operations of the disclosed technical solution based on the prompt message.

[0024] As an optional but non-limiting implementation, in response to receiving a user's active request, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. Furthermore, the pop-up window may also contain a selection control for the user to select "agree" or "disagree" to provide personal information to the electronic device.

[0025] It is understandable that the above notification and user authorization process are merely illustrative and do not limit the implementation of the present disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of the present disclosure.

[0026] In existing technologies related to real-time communication processes, a smooth sending module is usually continuously enabled at the data sending end. However, continuously enabling the smooth sending module easily increases the load of the data sending end and increases the performance consumption of the data sending end.

[0027] In view of this, the embodiments of the present disclosure provide a data processing method, device and related products, which can reduce the data delay of real-time communication while reducing the performance consumption of the data sending end, thereby ensuring the user's real-time communication experience.

[0028] FIG1 is a flow chart of a data processing method provided by an embodiment of the present disclosure. The method in FIG1 can be executed by a data sending end, which can be a terminal device or a server. The terminal device can be a mobile phone, a tablet computer, a desktop computer, a portable notebook, a wearable device, a car computer, etc. The server can be an independent server, a server cluster composed of multiple servers, or a cloud server for cloud computing processing. As shown in FIG1, the method includes the following steps:

[0029] Step S102 : judging whether the data transmission code rate of the data transmitting end matches the data transmission bandwidth of the data transmitting end according to at least one data transmission status indicator of the data transmitting end.

[0030] In step S104, based on the determination result, the smooth transmission module in the data transmitting end is controlled to start or stop operation. When started, the smooth transmission module causes the data transmitting end to transmit data to the data receiving end at a data transmission bit rate that matches the data transmission bandwidth of the data transmitting end. When stopped, the smooth transmission module causes the data transmitting end to transmit data to the data receiving end at a data generation rate of the data transmitting end. Specifically, as an example, the data transmission bit rate that matches the data transmission bandwidth of the data transmitting end may include a bit rate that is less than or equal to the data transmission bandwidth of the data transmitting end and differs from the data transmission bandwidth by less than a specific bandwidth / bit rate threshold.

[0031] In some embodiments, when it is determined that the data transmission code rate of the sending end does not match the data transmission bandwidth of the data sending end, the smooth transmission module is controlled to start working, for example, if the smooth transmission module is already working, it continues to work, if it was not working before, the smooth transmission module starts working; on the other hand, if it is determined that the data transmission code rate of the sending end matches the data transmission bandwidth of the data sending end, the smooth transmission module does not work, for example, if the smooth transmission module is already working, it stops working, if it was not working before, the smooth transmission module continues to not work / stops working.

[0032] In this embodiment, first, based on at least one data transmission status indicator of the data transmitting end, a determination is made as to whether the data transmission bit rate of the data transmitting end matches the data transmission bandwidth of the data transmitting end. Then, based on the determination result, a smooth transmission module in the data transmitting end is controlled to start or stop operation. After starting operation, the smooth transmission module causes the data transmitting end to send data to the data receiving end at a data transmission bit rate that matches the data transmission bandwidth of the data transmitting end. After stopping operation, the smooth transmission module causes the data transmitting end to send data to the data receiving end at a data generation rate of the data transmitting end. Thus, this embodiment can determine whether the data transmission bit rate of the data transmitting end matches the data transmission bandwidth of the data transmitting end, and control the smooth transmission module in the data transmitting end to start or stop operation based on the determination result. This eliminates the need to keep the smooth transmission module constantly active, reduces data latency in real-time communication while reducing performance consumption at the data transmitting end, and thus ensures a user's real-time communication experience.

[0033] In the disclosed embodiments, the above steps may be performed periodically. For example, a data transmission status indicator of the data transmitter may be obtained every specific time period (e.g., 100ms). The data transmission status indicator of the data transmitter is then used to determine whether the data transmission bit rate of the data transmitter matches the transmission bandwidth. Based on the determination result, the data smoothing module in the data transmitter is controlled to start or stop operation. For ease of description, the time at which the above steps are performed every 100ms is referred to as a detection moment, and the time interval between two adjacent 100ms intervals is referred to as a detection period.

[0034] FIG2 is a schematic diagram of the structure of a data transmitter according to an embodiment of the present disclosure. As shown in FIG2 , in addition to achieving smooth data transmission through a smooth transmission module 23, the data transmitter also includes a bandwidth estimation module 21 and a smooth transmission state controller 22. As will be understood, smooth data transmission refers to the situation where, when the data transmission bandwidth of the data transmitter decreases but the data transmission bitrate of the data transmitter remains high, the smooth transmission module 23 is activated to enable the data transmitter to transmit data at a data transmission bitrate that matches the current bandwidth.

[0035] In this embodiment, during the process of achieving smooth data transmission, the bandwidth estimation module 21 can determine whether the current data transmission bit rate of the data transmitting end matches the data transmission bandwidth of the data transmitting end based on at least one data transmission status indicator of the data transmitting end. It should be noted that the at least one data transmission status indicator of the data transmitting end can be obtained through various appropriate methods or by various appropriate devices. As an example, the data transmission status indicator can be obtained by the bandwidth estimation module 21 itself, or by any other device, such as the transmitting end itself or an external monitoring device, and provided to the bandwidth estimation module 21. This embodiment of the present application does not impose any restrictions on this. The bandwidth estimation module 21 then outputs the judgment result and sends it to the smooth transmission state controller 22. It is understandable that whether the data transmission code rate of the data sending end matches the data transmission bandwidth of the data sending end can also be characterized as the quality of the network status of the data sending end. When the data transmission code rate of the data sending end does not match the data transmission bandwidth of the data sending end, that is, when the data transmission code rate of the data sending end exceeds the range that the data transmission bandwidth can bear, the network status can be considered to be poor; when the data transmission code rate of the data sending end matches the data transmission bandwidth of the data sending end, that is, when the data transmission code rate is within the range that the data transmission bandwidth can bear, the network status can be considered to be good. Therefore, when the judgment result is that the data transmission code rate of the data sending end matches the data transmission bandwidth of the data sending end, it indicates that the network status of the data sending end is good; when the judgment result is that the data transmission code rate of the data sending end does not match the data transmission bandwidth of the data sending end, it indicates that the network status of the data sending end is poor.

[0036] Based on the received judgment result, the smoothing sending state controller 22 determines the signal to be output and sends the signal to the smoothing sending module 23. As will be appreciated, the smoothing sending state controller 22 also outputs two signals based on the received judgment result: a start signal and a stop signal. The start signal is used to control the smoothing sending module 23 to start operation, while the stop signal is used to control the smoothing sending module 23 to stop operation. Upon receiving the start signal or stop signal, the smoothing sending module 23 starts or stops the smoothing scheduling thread.

[0037] In addition to outputting a determination result to the smooth transmission state controller, the bandwidth estimation module 21 also outputs a set data transmission bit rate to the smooth transmission module 23. This set data transmission bit rate is a data transmission bit rate that matches the data transmission bandwidth, based on the current data transmission bandwidth of the data transmitter. The term "data transmission bit rate that matches the data transmission bandwidth" is used interchangeably herein. It is understood that only when this set data transmission bit rate is equal to or less than the data transmission bandwidth of the data transmitter can delays and packet loss during data transmission be avoided. For example, assuming that at the detection moment the data transmission bit rate of the data transmitter is 12 Mbps and the data transmission bandwidth is 6 Mbps, the bandwidth estimation module 21 determines based on the data transmission state indicator that the current data transmission bit rate does not match the data transmission bandwidth. The module then transmits a mismatch determination to the smooth transmission state controller 22 and a set data transmission bit rate, for example, 5 Mbps, to the smooth transmission module 23. Upon receiving the start-up signal, the smooth transmission module 23 transmits data to the data receiving end based on the set data transmission bit rate. It is understood that when data is transmitted to the data receiving end via the smooth transmission module 23, the actual data transmission bit rate should be less than or equal to the set data transmission bit rate. Furthermore, to ensure data transmission quality, the difference between the set data transmission bit rate and the data transmission bandwidth of the data transmitting end should not be too large, and may be, for example, less than a specific threshold.

[0038] During the data transmission process, the data transmission status indicator can be used to determine whether the data transmission code rate matches the data transmission bandwidth. Therefore, in order to accurately determine whether the data transmission code rate and the data transmission bandwidth at the data sending end match, the data transmission status indicator at the detection time can be obtained, and whether the data transmission code rate and the data transmission bandwidth match can be determined based on the data transmission status indicator.

[0039] In some embodiments, the data transmission status indicator may be one or more of the following: network one-way delay, amount of unconfirmed data in the network, network load status, and packet loss rate. The network one-way delay is the time it takes for data to be transmitted from the data sending end to the data receiving end during network transmission; the amount of unconfirmed data in the network is the amount of data that has been sent by the data sending end but has not yet been confirmed by the data receiving end during the data transmission process; the network load status includes a non-overloaded network state and an overloaded network state, and the network load status is determined based on the amount of data transmission carried by the network in a specific time period, the number of connections, and resource usage; and the packet loss rate is the ratio of the number of data packets lost during data transmission to the number of data packets sent.

[0040] In some embodiments, determining whether the data transmission code rate of the data transmitting end matches the data transmission bandwidth of the data transmitting end according to the data transmission status indicator includes:

[0041] Check whether the data transmission status indicator meets the corresponding indicator requirements; the indicator requirements are used to indicate that the data transmission bit rate does not match the data transmission bandwidth;

[0042] Based on the detection result, determine whether the data transmission code rate matches the data transmission bandwidth.

[0043] For the acquired data transmission status indicator, detect whether the data transmission status indicator meets the corresponding indicator requirement. The indicator requirement is used to indicate that the data transmission code rate does not match the data transmission bandwidth. That is to say, detect whether the data transmission status indicator meets the corresponding requirement of the worse network state. Accordingly, when the detection result is that the data transmission status indicator meets the corresponding indicator requirement, it means that the data transmission status indicator meets the indicator requirement of the worse network state. Therefore, it can be determined that the data transmission code rate of the current data sending end does not match the data transmission bandwidth of the current data sending end. When the detection result is that the data transmission status indicator does not meet the corresponding indicator requirement, it means that the data transmission status indicator does not meet the indicator requirement of the worse network state. Therefore, it can be determined that the data transmission code rate of the current data sending end matches the data transmission bandwidth of the current data sending end.

[0044] When testing whether the data transmission status indicators meet the corresponding indicator requirements at the detection moment, it is possible to test whether at least one of the network one-way delay duration, the amount of unconfirmed data in the network, the network load status, and the packet loss rate, etc., in the data transmission status indicators meet the corresponding indicator requirements. For example, it is possible to test whether the network one-way delay duration has increased compared to the network one-way delay duration at the previous moment, whether the amount of unconfirmed data in the network exceeds a corresponding threshold, whether the network is in an overloaded state, and whether the packet loss rate reaches a corresponding threshold, etc. After testing whether the data transmission status indicators meet the corresponding indicator requirements and obtaining the test results, it is possible to determine whether the data transmission bit rate of the data transmitting end matches the data transmission bandwidth based on the test results.

[0045] It can be seen that through this embodiment, whether the data sending status indicator meets the corresponding indicator requirements is detected, and based on the detection results, it is judged whether the data sending code rate matches the data sending bandwidth, so that whether the data sending code rate of the data sending end matches the data sending bandwidth can be judged from multiple dimensions, making the judgment result more accurate.

[0046] In some embodiments, determining whether the data transmission code rate matches the data transmission bandwidth based on the detection result includes:

[0047] According to the test results, the historical value corresponding to the data sending status indicator is adjusted; the historical value is determined based on whether the historically obtained data sending status indicator meets the corresponding indicator requirements;

[0048] According to the adjusted historical value corresponding to the data transmission status indicator, it is determined whether the data transmission bit rate matches the data transmission bandwidth.

[0049] In the process of detecting whether the data transmission status indicator meets the corresponding indicator requirements, a corresponding value can be set for the data transmission status indicator. After detecting whether the data transmission status indicator meets the corresponding indicator requirements and obtaining the detection result, the historical value corresponding to the data transmission status indicator is adjusted based on the detection result, and based on the adjusted historical value corresponding to the data transmission status indicator, it is determined whether the data transmission bit rate and the data transmission bandwidth match. The historical value is determined based on whether the historically obtained data transmission status indicator meets the corresponding indicator requirements.

[0050] Exemplarily, the data transmission status indicator is at least one of the network one-way delay duration, the amount of unacknowledged data in the network, the network load status, and the packet loss rate. The numerical value corresponding to the data transmission status indicator can be obtained by setting a corresponding counter for counting. For the above-mentioned data transmission status indicators, a corresponding counter is set for each data transmission status indicator, namely Counter 1, Counter 2, Counter 3, and Counter 4. The initial value of each counter can be set to 0. The counting result of the counter increases or decreases cumulatively over multiple consecutive detection cycles, and does not decrease when it decreases to 0. Subsequently, the counter value can be adjusted based on the result of the detection of whether the data transmission status indicator meets the corresponding indicator requirement, and based on the adjusted counter value, it can be determined whether the data transmission bit rate matches the data transmission bandwidth.

[0051] It can be seen that through this embodiment, it is possible to determine whether the data transmission bit rate matches the data transmission bandwidth by adjusting the historical values ​​corresponding to the data transmission status indicators, so that the judgment result fully considers whether the historically obtained data transmission status indicators meet the corresponding indicator requirements, thereby making the judgment result indicate whether the data transmission bit rate matches the data transmission bandwidth over a period of time in history.

[0052] In some embodiments, adjusting the historical value corresponding to the data transmission status indicator based on the detection result includes:

[0053] If it is determined that the data sending status indicator meets the corresponding indicator requirement, the historical value corresponding to the data sending status indicator is increased by a first threshold;

[0054] If it is determined that the data sending status indicator does not meet the corresponding indicator requirement, the historical value corresponding to the data sending status indicator is reduced by a second threshold.

[0055] The detection results obtained by detecting whether the data sending status indicator meets the corresponding indicator requirements at the detection moment include satisfaction and non-satisfaction. Therefore, the historical value corresponding to the data sending status indicator can be adjusted accordingly based on the detection results of satisfaction or non-satisfaction.

[0056] Continuing with the above example, in the process of detecting whether the data transmission status indicator meets the corresponding indicator requirements, it is possible to detect whether the duration of the network one-way delay has increased compared to the duration of the network one-way delay at the previous moment, whether the amount of unconfirmed data in the network exceeds the corresponding threshold, whether the network is in an overloaded state, and whether the packet loss rate reaches at least one of the corresponding thresholds. If the duration of the network one-way delay has increased compared to the duration of the network one-way delay at the previous moment, the value of the counter 1 corresponding to the duration of the network one-way delay is increased by the first threshold; if the duration of the network one-way delay has not increased compared to the duration of the network one-way delay at the previous moment, the value of the counter 1 corresponding to the duration of the network one-way delay is reduced by the second threshold. If the amount of unconfirmed data in the network exceeds the corresponding threshold, the value of the counter 2 corresponding to the amount of unconfirmed data in the network is increased by the first threshold, otherwise, the second threshold is reduced. If the network is in an overloaded state at the current moment, the value of the counter 3 corresponding to the indicator of the network load state is increased by the first threshold, otherwise, the second threshold is reduced. If the packet loss rate in the current network exceeds the corresponding threshold, the value of the counter 4 corresponding to the packet loss rate is increased by a first threshold, otherwise, the value is decreased by a second threshold. The first threshold is, for example, 1, and the second threshold is, for example, 2.

[0057] It can be seen that through this embodiment, the historical value corresponding to the data transmission status indicator can be adjusted according to the detection result, and the detection result can be expressed in the form of a numerical value, so that the detection result is clearer and the judgment of whether the data transmission bit rate and the data transmission bandwidth match is more accurate and efficient.

[0058] In some embodiments, the data sending status indicator includes a first sending status indicator and a second sending status indicator; and according to the adjusted historical values ​​corresponding to the data sending status indicators, determining whether the data sending code rate matches the data sending bandwidth includes: if the adjusted historical value corresponding to any one of the first sending status indicators reaches a third threshold, and / or the adjusted historical value corresponding to each of the second sending status indicators reaches a corresponding fourth threshold, then determining that the data sending code rate does not match the data sending bandwidth; otherwise, determining that the data sending code rate matches the data sending bandwidth.

[0059] In this embodiment, the data transmission status indicator includes a first transmission status indicator and a second transmission status indicator. Based on the adjusted historical value corresponding to at least one of the first transmission status indicator and the second transmission status indicator, whether the data transmission bit rate of the data transmitting end matches the data transmission bandwidth at the current moment is determined. There are three determination methods. Method 1: At the detection moment, if the adjusted historical value corresponding to any one of the first transmission status indicators reaches a third threshold, and the adjusted historical value corresponding to each of the second transmission status indicators reaches a corresponding fourth threshold, the data transmission bit rate is determined to be mismatched with the data transmission bandwidth. Otherwise, the data transmission bit rate is determined to be matched with the data transmission bandwidth. Method 2: At the detection moment, if the adjusted historical value corresponding to any one of the first transmission status indicators reaches the third threshold, the data transmission bit rate is determined to be mismatched with the data transmission bandwidth. Otherwise, the data transmission bit rate is determined to be matched with the data transmission bandwidth. Method 3: At the detection moment, if the adjusted historical value corresponding to each of the second transmission status indicators reaches a corresponding fourth threshold, the data transmission bit rate is determined to be mismatched with the data transmission bandwidth. Otherwise, the data transmission bit rate is determined to be matched with the data transmission bandwidth.

[0060] Continuing with the above example, the data transmission status indicator can be divided into a first transmission status indicator and a second transmission status indicator based on the degree of impact on data transmission. For example, the first transmission status indicator includes the packet loss rate; the second transmission status indicator includes at least one of the network one-way delay duration, the amount of unacknowledged data in the network, and the network load status. When determining whether the data transmission bit rate and data transmission bandwidth of the data transmitter at the detection moment match based on the adjusted historical values ​​corresponding to the first and second transmission status indicators, if only the value of counter 4 corresponding to the packet loss rate reaches the corresponding third threshold, it can be determined that the data transmission bit rate and data transmission bandwidth of the data transmitter do not match. If at least one of the value of counter 1 corresponding to the network one-way delay duration, the value of counter 2 corresponding to the amount of unacknowledged data in the network, and the value of counter 3 corresponding to the network load status all reach the fourth threshold, but the value of counter 4 corresponding to the packet loss rate does not reach the third threshold, it can be determined that the data transmission bit rate and data transmission bandwidth of the data transmitter do not match. Accordingly, if the value of counter 4 corresponding to the packet loss rate reaches the third threshold and the value of counter 1 corresponding to the network one-way delay duration, the value of counter 2 corresponding to the amount of unacknowledged data in the network, and the value of counter 3 corresponding to the network load status all reach the fourth threshold, it can also be determined that the data transmission bit rate of the data transmitter does not match the data transmission bandwidth. It will be understood that, excluding the above three situations, in all other situations, the data transmission bit rate of the data transmitter matches the data transmission bandwidth.

[0061] After determining whether the data transmission code rate of the data transmitting end matches or does not match the data transmission bandwidth, the smooth transmission module in the data transmitting end may be controlled to start or stop working according to the determination result.

[0062] It can be seen that, through this embodiment, different judgment conditions can be set according to different types of data transmission status indicators, thereby improving the accuracy of judging whether the data transmission code rate matches the data transmission bandwidth.

[0063] In some embodiments, controlling the smooth transmission module in the data transmitting end to start or stop working according to the judgment result includes:

[0064] If it is determined that the data transmission code rate does not match the data transmission bandwidth, the smooth transmission module is controlled to start working;

[0065] If it is determined that the data transmission code rate and the data transmission bandwidth match, the duration from the specific historical moment to the current moment is obtained, and according to the duration, the smooth transmission module is controlled to start or stop working; wherein the specific historical moment is the moment when the data sending end last determined that the data transmission code rate of the data sending end and the data transmission bandwidth of the data sending end switched from mismatching to matching.

[0066] FIG3 is a schematic diagram illustrating the operating principle of a smooth transmission module provided by an embodiment of the present disclosure. As shown in FIG3 , if the judgment result is that the data transmission code rate and the data transmission bandwidth do not match, indicating that the network status is poor, the smooth transmission module can be directly controlled to start operation. If the judgment result is that the data transmission code rate and the data transmission bandwidth match, indicating that the network status is good, it is still necessary to determine the time when the data transmission code rate and the data transmission bandwidth changed from mismatching to matching, and to obtain the interval between this time and the detection time, that is, to confirm whether the current good network status can be sustained and stable.

[0067] It can be seen that through this embodiment, when the data transmission code rate and the data transmission bandwidth do not match, the smooth transmission module can be controlled to start working. When the data transmission code rate and the data transmission bandwidth match, the smooth transmission module can be controlled to start working or stop working based on the time from the moment when the data transmission end last determined that the data transmission code rate and the data transmission bandwidth switched from mismatch to match to the current moment. This can make the control of the smooth transmission module more accurate, thereby reducing the performance consumption of the data transmission end.

[0068] In some embodiments, controlling the smooth sending module to start or stop working according to the duration includes:

[0069] If the duration is greater than the duration threshold, the smooth sending module is controlled to stop working; otherwise, the smooth sending module is controlled to start working.

[0070] If the interval between the last time the data transmission bit rate and the data transmission bandwidth changed from mismatching to matching and the detection time is greater than the duration threshold, indicating that the data transmission bit rate and the data transmission bandwidth have been matching for a long time and the network status is relatively good, the smooth transmission module can be controlled to stop working. If the interval is less than or equal to the duration threshold, indicating that the data transmission bit rate and the data transmission bandwidth have been matching for a short time and the network status is poor, the smooth transmission module can be controlled to start working.

[0071] For example, assume that the last time the data transmission code rate and data transmission bandwidth changed from mismatching to matching is time a, the detection time is time b, time a precedes time b, the interval between time a and time b is time c, and the duration threshold is time d. The time when the data transmission code rate and data transmission bandwidth changed from mismatching to matching is when the mismatch between the data transmission code rate and data transmission bandwidth was detected at time e, and a match between the data transmission code rate and data transmission bandwidth was detected at time a, and time e was the previous detection time before time a. In this case, time a is determined to be the time when the mismatch between the data transmission code rate and data transmission bandwidth changed to matching. If a mismatch between the data transmission code rate and data transmission bandwidth is detected at time b, the smooth transmission module can be directly controlled to start operation. If a match between the data transmission code rate and data transmission bandwidth is detected at time b, the smooth transmission module can be controlled to start or stop operation based on the interval c between time a and time b. If c is greater than d, it means that the data transmission code rate and the data transmission bandwidth have been continuously matched for a long time and the network status is relatively good, so the smooth transmission module is controlled to stop working; if c is less than or equal to d, it means that the data transmission code rate and the data transmission bandwidth have been continuously matched for a short time and the network status is relatively poor, so the smooth transmission module is controlled to start working.

[0072] In the process of controlling the smooth transmission module to start or stop working, a signal to start or stop working is output to the smooth transmission module, and the smooth transmission module is controlled to start or stop working through the signal.

[0073] It can be seen that through this embodiment, the smooth sending module can be controlled to start or stop working based on the relationship between the time from the moment when the data sending end last determined that the data sending code rate and the data sending bandwidth switched from mismatch to match to the current moment and the time threshold, which can make the control of the smooth sending module more accurate.

[0074] In this embodiment, the current moment refers to the moment when it is determined that the data transmission code rate matches the data transmission bandwidth.

[0075] In some embodiments, controlling the smooth sending module to start working includes:

[0076] Sending a start-up signal to the smooth sending module;

[0077] The smooth transmission module is controlled by starting the working signal to transmit data based on a data transmission code rate that matches the data transmission bandwidth of the data transmitting end.

[0078] In this embodiment, when the smooth transmission module is activated, a corresponding activation signal is sent to the smooth transmission module. Upon receiving the activation signal, the smooth transmission module immediately initiates the corresponding smooth transmission scheduling thread, inserts all data packets sent by the data transmitter into the corresponding smooth buffer queue, performs data transmission according to the timer schedule, and transmits data to the data receiver according to the set data transmission bit rate during the data transmission process. Referring to the description in FIG2 above, the set data transmission bit rate can be generated by the bandwidth estimation module after determining whether the data transmission bit rate of the data transmitter matches the data transmission bandwidth, and then sent to the smooth transmission module based on the determination result. When data is transmitted at a data transmission bit rate that matches the current data transmission bandwidth of the data transmitter, network delays and packet loss caused by excessive data transmission bit rates can be avoided.

[0079] When the smooth sending module receives the start work signal, the state of the smooth sending scheduling thread may be a start state or a stop state.

[0080] For example, assume that the last time the data transmission bit rate and data transmission bandwidth changed from mismatching to matching is time a, the previous detection time is time b, time a precedes time b, the detection time is time c, and the duration threshold is time d. The time when the data transmission bit rate and data transmission bandwidth changed from mismatching to matching is when the mismatch was detected at time e, and a match was detected at time a, and time e was the previous detection time before time a. In this case, time a is determined to be the time when the data transmission bit rate and data transmission bandwidth changed from mismatching to matching. In one scenario, a mismatch between the data transmission bit rate and data transmission bandwidth is detected at time b, and the smooth transmission module receives a start signal and initiates the smooth transmission scheduling thread. Subsequently, at time c, a mismatch between the data transmission bit rate and data transmission bandwidth is also detected, and the smooth transmission module also receives a start signal. In another scenario, a match between the data transmission bit rate and data transmission bandwidth is detected at time b, and the duration between time b and time a exceeds the duration threshold d. The smooth transmission module receives a stop signal and stops operating. Afterwards, at time c, it is detected that the data transmission code rate does not match the data transmission bandwidth, and therefore the smooth transmission module receives a start-up operation signal.

[0081] After receiving the start signal, the smooth transmission module transmits data at a data transmission rate that matches the data transmission bandwidth of the data transmitter. For example, if the data transmission bandwidth of the data transmitter at the current detection time is 6 Mbps, and the set data transmission rate received by the smooth transmission module is 5 Mbps, the smooth transmission module can send data to the data receiver at a data transmission rate of less than or equal to 5 Mbps.

[0082] It can be seen that through this embodiment, a start working signal can be sent to the smooth sending module, and the start working signal can be used to control the smooth sending module to send data based on the data sending code rate that matches the data sending bandwidth of the data sending end. This can avoid network delays and packet loss caused by the mismatch between the data sending code rate and the data sending bandwidth, thereby improving data transmission efficiency and enhancing network performance.

[0083] In some embodiments, controlling the smooth sending module to stop working includes:

[0084] Sending a stop working signal to the smooth sending module;

[0085] The stop working signal controls the smooth sending module to send the buffered data of the smooth sending module based on the data sending code rate matching the data sending bandwidth of the data sending end, and stops working after the buffered data is sent.

[0086] In this embodiment, when the smooth transmission module is controlled to stop operating, a corresponding stop signal is sent to the smooth transmission module. Upon receiving the stop signal, the smooth transmission module does not immediately stop the smooth transmission scheduling thread. Instead, it first checks whether there is any unsent data in the current smoothing buffer queue. If there is any unsent data in the current smoothing buffer queue, it first marks the need to stop smooth transmission. Then, the data in the buffer queue is sent based on a set data transmission bit rate. After all data has been sent, the smooth transmission scheduling thread is stopped. This prevents data loss caused by sudden large-scale data transmission due to a sudden stop of smooth transmission. Similarly, the set data transmission bit rate can be generated by the bandwidth estimation module based on the matching result after determining whether the data transmission bit rate of the data transmitter matches the data transmission bandwidth, and then sent to the smooth transmission module based on the matching result. The set data transmission bit rate is less than or equal to the data transmission bandwidth of the current data transmitter. When data is transmitted at a data transmission bit rate less than or equal to the data transmission bandwidth of the current data transmitter, network delays and packet loss caused by excessive data transmission bit rates can be avoided.

[0087] When the smooth sending module receives the stop working signal, the state of the smooth sending scheduling thread may be the start state or the stop state.

[0088] For example, assume that the last time the data transmission code rate and data transmission bandwidth changed from mismatching to matching is time a, the previous detection time is time b, time a precedes time b, the detection time is time c, and the duration threshold is time d. The time when the data transmission code rate and data transmission bandwidth changed from mismatching to matching is when the mismatch was detected at time e, while the data transmission code rate and data transmission bandwidth were matched at time a, and time e was the previous detection time before time a. In this case, time a is determined to be the time when the data transmission code rate and data transmission bandwidth changed from mismatching to matching. In one scenario, at time a, the smooth transmission module is in an enabled state. At time b, a match between the data transmission code rate and data transmission bandwidth is detected, but the duration between time b and time a does not exceed duration threshold d. Therefore, the smooth transmission module remains enabled at time b. Subsequently, at time c, the data transmission code rate and data transmission bandwidth are still matched, and the duration between time c and time a exceeds duration threshold d. At time c, the smooth transmission module receives a stop signal.

[0089] In another scenario, at time a, the smooth transmission module is in the active state. At time b, it detects that the data transmission bitrate matches the data transmission bandwidth, and the interval between time b and time a exceeds duration threshold d. At time b, the smooth transmission module receives a stop signal and stops. Then, at time c, it detects that the data transmission bitrate matches the data transmission bandwidth, and the interval between time c and time a still exceeds duration threshold d. At time c, the smooth transmission module receives a stop signal.

[0090] After receiving a stop signal, the smoothing send module does not immediately stop the smoothing send scheduling thread. Instead, it first checks whether there is any unsent data in the current smoothing buffer queue. If so, it marks the need to stop smoothing send. It then sends the data in the buffer queue based on the configured data transmission rate and stops the smoothing send scheduling thread after all data has been sent. For example, if the configured data transmission rate is 5Mbps, the smoothing send module can send the unsent data in the smoothing buffer queue to the data receiving end at a data transmission rate less than or equal to 5Mbps and stop the smoothing send scheduling thread after all data in the smoothing buffer queue has been sent.

[0091] It can be seen that through this embodiment, a stop working signal can be sent to the smooth sending module to control the smooth sending module to send the cached data of the smooth sending module based on the data sending code rate that matches the data sending bandwidth of the data sending end, and stop working after the cached data is sent. This can avoid network delays and packet loss caused by the mismatch between the data sending code rate and the data sending bandwidth, thereby improving data transmission efficiency, enhancing network performance, and avoiding data loss caused by sudden large-scale data transmission due to the sudden stop of smooth sending.

[0092] In this embodiment, after the smooth sending module starts working, the data sending end can send data to the data receiving end based on the data sending code rate that matches the data sending bandwidth of the data sending end. After the smooth sending module stops working, the data sending end can send data to the data receiving end based on the data generation rate of the data sending end. For example, the data generation rate of the data sending end is used as the data sending code rate, and data is sent to the data receiving end according to the data sending code rate.

[0093] It should be noted that the values ​​of the above thresholds are for illustration only and are not intended to be limiting. The specific values ​​of the above thresholds can be set according to specific scenarios during the specific implementation process.

[0094] In an embodiment of the present disclosure, FIG4 is a scenario diagram of a data processing method provided by an embodiment of the present disclosure. For example, as shown in FIG4, when the data transmission bandwidth becomes smaller, the network delay will increase as the bandwidth becomes smaller. At time a, it is detected that the data transmission code rate does not match the data transmission bandwidth, and the smooth transmission module is enabled. Subsequently, the network delay decreases and returns to normal, and the data transmission code rate changes to a data transmission code rate that matches the current data transmission bandwidth. The data transmission bandwidth returns to normal at time b and continues until time c. At time c, it is detected that the network status continues to be stable, and the smooth transmission module is disabled at time c. The data transmission code rate also changes to a data transmission code rate that matches the normal data transmission bandwidth.

[0095] In one or more embodiments of the present disclosure, at least one data transmission status indicator of a data transmitter is first obtained. Based on the data transmission status indicator, it is determined whether the data transmission code rate of the data transmitter matches the data transmission bandwidth of the data transmitter. Then, based on the determination result, a smooth transmission module in the data transmitter is controlled to start or stop operation. After starting operation, the smooth transmission module causes the data transmitter to send data to the data receiver based on the data transmission code rate that matches the data transmission bandwidth of the data transmitter. After stopping operation, the smooth transmission module causes the data transmitter to send data to the data receiver based on the data generation rate of the data transmitter. Thus, through this embodiment, it is possible to determine whether the data transmission code rate of the data transmitter matches the data transmission bandwidth of the data transmitter, and control the smooth transmission module in the data transmitter to start or stop operation based on the determination result. This eliminates the need to keep the smooth transmission module enabled, reduces the data latency of real-time communication while reducing the performance consumption of the data transmitter, and ensures the user's real-time communication experience.

[0096] Corresponding to the speech data processing method described above, based on the same technical concept, one or more embodiments of the present disclosure further provide a data processing device. FIG5 is a schematic diagram of the structure of a data processing device provided by an embodiment of the present disclosure. As shown in FIG5 , the device includes:

[0097] The judgment module 51 is used to judge whether the data transmission code rate of the data transmitting end matches the data transmission bandwidth of the data transmitting end based on at least one data transmission status indicator of the data transmitting end. Here, the at least one data transmission status indicator can be obtained through any appropriate method or device, for example, it can be obtained by the judgment module itself or obtained by other devices or components and provided to the judgment module.

[0098] The control module 52 is configured to control the smooth transmission module in the data transmitting end to start or stop working according to the judgment result; after starting working, the smooth transmission module enables the data transmitting end to send data to the data receiving end based on a data transmission code rate that matches the data transmission bandwidth of the data transmitting end; after stopping working, the smooth transmission module enables the data transmitting end to send data to the data receiving end based on the data generation rate of the data transmitting end.

[0099] In one embodiment, the judgment module 51 is specifically configured to:

[0100] detecting whether the data transmission status indicator meets a corresponding indicator requirement; the indicator requirement is used to indicate that the data transmission bit rate does not match the data transmission bandwidth;

[0101] According to the detection result, it is determined whether the data transmission code rate matches the data transmission bandwidth.

[0102] In one embodiment, the judgment module 51 is further configured to:

[0103] Adjusting the historical value corresponding to the data transmission status indicator according to the detection result; the historical value is determined based on whether the data transmission status indicator obtained historically meets the corresponding indicator requirement;

[0104] Whether the data transmission bit rate matches the data transmission bandwidth is determined according to the adjusted historical value corresponding to the data transmission status indicator.

[0105] In one embodiment, the judgment module 51 is further configured to:

[0106] If it is determined that the data sending status indicator meets the corresponding indicator requirement, the historical value corresponding to the data sending status indicator is increased by a first threshold;

[0107] If it is determined that the data sending status indicator does not meet the corresponding indicator requirement, the historical value corresponding to the data sending status indicator is reduced by a second threshold.

[0108] In one embodiment, the data sending status indicator includes a first sending status indicator and a second sending status indicator; the judgment module 51 is further specifically configured to:

[0109] If the adjusted historical value corresponding to any one of the first sending status indicators reaches a third threshold, and / or the adjusted historical value corresponding to each of the second sending status indicators reaches a corresponding fourth threshold, it is determined that the data sending bit rate does not match the data sending bandwidth; otherwise, it is determined that the data sending bit rate matches the data sending bandwidth.

[0110] In one embodiment, the control module 52 is specifically configured to:

[0111] If it is determined that the data transmission code rate does not match the data transmission bandwidth, controlling the smooth transmission module to start working;

[0112] If it is determined that the data transmission bit rate matches the data transmission bandwidth, a time duration from a specific historical moment to the current moment is obtained, and according to the time duration, the smooth transmission module is controlled to start or stop working; wherein the specific historical moment is the moment when the data transmitting end last determined that the data transmission bit rate of the data transmitting end and the data transmission bandwidth of the data transmitting end switched from mismatching to matching.

[0113] In one embodiment, the control module 52 is further configured to:

[0114] If the duration is greater than the duration threshold, the smooth sending module is controlled to stop working; otherwise, the smooth sending module is controlled to start working.

[0115] In one embodiment, the control module 52 is further configured to:

[0116] Sending a start-up signal to the smooth transmission module;

[0117] The start working signal is used to control the smooth transmission module to transmit data based on a data transmission code rate that matches the data transmission bandwidth of the data transmitting end.

[0118] In one embodiment, the control module 52 is further configured to:

[0119] Sending a stop working signal to the smooth sending module;

[0120] The stop working signal controls the smooth sending module to send the buffered data of the smooth sending module based on the data sending code rate matching the data sending bandwidth of the data sending end, and stops working after the buffered data is sent.

[0121] In the disclosed embodiment, at least one data transmission status indicator of a data transmitter is first obtained. Based on the data transmission status indicator, it is determined whether the data transmission bit rate of the data transmitter matches the data transmission bandwidth of the data transmitter. Then, based on the determination result, a smooth transmission module in the data transmitter is controlled to start or stop operation. After starting operation, the smooth transmission module causes the data transmitter to send data to the data receiver based on the data transmission bit rate that matches the data transmission bandwidth of the data transmitter. After stopping operation, the smooth transmission module causes the data transmitter to send data to the data receiver based on the data generation rate of the data transmitter. Thus, through this embodiment, it is possible to determine whether the data transmission bit rate of the data transmitter matches the data transmission bandwidth of the data transmitter, and based on the determination result, control the smooth transmission module in the data transmitter to start or stop operation. This eliminates the need to keep the smooth transmission module constantly active, reduces the data latency of real-time communication while reducing the performance consumption of the data transmitter, and ensures the user's real-time communication experience.

[0122] The data processing device in the embodiment of the present disclosure can implement each process of the above-mentioned data processing method embodiment and achieve the same effects and functions, which will not be repeated here.

[0123] An embodiment of the present disclosure also provides an electronic device. FIG6 is a schematic diagram of the structure of an electronic device provided by an embodiment of the present disclosure. As shown in FIG6 , the electronic device may have relatively large differences due to different configurations or performances, and may include one or more processors 601 and a memory 602. One or more applications or data may be stored in the memory 602. Among them, the memory 602 may be a temporary storage or a persistent storage. The application stored in the memory 602 may include one or more modules (not shown in the figure), each module may include a series of computer executable instructions in the electronic device. Furthermore, the processor 601 may be configured to communicate with the memory 602 and execute a series of computer executable instructions in the memory 602 on the electronic device. The electronic device may also include one or more power supplies 603, one or more wired or wireless network interfaces 604, one or more input or output interfaces 605, one or more keyboards 606, etc.

[0124] In an embodiment of the present disclosure, an electronic device includes a processor; and a memory configured to store computer-executable instructions, wherein when the computer-executable instructions are executed, the processor implements the following process:

[0125] Acquire at least one data transmission status indicator of a data transmitting end, and determine, based on the data transmission status indicator, whether a data transmission bit rate of the data transmitting end matches a data transmission bandwidth of the data transmitting end;

[0126] Based on the judgment result, the smooth sending module in the data sending end is controlled to start or stop working; after starting working, the smooth sending module enables the data sending end to send data to the data receiving end based on a data sending code rate that matches the data sending bandwidth of the data sending end; after stopping working, the smooth sending module enables the data sending end to send data to the data receiving end based on the data generation rate of the data sending end.

[0127] In the disclosed embodiment, at least one data transmission status indicator of a data transmitter is first obtained. Based on the data transmission status indicator, it is determined whether the data transmission bit rate of the data transmitter matches the data transmission bandwidth of the data transmitter. Then, based on the determination result, a smooth transmission module in the data transmitter is controlled to start or stop operation. After starting operation, the smooth transmission module causes the data transmitter to send data to the data receiver based on the data transmission bit rate that matches the data transmission bandwidth of the data transmitter. After stopping operation, the smooth transmission module causes the data transmitter to send data to the data receiver based on the data generation rate of the data transmitter. Thus, through this embodiment, it is possible to determine whether the data transmission bit rate of the data transmitter matches the data transmission bandwidth of the data transmitter, and based on the determination result, control the smooth transmission module in the data transmitter to start or stop operation. This eliminates the need to keep the smooth transmission module constantly active, reduces the data latency of real-time communication while reducing the performance consumption of the data transmitter, and ensures the user's real-time communication experience.

[0128] The electronic device in the embodiment of the present disclosure can implement each process of the above-mentioned data processing method embodiment and achieve the same effects and functions, which will not be repeated here.

[0129] Another embodiment of the present disclosure further provides a computer-readable storage medium, which is used to store computer-executable instructions. When the computer-executable instructions are executed by a processor, they implement the data processing flows in the various embodiments of the present disclosure, especially the various flows of the data processing methods according to the embodiments of the present disclosure.

[0130] The storage medium in the embodiment of the present disclosure can implement each process of the above-mentioned data processing method embodiment and achieve the same effects and functions, which will not be repeated here.

[0131] Another embodiment of the present disclosure further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, it implements the data processing flow in each embodiment of the present disclosure, especially the various flows of the data processing method according to the embodiment of the present disclosure.

[0132] The computer program product in the embodiment of the present disclosure can implement each process of the above-mentioned data processing method embodiment and achieve the same effects and functions, which will not be repeated here.

[0133] In various embodiments of the present disclosure, the computer-readable storage medium includes a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0134] In the 1990s, technological improvements could be clearly distinguished as either hardware improvements (for example, improvements to circuit structures such as diodes, transistors, and switches) or software improvements (improvements to process flows). However, with the advancement of technology, many process flow improvements today can now be considered direct improvements to hardware circuit structures. Designers almost always create the corresponding hardware circuit structure by programming the improved process flow into the hardware circuit. Therefore, it cannot be said that a process flow improvement cannot be implemented using hardware modules. For example, a programmable logic device (PLD), such as a field programmable gate array (FPGA), is an integrated circuit whose logical function is determined by user programming. Designers can "integrate" a digital system on a PLD by programming it themselves, without having to hire a chip manufacturer to design and manufacture a dedicated integrated circuit chip. Moreover, nowadays, instead of manually fabricating integrated circuit chips, this programming is mostly done using "logic compiler" software. This is similar to the software compiler used when developing programs. Before compilation, the original code must also be written in a specific programming language, called a hardware description language (HDL). There is not just one HDL, but many, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art will also understand that by simply programming the method flow in one of these hardware description languages ​​and then programming it into an integrated circuit, a hardware circuit that implements the logic method flow can be easily obtained.

[0135] The controller can be implemented in any suitable manner. For example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also know that in addition to implementing the controller in a purely computer-readable program code format, the controller can be implemented in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, such a controller can be considered a hardware component, and the devices included therein for implementing various functions can also be considered as structures within the hardware component. Or even, the devices for implementing various functions can be considered as both software modules that implement the method and structures within the hardware component.

[0136] The systems, devices, modules, or units described in the above embodiments may be implemented by computer chips or entities, or by products having certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.

[0137] For the convenience of description, the above devices are described as being divided into various units according to their functions. Of course, when implementing the embodiments of the present disclosure, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0138] Those skilled in the art will appreciate that one or more embodiments of the present disclosure may be provided as a method, system, or computer program product. Therefore, one or more embodiments of the present disclosure may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Furthermore, one or more embodiments of the present disclosure may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0139] The present disclosure is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present disclosure. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0140] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device that implements the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0141] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0142] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.

[0143] One or more embodiments of the present disclosure may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform specific tasks or implement specific abstract data types. One or more embodiments of the present disclosure may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communications network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.

[0144] The various embodiments of this disclosure are described in a progressive manner. Similar portions between the various embodiments can be referenced to each other. Each embodiment focuses on the differences between the other embodiments. In particular, the system embodiments are generally similar to the method embodiments, so their description is relatively simple. For relevant portions, refer to the description of the method embodiments.

[0145] The foregoing is merely an embodiment of the present disclosure and is not intended to limit the present disclosure. Various modifications and variations are possible for those skilled in the art. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present disclosure are intended to be included within the scope of the claims of the present disclosure.

Claims

1. A data processing method, comprising: determining, based on at least one data transmission status indicator of the data transmitting end, whether a data transmission bit rate of the data transmitting end matches a data transmission bandwidth of the data transmitting end; Based on the judgment result, the smooth sending module in the data sending end is controlled to start or stop working; after starting working, the smooth sending module enables the data sending end to send data to the data receiving end based on a data sending code rate that matches the data sending bandwidth of the data sending end; after stopping working, the smooth sending module enables the data sending end to send data to the data receiving end based on the data generation rate of the data sending end.

2. The method according to claim 1, wherein The determining, based on the data transmission status indicator, whether the data transmission bit rate of the data transmitting end matches the data transmission bandwidth of the data transmitting end includes: detecting whether the data transmission status indicator meets a corresponding indicator requirement; the indicator requirement is used to indicate that the data transmission bit rate does not match the data transmission bandwidth; According to the detection result, it is determined whether the data transmission code rate matches the data transmission bandwidth.

3. The method according to claim 2, wherein: The determining, based on the detection result, whether the data transmission bit rate matches the data transmission bandwidth includes: Adjusting the historical value corresponding to the data transmission status indicator according to the detection result; the historical value is determined based on whether the data transmission status indicator obtained historically meets the corresponding indicator requirement; Whether the data transmission bit rate matches the data transmission bandwidth is determined according to the adjusted historical value corresponding to the data transmission status indicator.

4. The method according to claim 3, wherein: The adjusting, according to the detection result, the historical value corresponding to the data sending status indicator includes: If it is determined that the data sending status indicator meets the corresponding indicator requirement, the historical value corresponding to the data sending status indicator is increased by a first threshold; If it is determined that the data sending status indicator does not meet the corresponding indicator requirement, the historical value corresponding to the data sending status indicator is reduced by a second threshold.

5. The method according to claim 3, wherein The data transmission status indicator includes a first transmission status indicator and a second transmission status indicator; and judging whether the data transmission bit rate matches the data transmission bandwidth according to the adjusted historical value corresponding to the data transmission status indicator includes: If the adjusted historical value corresponding to any one of the first sending status indicators reaches a third threshold, and / or the adjusted historical value corresponding to each of the second sending status indicators reaches a corresponding fourth threshold, it is determined that the data sending bit rate does not match the data sending bandwidth; otherwise, it is determined that the data sending bit rate matches the data sending bandwidth.

6. The method according to claim 1, wherein The step of controlling the smooth transmission module in the data transmitting end to start or stop working according to the judgment result includes: If it is determined that the data transmission code rate does not match the data transmission bandwidth, controlling the smooth transmission module to start working; If it is determined that the data transmission bit rate matches the data transmission bandwidth, a time duration from a specific historical moment to the current moment is obtained, and according to the time duration, the smooth transmission module is controlled to start or stop working; wherein the specific historical moment is the moment when the data transmitting end last determined that the data transmission bit rate of the data transmitting end and the data transmission bandwidth of the data transmitting end switched from mismatching to matching.

7. The method according to claim 6, wherein: The controlling the smooth sending module to start or stop working according to the duration includes: If the duration is greater than the duration threshold, the smooth sending module is controlled to stop working; otherwise, the smooth sending module is controlled to start working.

8. The method according to claim 6 or 7, wherein: The controlling the smooth sending module to start working includes: Sending a start-up signal to the smooth transmission module; The start working signal is used to control the smooth transmission module to transmit data based on a data transmission code rate that matches the data transmission bandwidth of the data transmitting end.

9. The method according to claim 7, wherein: The controlling the smooth sending module to stop working includes: Sending a stop working signal to the smooth sending module; The stop working signal controls the smooth sending module to send the buffered data of the smooth sending module based on the data sending code rate matching the data sending bandwidth of the data sending end, and stops working after the buffered data is sent.

10. A data processing device comprising: a judgment module, configured to judge whether a data transmission code rate of the data transmitting end matches a data transmission bandwidth of the data transmitting end according to at least one data transmission status indicator of the data transmitting end; a control module configured to control a smooth transmission module in the data transmitting end to start or stop working according to a judgment result; after starting working, the smooth transmission module causes the data transmitting end to send data to the data receiving end based on a data transmission code rate that matches the data transmission bandwidth of the data transmitting end; and after stopping working, the smooth transmission module causes the data transmitting end to send data to the data receiving end based on a data generation rate of the data transmitting end.

11. An electronic device comprising: processor; as well as, A memory configured to store computer-executable instructions, which, when executed by the processor, cause the processor to implement the method according to any one of claims 1 to 9.

12. A computer-readable storage medium for storing computer-executable instructions, wherein when the computer-executable instructions are executed by a processor, the processor is caused to implement the method according to any one of claims 1 to 9.

13. A computer program product, comprising a computer program, which, when executed by a processor, causes the processor to implement the method according to any one of claims 1 to 9.

14. A computer program, comprising program codes, which, when executed by a processor, enable the processor to implement the method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Bandwidth determination method and device and storage medium

    CN109995609A

  • Device for monitoring network state in real-time video conference

    CN116132417A

  • Live broadcast code rate control method and device, electronic equipment and storage medium

    CN116886949A

  • Data processing method and device and related product

    CN118138541A

  • Resource allocation in multi-stream IP network for optimized quality of service

    US20020010938A1