CN115103235B - Data transmission method, device, equipment and medium - Google Patents

Data transmission method, device, equipment and medium Download PDF

Info

Publication number
CN115103235B
CN115103235B CN202210706735.0A CN202210706735A CN115103235B CN 115103235 B CN115103235 B CN 115103235B CN 202210706735 A CN202210706735 A CN 202210706735A CN 115103235 B CN115103235 B CN 115103235B
Authority
CN
China
Prior art keywords
upper limit
factor
determining
data transmission
network bandwidth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210706735.0A
Other languages
Chinese (zh)
Other versions
CN115103235A (en
Inventor
顾冬珏
杨潇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Migu Cultural Technology Co Ltd
China Mobile Communications Group Co Ltd
MIGU Interactive Entertainment Co Ltd
Original Assignee
Migu Cultural Technology Co Ltd
China Mobile Communications Group Co Ltd
MIGU Interactive Entertainment Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Migu Cultural Technology Co Ltd, China Mobile Communications Group Co Ltd, MIGU Interactive Entertainment Co Ltd filed Critical Migu Cultural Technology Co Ltd
Priority to CN202210706735.0A priority Critical patent/CN115103235B/en
Publication of CN115103235A publication Critical patent/CN115103235A/en
Application granted granted Critical
Publication of CN115103235B publication Critical patent/CN115103235B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64746Control signals issued by the network directed to the server or the client
    • H04N21/64761Control signals issued by the network directed to the server or the client directed to the server
    • H04N21/64769Control signals issued by the network directed to the server or the client directed to the server for rate control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention relates to the technical field of multimedia transmission and discloses a data transmission method, a device, equipment and a medium. The invention obtains the network bandwidth and the video code rate, and determines the corresponding speed doubling factor according to the network bandwidth and the video code rate; when the speed multiplication factor is larger than a first preset value, determining a corresponding pre-use bandwidth according to the network bandwidth and the upper limit factor; when the pre-use bandwidth is not less than the video code rate, calculating the adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate; therefore, the data transmission rate is adaptively adjusted, and the sending time delay is effectively reduced.

Description

Data transmission method, device, equipment and medium
Technical Field
The present invention relates to the field of multimedia transmission technologies, and in particular, to a data transmission method, apparatus, device, and medium.
Background
The audio and video data transmission is applied to the fields of games, video conferences, real-time live broadcasting and the like, and links such as acquisition, buffering and network transmission are needed from real-time acquisition of the audio and video data to a playing end of the audio and video data. Therefore, the real-time performance of audio and video transmission is always a problem to be solved.
At present, the smooth sending method mainly decides the current communication code rate according to the current network condition, then calculates the average sending rate of the video packet according to the communication code rate, and sends data according to the calculated average sending rate, thereby avoiding the impact of the instant on the network.
However, the existing smooth transmission method has the following drawbacks: the data packets are evenly transmitted in unit time, and cannot be well adapted to the low-delay transmission scene.
Disclosure of Invention
The invention mainly aims to provide a data transmission method, a device, equipment and a medium, which aim to effectively reduce the transmission delay through self-adaptive adjustment of the data transmission rate.
In order to achieve the above object, the present invention provides a data transmission method, including the steps of:
acquiring network bandwidth and video code rate, and determining a speed factor;
when the speed multiplication factor is larger than a first preset value, determining a pre-use bandwidth based on the network bandwidth and an upper limit factor;
and when the pre-use bandwidth is not smaller than the video code rate, calculating an adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate.
Preferably, before the step of determining the pre-use bandwidth based on the network bandwidth and the upper limit factor, the data transmission method further includes:
acquiring an initial upper limit factor and an increment coefficient;
and determining an upper limit factor according to the initial upper limit factor and the increment coefficient.
Preferably, the step of determining the upper limit factor from the initial upper limit factor and the increment factor includes:
if the upper limit factor is determined for the first time, determining the initial upper limit factor as an upper limit factor;
if the upper limit factor is not determined for the first time, acquiring the network bandwidth of the previous calculation period, and judging whether the network bandwidth is smaller than the network bandwidth of the previous calculation period; and if the network bandwidth is not smaller than the network bandwidth of the previous calculation period, taking the sum of the initial upper limit factor and the increment coefficient as an upper limit factor, and updating the upper limit factor to a second preset value when the upper limit factor is not smaller than the second preset value.
Preferably, after the step of determining whether the network bandwidth is smaller than the network bandwidth of the previous calculation period, the data transmission method further includes:
and if the network bandwidth is smaller than the network bandwidth of the previous calculation period, taking the difference between the initial upper limit factor and the increment coefficient as the upper limit factor, and updating the upper limit factor into the increment coefficient when the upper limit factor is not larger than the third preset value.
Preferably, the step of determining the pre-use bandwidth based on the network bandwidth and an upper limit factor comprises:
and determining a pre-use bandwidth according to the product of the network bandwidth and the upper limit factor.
Preferably, the step of calculating the adjusted transmission rate includes:
determining a pre-adjustment transmission rate according to the video code rate and the speed doubling factor;
the smaller of the pre-adjusted transmission rate and the pre-use bandwidth is determined as the adjusted transmission rate.
Preferably, the step of determining a pre-adjusted transmission rate according to the video code rate and the multiple speed factor includes:
and determining a pre-adjustment transmission rate according to the product of the video code rate and the speed doubling factor.
In addition, to achieve the above object, the present invention also provides a data transmission apparatus including:
the acquisition module is used for acquiring network bandwidth and video code rate and determining a speed doubling factor;
the determining module is used for determining a pre-use bandwidth based on the network bandwidth and an upper limit factor when the multiple factor is larger than a first preset value;
and the transmission module is used for calculating the adjusted transmission rate when the pre-use bandwidth is not smaller than the video code rate and transmitting data by adopting the adjusted transmission rate.
In addition, to achieve the above object, the present invention also provides an apparatus, which is a data transmission apparatus including: the data transmission system comprises a memory, a processor and a data transmission program stored in the memory and capable of running on the processor, wherein the data transmission program realizes the steps of the data transmission method when being executed by the processor.
In addition, in order to achieve the above object, the present invention also provides a medium which is a computer-readable storage medium having stored thereon a data transmission program which, when executed by a processor, implements the steps of the data transmission method as described above.
The invention provides a data transmission method, a device, equipment and a medium; the data transmission method comprises the following steps: acquiring network bandwidth and video code rate, and determining a speed factor; when the speed multiplication factor is larger than a first preset value, determining a pre-use bandwidth based on the network bandwidth and an upper limit factor; and when the pre-use bandwidth is not smaller than the video code rate, calculating an adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate. The invention obtains the network bandwidth and the video code rate, and determines the corresponding speed doubling factor according to the network bandwidth and the video code rate; when the speed multiplication factor is larger than a first preset value, determining a corresponding pre-use bandwidth according to the network bandwidth and a preset upper limit factor; when the pre-use bandwidth is not less than the video code rate, calculating the adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate; therefore, the data transmission rate is adaptively adjusted, and the sending time delay is effectively reduced.
Drawings
FIG. 1 is a schematic diagram of a device architecture of a hardware operating environment according to an embodiment of the present invention;
fig. 2 is a flow chart of a first embodiment of the data transmission method of the present invention;
fig. 3 is a schematic diagram showing the effect of the actual transmission rate without adaptation in the first embodiment of the data transmission method according to the present invention;
fig. 4 is a schematic diagram showing the effect of the actual transmission rate in the case after adaptation according to the first embodiment of the data transmission method of the present invention;
fig. 5 is a flowchart of a second embodiment of the data transmission method of the present invention;
fig. 6 is a flowchart of a third embodiment of a data transmission method according to the present invention;
fig. 7 is a schematic functional block diagram of a first embodiment of the data transmission device of the present invention.
The achievement of the objects, functional features and advantages of the present invention will be further described with reference to the accompanying drawings, in conjunction with the embodiments.
Detailed Description
It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
Referring to fig. 1, fig. 1 is a schematic device structure of a hardware running environment according to an embodiment of the present invention.
The device of the embodiment of the invention can be a mobile terminal or a server device.
As shown in fig. 1, the apparatus may include: a processor 1001, such as a CPU, a network interface 1004, a user interface 1003, a memory 1005, a communication bus 1002. Wherein the communication bus 1002 is used to enable connected communication between these components. The user interface 1003 may include a Display, an input unit such as a Keyboard (Keyboard), and the optional user interface 1003 may further include a standard wired interface, a wireless interface. The network interface 1004 may optionally include a standard wired interface, a wireless interface (e.g., WI-FI interface). The memory 1005 may be a high-speed RAM memory or a stable memory (non-volatile memory), such as a disk memory. The memory 1005 may also optionally be a storage device separate from the processor 1001 described above.
It will be appreciated by those skilled in the art that the device structure shown in fig. 1 is not limiting of the device and may include more or fewer components than shown, or may combine certain components, or a different arrangement of components.
As shown in fig. 1, an operating system, a network communication module, a user interface module, and a data transmission program may be included in the memory 1005, which is a type of computer storage medium.
The operating system is a program for managing and controlling the data transmission equipment and the software resources, and supports the operation of a network communication module, a user interface module, a data transmission program and other programs or software; the network communication module is used to manage and control the network interface 1002; the user interface module is used to manage and control the user interface 1003.
In the data transmission apparatus shown in fig. 1, the data transmission apparatus calls a data transmission program stored in a memory 1005 through a processor 1001 and performs operations in the respective embodiments of the data transmission method described below.
Based on the above hardware structure, the embodiment of the data transmission method of the invention is provided.
Referring to fig. 2, fig. 2 is a flowchart of a first embodiment of a data transmission method according to the present invention, where the data transmission method includes:
step S10, obtaining network bandwidth and video code rate, and determining a speed multiplication factor;
step S20, when the speed multiplication factor is larger than a first preset value, determining a pre-use bandwidth based on the network bandwidth and an upper limit factor;
and step S30, when the pre-use bandwidth is not smaller than the video code rate, calculating an adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate.
According to the embodiment, the network bandwidth and the video code rate are obtained, and the corresponding speed doubling factor is determined according to the network bandwidth and the video code rate; when the speed multiplication factor is larger than a first preset value, determining a corresponding pre-use bandwidth according to the network bandwidth and a preset upper limit factor; when the pre-use bandwidth is not less than the video code rate, calculating the adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate; therefore, the data transmission rate is adaptively adjusted, and the sending time delay is effectively reduced.
The following will explain each step in detail:
and step S10, acquiring network bandwidth and video code rate, and determining a speed doubling factor.
In the embodiment, the data transmission method of the invention adaptively adjusts the actual transmission rate of the data by combining the network bandwidth and the video code rate in each calculation period; the video frame transmission rate can be used faster, thereby effectively reducing the transmission delay.
The network bandwidth and the video code rate are acquired from different channels, namely the network bandwidth and the video code rate can be acquired through mobile terminals of different users, and the network bandwidth and the video code rate forwarded by mobile terminals of other users can be received; the channel for obtaining the network bandwidth and the video code rate is not limited in this embodiment. Wherein the data comprises audio data, or video data, or audio-video data.
Where network bandwidth refers to the amount of data that can be transmitted per unit time (typically 1 second).
The video rate is the number of bits of data transmitted per unit time during data transmission, and is typically used in kbps, i.e., kilobits per second. A popular understanding is the sampling rate, which is the greater the unit time, the higher the accuracy and the closer the processed file is to the original file. It should be noted that: 1. the code rate is proportional to the quality, but the file volume is proportional to the code rate; 2. the code rate exceeds a certain value, and has no great influence on the quality of the image.
And determining a corresponding speed-doubling factor according to the acquired network bandwidth and video code rate, wherein the speed-doubling factor has a calculation formula as follows:
speedFactor=curBandWidth÷curBitRate
wherein, speed factor is a speed factor, curBoundWidth is network bandwidth, curBitRate is video code rate.
For example, if the network bandwidth curBoundWidth is 10Mbps, the video code rate curBitRate is 5Mbps, and the speed factor is 2; that is, the data can be sent at the speed of twice video code rate at most, if the data is sent too fast, network congestion, packet loss and other bad conditions can be caused, and if the data is sent too slow, bandwidth is wasted and time delay is increased.
And step S20, when the speed doubling factor is larger than a first preset value, determining a preset bandwidth based on the network bandwidth and an upper limit factor.
In this embodiment, after the speed factor is calculated, it is detected whether the speed factor is greater than a first preset value, where the first preset value is preferably 1. When the speed multiplication factor is greater than 1, determining a pre-use bandwidth according to the network bandwidth curBoundWidth and the upper limit factor superBoundFactor; the pre-used bandwidth is a bandwidth trend predicted value obtained by predicting the network bandwidth according to the current network state and the current network fluctuation degree; when the fluctuation of the network bandwidth is large, a large upper limit factor is selected so as to quickly adapt to the change of the network; when the network bandwidth changes smoothly, a smaller upper limit factor is selected to maintain the smoothness of the network.
The upper bound factor is the maximum percentage of the peak value of the code stream exceeding the video code rate curBitRate allowed in network transmission. If the upper limit factor is 10%, that is, the peak value of the code stream in network transmission cannot exceed 10% of the video code rate curBitRate at maximum, and if the video code rate curBitRate is 1Mbps, the network transmission rate cannot exceed 1.1Mpbs at maximum under the requirement of the upper limit factor. The value range of the upper bound factor is preferably more than 0 and less than 1.
Further, in an embodiment, based on the network bandwidth and the upper limit factor, determining the pre-use bandwidth may be implemented in the following manner:
and determining a pre-use bandwidth according to the product of the network bandwidth and the upper limit factor.
In this embodiment, according to the network bandwidth curBoundWidth and the upper limit factor upperBoundFactor, the corresponding pre-use bandwidth is determined, and the calculation formula of the pre-use bandwidth is as follows:
preBoundWidth=curBoundWidth×upperBoundFactor
wherein preBoundWidth is a pre-used bandwidth, curBoundWidth is a network bandwidth, and upper BoundFactor is an upper limit factor.
And step S30, when the pre-use bandwidth is not smaller than the video code rate, calculating an adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate.
In an embodiment, after the pre-bandwidth is calculated, at the same time, it is detected whether the value of the pre-bandwidth is smaller than the video code rate curBitRate. When the value of the pre-use bandwidth preBoundWidth is not smaller than the video code rate curBitRate, determining a pre-adjustment transmission rate preAdjust speed according to the video code rate curBitRate and a speed factor; further, an adjusted transmission rate is calculated based on the pre-adjusted transmission rate preAdjustedSpeed and the pre-used bandwidth preBoundWidth, and data is transmitted using the adjusted transmission rate.
Specifically, by comparing the preAdjustedSpeed and the pre-used bandwidth preBoundWidth, the smaller of the two values of the preAdjustedSpeed and the pre-used bandwidth preBoundWidth is taken as the adjusted transmission rate.
And determining the smaller value as a corresponding adjusted transmission rate, and transmitting data according to the adjusted transmission rate, thereby preventing the actual transmission rate from being too fast and causing the network to be rapidly deteriorated.
Referring to fig. 3 and 4, fig. 3 is a schematic diagram showing the effect of the actual transmission rate without adaptation; fig. 4 is a schematic diagram showing the effect of the adjusted transmission rate in the case of self-adaptation, and by self-adapting the transmission rate in combination with the network bandwidth and the video code rate, the video frame transmission rate can be faster in most cases, so as to effectively reduce the transmission delay.
After transmitting the data at the adjusted transmission rate and after a calculation period, returning to the step of: acquiring network bandwidth and video code rate, and determining a speed factor; then executing the next step; thereby improving the efficiency of data transmission.
The computing period is used to adjust the period of the network sending rate of the data, the fineness of the computing period has an important effect on the smoothing effect of the network sending rate of the data, if the computing period is too small, the computing period may cause oscillation, and if the computing period is too large, the computing period may not have a smoothing effect. The calculation period is a preset fixed value, and the unit is ms; for example, taking the value of calculation period to be 1000ms; the actual calculation period needs to be set according to the actual situation.
According to the embodiment, the network bandwidth and the video code rate are obtained, and the corresponding speed doubling factor is determined according to the network bandwidth and the video code rate; when the speed multiplication factor is larger than a first preset value, determining a corresponding pre-use bandwidth according to the network bandwidth and the upper limit factor; when the pre-use bandwidth is not smaller than the video code rate, calculating the adjusted transmission rate; transmitting data by adopting the adjusted transmission rate; therefore, the data transmission rate is adaptively adjusted, and the sending time delay is effectively reduced.
Further, based on the first embodiment of the data transmission method of the present invention, a second embodiment of the data transmission method of the present invention is proposed.
The second embodiment of the data transmission method is different from the first embodiment of the data transmission method in that the present embodiment is for step S20, and before the step of determining the pre-use bandwidth based on the network bandwidth and the upper limit factor, referring to fig. 5, the data transmission method further includes:
step C10, acquiring an initial upper limit factor and an increment coefficient;
and step C20, determining an upper limit factor according to the initial upper limit factor and the increment coefficient.
In this embodiment, the initial upper limit factor and the increment coefficient are obtained; determining a corresponding upper limit factor according to the initial upper limit factor and the increment coefficient; thereby obtaining a better actual transmission rate through the self-adaptive adjustment of the upper limit factor.
The following will explain each step in detail:
and step C10, acquiring an initial upper limit factor and an increment coefficient.
In this embodiment, the initial upper limit factor and the increment coefficient incognigcoeffient are acquired from different channels; the present embodiment does not limit the channel for acquiring the initial upper limit factor and the increment coefficient increment.
Wherein, the value of the initial upper limit factor is preferably 0.8, and when the upper limit factor is determined for the first time, the value of the initial upper limit factor is assigned to the upper limit factor; that is, the upper bound factor upperBoundFactor is the initial upper bound factor when calculated for the first time, upperboundfactor=0.8.
The increment coefficient incoefcient is an empirical value, the increment coefficient incoefcient has a value range of 0< incoefcient, and in this embodiment, the increment coefficient incoefcient has a value of 0.1; the actual increment coefficient incoasingcoeffecient needs to be set according to the actual situation.
And step C20, determining an upper limit factor according to the initial upper limit factor and the increment coefficient.
In this embodiment, when it is detected that the speed factor is greater than a first preset value, where the first preset value is preferably 1; thus, the network bandwidth curBoundWidth is determined to be smaller than the video code rate, which means that the encoder needs to reduce the video code rate and cannot transmit at a speed exceeding the network bandwidth, otherwise network congestion is caused.
When the speed factor is greater than the first preset value, further, determining a corresponding upper bound factor according to the initial upper bound factor and the increment coefficient.
Further, step C20 specifically includes:
and D10, if the upper limit factor is determined for the first time, determining the initial upper limit factor as the upper limit factor.
In this embodiment, when the speed factor is greater than a first preset value, where the first preset value is preferably 1; it is necessary to further check whether the upper bound factor is determined for the first time. The upper limit factor upperBoundFactor is the maximum percentage of the peak value of the code stream exceeding the video code rate curBitRate in network transmission; the upper bound factor preferably has a value in the range of greater than 0 and less than 1.
When the upper bound factor is determined for the first time, the value of the initial upper bound factor is assigned to the upper bound factor. Wherein, the value of the initial upper limit factor is preferably 0.8, and the upper limit factor upperBoundFactor is 0.8.
Step D20, if the upper limit factor is not determined for the first time, acquiring the network bandwidth of the previous calculation period, and judging whether the network bandwidth is smaller than the network bandwidth of the previous calculation period; and if the network bandwidth is not smaller than the network bandwidth of the previous calculation period, taking the sum of the initial upper limit factor and the increment coefficient as an upper limit factor, and updating the upper limit factor into a second preset value when the upper limit factor is not smaller than the second preset value.
In this embodiment, when the upper bound factor uppersoundfactor is not determined for the first time, it is necessary to acquire the network bandwidth of the previous calculation period, and further determine the upper bound factor uppersoundfactor by detecting the network bandwidth and the network bandwidth size of the previous calculation period, and further by the initial upper bound factor and the increment coefficient incrimination coefficient.
The bandwidth obtained through bandwidth estimation is often not particularly accurate, and the conditions such as network bandwidth change in many cases, and when the transmission rate is too fast, the calculated bandwidth is reduced sharply, so that the upper bound factor upperBoundFactor is set to reserve some space for the network bandwidth to cope with the above conditions, and a better actual transmission rate needs to be obtained according to the adaptive adjustment of the upper bound factor upperBoundFactor.
If the upper limit factor upperBoundFactor is not determined for the first time and the network bandwidth curBoundWidth is detected to be not smaller than the last calculation period network bandwidth lastBoundWidth, the upper limit factor upperBoundFactor is the sum of an initial upper limit factor and an increment coefficient incogningCoefficient, and the upper limit factor upperBoundFactor is updated to be a second preset value when the upper limit factor upperBoundFactor is not smaller than the second preset value; wherein the second preset value is preferably 1.
That is, when the calculated upper bound factor is not less than 1, the value of the second preset value is assigned to the upper bound factor, and the updated upper bound factor is 1.
Further, in an embodiment, after step D20, the data transmission method further includes:
and E10, if the network bandwidth is smaller than the network bandwidth of the previous calculation period, taking the difference between the initial upper limit factor and the increment coefficient as an upper limit factor, and updating the upper limit factor into the increment coefficient when the upper limit factor is not larger than a third preset value.
In this embodiment, if the upper bound factor is determined for the non-first time and it is detected that the network bandwidth curBoundWidth is smaller than the network bandwidth lastBoundWidth of the previous calculation period, the upper bound factor is the difference between the initial upper bound factor and the increment coefficient incognigcoeffcient.
After the upper bound factor is calculated, detecting whether the upper bound factor is smaller than or equal to a third preset value, wherein the third preset value is preferably 0.
When the calculated upper bound factor is smaller than or equal to a third preset value; that is, when the upper bound factor is less than or equal to 0, the value of the increment coefficient upsilonαoundfactor is assigned to the upper bound factor, wherein the value of the increment coefficient upsilonβoundfactor is preferably 0.1, that is, the updated value of the upper bound factor upsperboundactor is 0.1.
In this embodiment, the initial upper limit factor and the increment coefficient are obtained; determining a corresponding upper limit factor according to the initial upper limit factor and the increment coefficient; thereby obtaining a better actual transmission rate through the self-adaptive adjustment of the upper limit factor.
Further, based on the first and second embodiments of the data transmission method of the present invention, a third embodiment of the data transmission method of the present invention is provided.
The difference between the third embodiment of the data transmission method and the first and second embodiments of the data transmission method is that in this embodiment, the refinement of the adjusted transmission rate is calculated in step S30, and referring to fig. 6, step S30 specifically includes:
step S31, determining a pre-adjustment transmission rate according to the video code rate and the speed doubling factor;
and step S32, determining the smaller value of the pre-adjusted transmission rate and the pre-use bandwidth as the adjusted transmission rate.
When the pre-use bandwidth is larger than or equal to the video code rate, the pre-adjustment transmission rate is determined according to the video code rate and the speed doubling factor; and calculating the adjusted transmission rate according to the pre-adjusted transmission rate and the pre-used bandwidth, so that the real-time performance of the actual transmission rate is ensured.
The following will explain each step in detail:
and S31, determining a pre-adjustment transmission rate according to the video code rate and the speed doubling factor.
In this embodiment, after the pre-bandwidth is calculated, at the same time, it is detected whether the value of the pre-bandwidth is smaller than the video code rate curBitRate.
When the pre-use bandwidth preBoundWidth is larger than or equal to the video code rate curBitRate, the pre-adjustment transmission rate is determined according to the video code rate curBitRate and the speed factor.
Further, in an embodiment, determining the pre-adjusted transmission rate according to the video bitrate and the speed multiplier may be implemented in the following manner:
and determining a pre-adjustment transmission rate according to the product of the video code rate and the speed doubling factor.
In this embodiment, when the pre-bandwidth preBoundWidth is greater than or equal to the video code rate curBitRate, the pre-adjustment transmission rate is determined according to the product of the video code rate curBitRate and the speed factor, and the calculation formula is as follows:
preAdjustedSpeed=curBitRate*speedFactor
wherein preAdjustedSpeed is a pre-adjusted transmission rate, curBitRate is a video rate, and speed factor is a speed factor.
And determining a pre-adjustment transmission rate according to the pre-use bandwidth and the video code rate.
And step S32, determining the smaller value of the pre-adjusted transmission rate and the pre-use bandwidth as the adjusted transmission rate.
In this embodiment, the adjusted transmission rate is determined according to the pre-adjusted transmission rate preAdjustedSpeed and the pre-used bandwidth preBoundWidth; specifically, by comparing the preAdjustedSpeed and the pre-used bandwidth preBoundWidth, the smaller value of the two values of the preAdjustedSpeed and the pre-used bandwidth preBoundWidth is taken. And determining the smaller value as a corresponding adjusted transmission rate, and transmitting data according to the adjusted transmission rate, thereby preventing the actual transmission rate from being too fast and causing the network to be rapidly deteriorated.
Specifically, when the preAdjustedSpeed is less than or equal to the pre-used bandwidth prebouundwidth, the preAdjustedSpeed is determined as the adjusted transmission rate, and data is transmitted through the adjusted transmission rate.
When the preAdjustedSpeed is greater than the pre-used bandwidth preBoundWidth, the pre-used bandwidth preBoundWidth is determined as the adjusted transmission rate, and data is transmitted through the adjusted transmission rate.
In this embodiment, when the pre-use bandwidth is greater than or equal to the video code rate, determining a pre-adjustment transmission rate according to the video code rate and the speed doubling factor; and calculating the adjusted transmission rate according to the pre-adjusted transmission rate and the pre-used bandwidth, so that the real-time performance of the actual transmission rate is ensured.
The invention also provides a data transmission device. Referring to fig. 7, the data transmission apparatus of the present invention includes:
an acquisition module 10, configured to acquire a network bandwidth and a video code rate, and determine a speed multiplier;
a determining module 20, configured to determine a pre-use bandwidth based on the network bandwidth and an upper limit factor when the speed multiplier is greater than a first preset value;
and the transmission module 30 is configured to calculate an adjusted transmission rate when the pre-use bandwidth is not less than the video code rate, and transmit data using the adjusted transmission rate.
The present invention also provides a medium, which is a computer-readable storage medium having stored thereon a data transmission program that, when executed by a processor, implements the steps of the data transmission method as described above.
The method implemented when the data transmission program running on the processor is executed may refer to various embodiments of the data transmission method of the present invention, which are not described herein again.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The foregoing embodiment numbers of the present invention are merely for the purpose of description, and do not represent the advantages or disadvantages of the embodiments.
From the above description of the embodiments, it will be clear to those skilled in the art that the above-described embodiment method may be implemented by means of software plus a necessary general hardware platform, but of course may also be implemented by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (e.g. ROM/RAM, magnetic disk, optical disk) as described above, comprising instructions for causing a terminal device (which may be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to perform the method according to the embodiments of the present invention.
The foregoing description is only of the preferred embodiments of the present invention, and is not intended to limit the scope of the invention, but rather is intended to cover any equivalents of the structures or equivalent processes disclosed herein, or any application, directly or indirectly, in the field of other related technology.

Claims (9)

1. A data transmission method, characterized in that the data transmission method comprises the steps of:
acquiring network bandwidth and video code rate, and determining a speed factor;
when the speed multiplication factor is larger than a first preset value, determining a pre-use bandwidth based on the network bandwidth and an upper limit factor;
when the pre-use bandwidth is not smaller than the video code rate, calculating an adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate;
before the step of determining the pre-use bandwidth based on the network bandwidth and the upper limit factor, the data transmission method further includes:
acquiring an initial upper limit factor and an increment coefficient;
and determining an upper limit factor according to the initial upper limit factor and the increment coefficient.
2. The data transmission method of claim 1, wherein the step of determining an upper limit factor from the initial upper limit factor and the increment factor comprises:
if the upper limit factor is determined for the first time, determining the initial upper limit factor as an upper limit factor;
if the upper limit factor is not determined for the first time, acquiring the network bandwidth of the previous calculation period, and judging whether the network bandwidth is smaller than the network bandwidth of the previous calculation period; and if the network bandwidth is not smaller than the network bandwidth of the previous calculation period, taking the sum of the initial upper limit factor and the increment coefficient as an upper limit factor, and updating the upper limit factor into a second preset value when the upper limit factor is not smaller than the second preset value.
3. The data transmission method according to claim 2, wherein after the step of determining whether the network bandwidth is smaller than the last calculation cycle network bandwidth, the data transmission method further comprises:
and if the network bandwidth is smaller than the network bandwidth of the previous calculation period, taking the difference between the initial upper limit factor and the increment coefficient as an upper limit factor, and updating the upper limit factor into the increment coefficient when the upper limit factor is not larger than a third preset value.
4. The data transmission method of claim 1, wherein the step of determining the pre-use bandwidth based on the network bandwidth and an upper limit factor comprises:
and determining a pre-use bandwidth according to the product of the network bandwidth and the upper limit factor.
5. The data transmission method of claim 1, wherein the step of calculating the adjusted transmission rate comprises:
determining a pre-adjustment transmission rate according to the video code rate and the speed doubling factor;
and determining the smaller value of the preset transmission rate and the preset bandwidth as the adjusted transmission rate.
6. The data transmission method of claim 5, wherein the step of determining a pre-adjusted transmission rate based on the video code rate and the multiple speed factor comprises:
and determining a pre-adjustment transmission rate according to the product of the video code rate and the speed doubling factor.
7. A data transmission device, characterized in that the data transmission device comprises:
the acquisition module is used for acquiring network bandwidth and video code rate and determining a speed doubling factor;
the determining module is used for determining a pre-use bandwidth based on the network bandwidth and an upper limit factor when the multiple factor is larger than a first preset value;
the transmission module is used for calculating the adjusted transmission rate and transmitting data at the adjusted transmission rate when the pre-use bandwidth is not smaller than the video code rate;
wherein prior to determining the pre-use bandwidth based on the network bandwidth and an upper limit factor:
acquiring an initial upper limit factor and an increment coefficient;
and determining an upper limit factor according to the initial upper limit factor and the increment coefficient.
8. An apparatus, the apparatus being a data transmission apparatus, the data transmission apparatus comprising: memory, a processor and a data transmission program stored on the memory and executable on the processor, which when executed by the processor, implements the steps of the data transmission method according to any one of claims 1 to 6.
9. A medium which is a computer-readable storage medium, wherein the computer-readable storage medium has stored thereon a data transmission program which, when executed by a processor, implements the steps of the data transmission method according to any one of claims 1 to 6.
CN202210706735.0A 2022-06-21 2022-06-21 Data transmission method, device, equipment and medium Active CN115103235B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210706735.0A CN115103235B (en) 2022-06-21 2022-06-21 Data transmission method, device, equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210706735.0A CN115103235B (en) 2022-06-21 2022-06-21 Data transmission method, device, equipment and medium

Publications (2)

Publication Number Publication Date
CN115103235A CN115103235A (en) 2022-09-23
CN115103235B true CN115103235B (en) 2023-10-20

Family

ID=83293429

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210706735.0A Active CN115103235B (en) 2022-06-21 2022-06-21 Data transmission method, device, equipment and medium

Country Status (1)

Country Link
CN (1) CN115103235B (en)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010018573A (en) * 1999-08-20 2001-03-05 윤종용 Apparatus for compressing video according to network bandwidth
CN1655547A (en) * 2004-09-09 2005-08-17 上海川海信息科技有限公司 A speed control method in stream media transmission system
CN101222296A (en) * 2008-01-31 2008-07-16 上海交通大学 Self-adapting transmission method and system in ascending honeycomb video communication
WO2010000168A1 (en) * 2008-06-30 2010-01-07 华为技术有限公司 A method, apparatus and system for adjusting multimedia encoding rate
CN102204182A (en) * 2010-12-29 2011-09-28 华为技术有限公司 Method and apparatus for controlling congestion of data transmission
EP2369362A1 (en) * 2010-03-18 2011-09-28 Siemens Milltronics Process Instruments Inc. A receiver for a pulse-echo ranging system with digital polyphase decimation filter
CN107483401A (en) * 2017-07-07 2017-12-15 广州市百果园网络科技有限公司 A kind of multimedia data transmission method and its equipment, storage medium, server
EP3407424A1 (en) * 2017-05-23 2018-11-28 GE Aviation Systems LLC Line of sight aircraft data transfer system
WO2019080022A1 (en) * 2017-10-26 2019-05-02 天彩电子(深圳)有限公司 Method and device for network video stream transmission congestion control
EP3503501A1 (en) * 2016-08-22 2019-06-26 Shenzhen Tcl New Technology Co., Ltd Method and device for background adaptive upgrading of software
CN110401511A (en) * 2019-07-25 2019-11-01 广州市百果园信息技术有限公司 A kind of determination method, apparatus, equipment and the storage medium of transmission rate
CN111107382A (en) * 2018-10-29 2020-05-05 阿里巴巴集团控股有限公司 Data flow control method, device and system
CN112312137A (en) * 2020-10-27 2021-02-02 唐桥科技(杭州)有限公司 Video transmission method and device, electronic equipment and storage medium
CN114143271A (en) * 2021-11-30 2022-03-04 百果园技术(新加坡)有限公司 Bandwidth estimation method and device based on congestion detection
CN114640886A (en) * 2022-02-28 2022-06-17 深圳市宏电技术股份有限公司 Bandwidth-adaptive audio and video transmission method and device, computer equipment and medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080112506A1 (en) * 2006-11-13 2008-05-15 Motorola, Inc. Transmission power optimization
CN116193133A (en) * 2021-11-29 2023-05-30 上海大学 Code rate self-adaptive adjusting device and method based on wireless air interface bandwidth

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010018573A (en) * 1999-08-20 2001-03-05 윤종용 Apparatus for compressing video according to network bandwidth
CN1655547A (en) * 2004-09-09 2005-08-17 上海川海信息科技有限公司 A speed control method in stream media transmission system
CN101222296A (en) * 2008-01-31 2008-07-16 上海交通大学 Self-adapting transmission method and system in ascending honeycomb video communication
WO2010000168A1 (en) * 2008-06-30 2010-01-07 华为技术有限公司 A method, apparatus and system for adjusting multimedia encoding rate
EP2369362A1 (en) * 2010-03-18 2011-09-28 Siemens Milltronics Process Instruments Inc. A receiver for a pulse-echo ranging system with digital polyphase decimation filter
CN102204182A (en) * 2010-12-29 2011-09-28 华为技术有限公司 Method and apparatus for controlling congestion of data transmission
EP3503501A1 (en) * 2016-08-22 2019-06-26 Shenzhen Tcl New Technology Co., Ltd Method and device for background adaptive upgrading of software
EP3407424A1 (en) * 2017-05-23 2018-11-28 GE Aviation Systems LLC Line of sight aircraft data transfer system
CN107483401A (en) * 2017-07-07 2017-12-15 广州市百果园网络科技有限公司 A kind of multimedia data transmission method and its equipment, storage medium, server
WO2019080022A1 (en) * 2017-10-26 2019-05-02 天彩电子(深圳)有限公司 Method and device for network video stream transmission congestion control
CN111107382A (en) * 2018-10-29 2020-05-05 阿里巴巴集团控股有限公司 Data flow control method, device and system
CN110401511A (en) * 2019-07-25 2019-11-01 广州市百果园信息技术有限公司 A kind of determination method, apparatus, equipment and the storage medium of transmission rate
CN112312137A (en) * 2020-10-27 2021-02-02 唐桥科技(杭州)有限公司 Video transmission method and device, electronic equipment and storage medium
CN114143271A (en) * 2021-11-30 2022-03-04 百果园技术(新加坡)有限公司 Bandwidth estimation method and device based on congestion detection
CN114640886A (en) * 2022-02-28 2022-06-17 深圳市宏电技术股份有限公司 Bandwidth-adaptive audio and video transmission method and device, computer equipment and medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
3G视频传输中码率自适应调整算法;林志勇;东南大学学报;全文 *
HTTP rate adaptive algorithm with high bandwidth utilization;M. Sajid Mushtaq;10th International Conference on Network and Service Management (CNSM) and Workshop;全文 *

Also Published As

Publication number Publication date
CN115103235A (en) 2022-09-23

Similar Documents

Publication Publication Date Title
JP4819873B2 (en) Technology to control data packet transmission of variable bit rate data
US9455925B2 (en) Method, device, and system for self-adaptively adjusting data transmission rate
US9191664B2 (en) Adaptive bitrate management for streaming media over packet networks
US10178037B2 (en) Deadline driven content delivery
US8255559B2 (en) Data streaming through time-varying transport media
US8255551B2 (en) Adaptive bitrate management for streaming media over packet networks
US9112947B2 (en) Flow-rate adaptation for a connection of time-varying capacity
US8254376B2 (en) Simple adaptive jitter buffering algorithm for network nodes
US20120317308A1 (en) On-demand adaptive bitrate management for streaming media over packet networks
US8594184B2 (en) Method and apparatus for controlling video-audio data playing
WO2008110930A2 (en) Method of transmitting data in a communication system
CN113038187B (en) Method, apparatus and medium for video quality of experience fair and practical network bandwidth allocation
Mueller et al. Oscillation compensating dynamic adaptive streaming over http
CN112087627A (en) Image coding control method, device, equipment and storage medium
JP2007221318A (en) Quality management, quality management method, quality control method, quality management control system, quality management apparatus, and quality control apparatus for bidirectional video communication service
Rahman et al. SABA: Segment and buffer aware rate adaptation algorithm for streaming over HTTP
CN115103235B (en) Data transmission method, device, equipment and medium
Le et al. Seamless mobile video streaming over HTTP/2 with gradual quality transitions
US8234683B2 (en) Method and apparatus for controlling channel for providing internet protocol television service
CN114793299B (en) Streaming media transmission control method, system, equipment and medium
CN115378832B (en) Congestion detection method and device, stream media transmission system, electronic equipment and medium
CN111953978A (en) Frame rate control method, device and storage medium
KR101806510B1 (en) Method and apparatus for congention entrance control
Lusilao Zodi et al. A Unicast rate-based protocol for video streaming applications over the internet
US11805074B2 (en) Control apparatus, control method and program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant