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

Data transmission method, device, equipment and medium Download PDF

Info

Publication number
CN115103235A
CN115103235A CN202210706735.0A CN202210706735A CN115103235A CN 115103235 A CN115103235 A CN 115103235A CN 202210706735 A CN202210706735 A CN 202210706735A CN 115103235 A CN115103235 A CN 115103235A
Authority
CN
China
Prior art keywords
factor
upper limit
data transmission
determining
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.)
Granted
Application number
CN202210706735.0A
Other languages
Chinese (zh)
Other versions
CN115103235B (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

Images

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 data transmission device, data transmission equipment and a data transmission medium. The method comprises the steps of obtaining a network bandwidth and a video code rate, and determining a corresponding speed multiplying factor according to the network bandwidth and the video code rate; when the speed multiplying factor is larger than a first preset value, determining a corresponding pre-used bandwidth according to the network bandwidth and the upper limit factor; when the pre-used 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 adjusted in a self-adaptive mode, 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
Audio and video data transmission is applied to the fields of games, video conferences, real-time live broadcasting and the like, and the links of acquisition, buffering, network transmission and the like are required from the real-time acquisition of the audio and video data to the playing end of the audio and video data. Therefore, the real-time property of audio-video transmission is always a problem to be solved.
At present, the smooth sending method mainly determines 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 instantaneous impact on the network.
However, the existing smooth transmission method has the following defects: the data packets are sent evenly in unit time, which cannot adapt to the low-delay transmission scene well.
Disclosure of Invention
The invention mainly aims to provide a data transmission method, a data transmission device, data transmission equipment and a data transmission medium, and aims to effectively reduce the sending delay by adaptively adjusting 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 doubling factor;
when the speed multiplying factor is larger than a first preset value, determining a pre-used bandwidth based on the network bandwidth and an upper limit factor;
and when the pre-used bandwidth is not less than the video code rate, calculating the adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate.
Preferably, before the step of determining the reserved 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 increasing coefficient;
determining an upper bound factor based on the initial upper bound factor and the incremental factor.
Preferably, the step of determining an upper bound factor from the initial upper bound factor and the incremental factor comprises:
if the upper limit factor is determined for the first time, determining the initial upper limit factor as the upper limit factor;
if the upper limit factor is not determined for the first time, acquiring the network bandwidth of the last calculation period, and judging whether the network bandwidth is smaller than the network bandwidth of the last calculation period; and if the network bandwidth is not less than the network bandwidth in the last calculation period, taking the sum of the initial upper limit factor and the incremental coefficient as an upper limit factor, and updating the upper limit factor to a second preset value when the upper limit factor is not less than the second preset value.
Preferably, after the step of determining whether the network bandwidth is smaller than the network bandwidth in the last calculation cycle, the data transmission method further includes:
and if the network bandwidth is smaller than the network bandwidth in the last calculation period, taking the difference between the initial upper limit factor and the incremental coefficient as the upper limit factor, and updating the upper limit factor to the incremental coefficient when the upper limit factor is not larger than the third preset value.
Preferably, the step of determining a pre-used bandwidth based on the network bandwidth and the upper limit factor comprises:
and determining the pre-used bandwidth according to the product of the network bandwidth and the upper limit factor.
Preferably, the step of calculating the adjusted transmission rate comprises:
determining a pre-adjustment transmission rate according to the video code rate and the speed multiplying factor;
determining the smaller of the pre-adjusted transmission rate and the pre-used bandwidth as the adjusted transmission rate.
Preferably, the step of determining a pre-adjusted transmission rate according to the video bitrate and the double-speed factor comprises:
and determining the preset transmission rate according to the product of the video code rate and the speed factor.
In addition, to achieve the above object, the present invention further provides a data transmission device, including:
the acquisition module is used for acquiring the network bandwidth and the video code rate and determining a speed multiplication factor;
the determining module is used for determining the pre-used bandwidth based on the network bandwidth and the 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-used bandwidth is not less than the video code rate and transmitting data by adopting the adjusted transmission rate.
In addition, to achieve the above object, the present invention further provides an apparatus, where the apparatus is a data transmission apparatus, and the data transmission apparatus includes: a memory, a processor and a data transmission program stored on the memory and executable on the processor, the data transmission program when executed by the processor implementing the steps of the data transmission method as described above.
In addition, to achieve the above object, the present invention also provides a medium which is a computer readable storage medium having a data transmission program stored thereon, the data transmission program implementing the steps of the data transmission method as described above when executed by a processor.
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 multiplication factor; when the speed multiplying factor is larger than a first preset value, determining a preset bandwidth based on the network bandwidth and an upper limit factor; and when the pre-used bandwidth is not less than the video code rate, calculating the adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate. The method comprises the steps of obtaining a network bandwidth and a video code rate, and determining a corresponding speed multiplying factor according to the network bandwidth and the video code rate; when the speed multiplying factor is larger than a first preset value, determining a corresponding pre-used bandwidth according to the network bandwidth and a preset upper limit factor; when the pre-used 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 adjusted in a self-adaptive mode, and the sending time delay is effectively reduced.
Drawings
FIG. 1 is a schematic diagram of an apparatus architecture of a hardware operating environment according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating a data transmission method according to a first embodiment of the present invention;
FIG. 3 is a diagram illustrating the effect of the actual sending rate without self-adaptation according to the first embodiment of the data transmission method of the present invention;
fig. 4 is a schematic diagram illustrating an effect of an actual sending rate in a case after adaptation according to a first embodiment of the data transmission method of the present invention;
FIG. 5 is a flowchart illustrating a data transmission method according to a second embodiment of the present invention;
FIG. 6 is a flowchart illustrating a data transmission method according to a third embodiment of the present invention;
fig. 7 is a functional block diagram of a data transmission device according to a first embodiment of the present invention.
The implementation, functional features and advantages of the objects of the present invention will be further explained with reference to the accompanying drawings.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
As shown in fig. 1, fig. 1 is a schematic device structure diagram of a hardware operating 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 a communication bus 1002 is used to enable connective communication between these components. The user interface 1003 may include a Display (Display), an input unit such as a Keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface, a wireless interface. The network interface 1004 may optionally include a standard wired interface, a wireless interface (e.g., a WI-FI interface). The memory 1005 may be a high-speed RAM memory or a non-volatile memory such as a disk memory. The memory 1005 may alternatively be a storage device separate from the processor 1001 described previously.
Those skilled in the art will appreciate that the configuration of the apparatus shown in fig. 1 is not intended to be limiting and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components.
As shown in fig. 1, the memory 1005, which is a kind of computer storage medium, may include therein an operating system, a network communication module, a user interface module, and a data transmission program.
The operating system is a program for managing and controlling data transmission equipment and 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 for managing and controlling the network interface 1002; the user interface module is used to manage and control the user interface 1003.
In the data transfer apparatus shown in fig. 1, the data transfer apparatus calls a data transfer program stored in a memory 1005 by a processor 1001 and performs operations in various embodiments of the data transfer method described below.
Based on the above hardware structure, the embodiment of the data transmission method of the present invention is provided.
Referring to fig. 2, fig. 2 is a schematic flow chart of a first embodiment of a data transmission method of the present invention, where the data transmission method includes:
step S10, acquiring network bandwidth and video code rate, and determining a multiple speed factor;
step S20, when the speed multiplying factor is larger than a first preset value, determining a preset bandwidth based on the network bandwidth and an upper limit factor;
and step S30, when the pre-used bandwidth is not less than the video code rate, calculating the adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate.
In the embodiment, the network bandwidth and the video code rate are obtained, and the corresponding speed factor is determined according to the network bandwidth and the video code rate; when the speed multiplying factor is larger than a first preset value, determining a corresponding pre-used bandwidth according to the network bandwidth and a preset upper limit factor; when the pre-used 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 adjusted in a self-adaptive mode, and the sending time delay is effectively reduced.
The respective steps will be described in detail below:
and step S10, acquiring the network bandwidth and the video code rate, and determining the double speed factor.
In this embodiment, the data transmission method of the present invention adaptively adjusts the actual transmission rate of data by combining the network bandwidth and the video bit rate in each calculation period; the video frame can be transmitted at a faster rate, thereby effectively reducing the transmission delay.
Acquiring network bandwidth and video code rate from different channels, wherein the network bandwidth and the video code rate can be acquired through mobile terminals of different users, or the network bandwidth and the video code rate forwarded by mobile terminals of other users can be received; the channel for acquiring 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.
The network bandwidth refers to the amount of data that can be transmitted in a unit time (generally, 1 second).
The video code rate is the number of data bits transmitted per unit time during data transmission, and is generally expressed in kbps, i.e., kilobits per second. The popular understanding is that the sampling rate is higher, the higher the sampling rate in unit time is, the higher the precision is, and the closer the processed file is to the original file. It should be noted that: firstly, the code rate is in direct proportion to the quality, but the file volume is also in direct proportion to the code rate; and secondly, the code rate exceeds a certain value and has little influence on the quality of the image.
Determining a corresponding speed factor according to the acquired network bandwidth and the video code rate, wherein a calculation formula of the speed factor is as follows:
speedFactor=curBandWidth÷curBitRate
wherein speedFactor is the multiple speed factor, curBoundWidth is the network bandwidth, and curBitrate is the video bitrate.
If the network bandwidth curBoundWidth is 10Mbps, the video code rate curBitRATE is 5Mbps, and the speed doubling factor speedFactor is 2; that is, at most, data can be transmitted at twice the video bit rate, and if the data is transmitted too fast, severe conditions such as network congestion and packet loss can be caused, and if the data is transmitted too slowly, bandwidth is wasted, and delay is increased.
And step S20, when the speed multiplying factor is larger than a first preset value, determining the bandwidth to be used in advance based on the network bandwidth and the upper limit factor.
In this embodiment, after the speed multiplication factor speedFactor is obtained through calculation, it is detected whether the speed multiplication factor speedFactor is greater than a first preset value, where the first preset value is preferably 1. When the multiple speed factor is larger than 1, determining the pre-used bandwidth according to the network bandwidth curBoundWidth and the upper limit factor upperBoundFactor; 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 network bandwidth fluctuation 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 keep the smoothness of the network.
The upper limit factor upperbound factor is the maximum percentage of the code stream peak value exceeding the video code rate currBitRate 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 currBitRIate at maximum, if the video code rate currBitRIate is 1Mbps, the network transmission rate cannot exceed 1.1Mpbs at maximum under the requirement of the upper limit factor upperBoundFactor. The value range of the upper limit factor upperBoundFactor is preferably greater than 0 and less than 1.
Further, in an embodiment, determining the reserved bandwidth based on the network bandwidth and the upper bound factor may be implemented as follows:
and determining the pre-used bandwidth according to the product of the network bandwidth and the upper limit factor.
In this embodiment, a corresponding bandwidth to be used is determined according to a network bandwidth curBoundWidth and an upper limit factor upperBoundFactor, and a calculation formula of the bandwidth to be used is as follows:
preBoundWidth=curBoundWidth×upperBoundFactor
wherein preBoundWidth is the bandwidth to be used in advance, curBoundWidth is the network bandwidth, and upperbunFactor is the upper limit factor.
And step S30, when the pre-used bandwidth is not less than the video code rate, calculating the adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate.
In an embodiment, after the pre-used bandwidth prebound width is obtained through calculation, it is detected whether a value of the pre-used bandwidth prebound width is smaller than the video rate currbitrate. When the numerical value of the pre-used bandwidth prebaundwidth is not less than the video code rate currBitrate, determining a pre-adjusted transmission rate predjustdeed according to the video code rate currBitrate and a speed doubling factor speedFactor; further, the adjusted transmission rate is calculated according to the preadjusted transmission rate preadjusted speed and the preapplied bandwidth preBoundWidth, and the data is transmitted by adopting the adjusted transmission rate.
Specifically, the preset transmission rate preadjusted speed is compared with the preset bandwidth preBoundWidth, and the smaller value of the two values of the preset transmission rate preadjusted speed and the preset bandwidth preBoundWidth is taken as the adjusted transmission rate.
And determining the smaller value as the 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, wherein fig. 3 is a schematic diagram illustrating the effect of the actual transmission rate in the case of non-adaptation; fig. 4 is a schematic diagram illustrating an effect of the adjusted transmission rate under the adaptive condition, and the sending rate is adaptively adjusted by combining the network bandwidth and the video bitrate, so that the sending rate of the video frame can be made faster under most conditions, and the sending delay is effectively reduced.
After transmitting 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 doubling factor; then the next step is executed; thereby improving the efficiency of data transmission.
The calculation period, namely the calculation period, is used for adjusting the period of the network sending rate of the data, the fineness of the calculation period has an important influence on the smoothing effect of the network sending rate of the data, if the calculation period, namely the calculation period, is too small, oscillation may be caused, and if the calculation period, namely the calculation period, is too large, the smoothing effect may not be achieved. The calculation period calculationPeriod is a preset fixed value with the unit of ms; for example, the value of the calculation period calculationPeriod is 1000 ms; the actual calculation period calculationPeriod needs to be set according to actual conditions.
In the embodiment, the network bandwidth and the video code rate are obtained, and the corresponding speed factor is determined according to the network bandwidth and the video code rate; when the speed multiplying factor is larger than a first preset value, determining a corresponding pre-used bandwidth according to the network bandwidth and the upper limit factor; when the pre-used bandwidth is not less than the video code rate, calculating the adjusted transmission rate; transmitting data by adopting the adjusted transmission rate; therefore, the data transmission rate is adjusted in a self-adaptive mode, 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, in step S20, before the step of determining the reserved bandwidth based on the network bandwidth and the upper limit factor, referring to fig. 5, the data transmission method further includes:
step C10, obtaining an initial upper limit factor and an increasing coefficient;
and step C20, determining an upper limit factor according to the initial upper limit factor and the increment coefficient.
In the embodiment, an initial upper limit factor and an incremental coefficient are obtained; determining a corresponding upper limit factor according to the initial upper limit factor and the incremental coefficient; therefore, a better actual transmission rate is obtained through the adaptive adjustment of the upper limit factor.
The respective steps will be described in detail below:
step C10, obtain the initial ceiling factor and the incremental coefficient.
In this embodiment, the initial upper limit factor and the incremental coefficient increment factor are obtained from different channels; the present embodiment does not limit the channel for obtaining the initial upper limit factor and the incremental coefficient increment coefficient.
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 limit factor upperBoundFactor is the initial upper limit factor when first calculated, and upperBoundFactor is 0.8.
The increment coefficient incleasingcoeffient is an empirical value, the value range of the increment coefficient incleasingcoeffient is 0< increment coefficient expected <1, and the value of the increment coefficient incleasingcoeffient is preferably set to 0.1 in the embodiment; the actual incremental coefficient increment factor needs to be set according to actual conditions.
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 multiplication factor speedFactor is greater than a first preset value, the first preset value is preferably 1; therefore, it is determined that the network bandwidth curBoundWidth is 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.
And when the speed multiplier speedFactor is greater than a first preset value, further determining a corresponding upper limit factor upperBoundFactor according to the initial upper limit factor and the incremental coefficient IncreasingCoefficient.
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 multiplication factor speedFactor is greater than a first preset value, wherein the first preset value is preferably 1; it is further checked whether the upper limit factor upperBoundFactor is determined for the first time. Wherein, the upper limit factor upperbaundfactor is the maximum percentage that the peak value of the code stream in the network transmission exceeds the video code rate currBitRate; the upper limit factor upperbaundfactor preferably has a value range greater than 0 and less than 1.
When the upper limit factor upperbound factor is determined for the first time, the value of the initial upper limit factor is assigned to the upper limit factor upperbound factor. Wherein, the value of the initial upper limit factor is preferably 0.8, and the upper limit factor upperbaundfactor is 0.8.
Step D20, if the upper limit factor is not determined for the first time, obtaining the network bandwidth of the last calculation period, and judging whether the network bandwidth is smaller than the network bandwidth of the last calculation period; and if the network bandwidth is not less than the network bandwidth in the last calculation period, taking the sum of the initial upper limit factor and the incremental coefficient as an upper limit factor, and updating the upper limit factor to a second preset value when the upper limit factor is not less than the second preset value.
In this embodiment, when the upper limit factor upperbaundfactor is determined and calculated for the non-first time, the network bandwidth in the previous calculation period needs to be acquired, and the upper limit factor upperbaundfactor is further determined by detecting the network bandwidth and the size of the network bandwidth in the previous calculation period and further by the initial upper limit factor and the incremental coefficient increment factor.
The bandwidth obtained through bandwidth estimation is often not particularly accurate, the network bandwidth and other conditions vary widely, and the measured bandwidth is rapidly reduced when the transmission rate is too fast, so that some space is reserved for the network bandwidth by setting the upper limit factor upperbound factor to deal with the above conditions, and a better actual transmission rate needs to be obtained according to the adaptive adjustment of the upper limit factor upperbound factor.
If the upper limit factor upperBoundFactor is determined for the non-first time, and it is detected that the network bandwidth curBoundWidth is not smaller than the network bandwidth lastBoundWidth of the last calculation period, the upper limit factor upperBoundFactor is the sum of the initial upper limit factor and the incremental coefficient increment coefficient, and the upper limit factor upperBoundFactor is updated to 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 limit factor upperbaundfactor is not less than 1, the value of the second preset value is assigned to the upper limit factor upperbaundfactor, and the updated upper limit factor upperbaundfactor has a value of 1.
Further, in an embodiment, after the step D20, the data transmission method further includes:
step E10, if the network bandwidth is smaller than the network bandwidth in the previous calculation cycle, taking the difference between the initial upper limit factor and the incremental coefficient as an upper limit factor, and updating the upper limit factor to the incremental coefficient when the upper limit factor is not greater than a third preset value.
In this embodiment, if the upper limit factor upperbound factor is determined for the non-first time and it is detected that the network bandwidth curbourwidth is smaller than the network bandwidth lastbackwidth in the last calculation period, the upper limit factor upperbound factor is the difference between the initial upper limit factor and the incremental coefficient increasincofficent.
And after the upper limit factor upperBoundFactor is obtained through calculation, detecting whether the upper limit factor upperBoundFactor is smaller than or equal to a third preset value, wherein the third preset value is preferably 0.
When the calculated upper limit factor upperbaundfactor is less than or equal to a third preset value; that is, when the upper limit factor upperBoundFactor is less than or equal to 0, the value of the incremental coefficient increasedcoeffective is assigned to the upper limit factor upperBoundFactor, where the value of the incremental coefficient increasedcoeffective is preferably 0.1, that is, the value of the updated upper limit factor upperBoundFactor is 0.1.
In the embodiment, an initial upper limit factor and an incremental coefficient are obtained; determining a corresponding upper limit factor according to the initial upper limit factor and the incremental coefficient; therefore, a better actual transmission rate is obtained through the 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 third embodiment of the data transmission method is different from the first and second embodiments of the data transmission method in that the present embodiment is a refinement of calculating the adjusted transmission rate in step S30, and referring to fig. 6, step S30 specifically includes:
step S31, determining the pre-adjusting transmission rate according to the video code rate and the speed factor;
step S32, determining the smaller value of the pre-adjusted transmission rate and the pre-used bandwidth as the adjusted transmission rate.
In the embodiment, when the pre-used bandwidth is greater 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, thereby ensuring the real-time property of the actual transmission rate.
The respective steps will be described in detail below:
and step S31, determining the pre-adjustment transmission rate according to the video code rate and the speed factor.
In this embodiment, after the pre-used bandwidth prebaundwidth is obtained through calculation, it is detected whether the value of the pre-used bandwidth prebaundwidth is smaller than the video rate currbitrate.
And when the pre-used bandwidth prebaundwidth is greater than or equal to the video code rate currBitrate, determining the pre-adjustment transmission rate according to the video code rate currBitrate and the speed doubling factor speedFactor.
Further, in an embodiment, determining the pre-adjusted transmission rate according to the video bitrate and the double-speed factor may be implemented by:
and determining the preset transmission rate according to the product of the video code rate and the speed factor.
In this embodiment, when the pre-used bandwidth prebaundwidth is greater than or equal to the video rate currbite, the pre-adjustment transmission rate is determined according to the product of the video rate currbite and the speed multiplier speedFactor, and the calculation formula is as follows:
preAdjustedSpeed=curBitRate*speedFactor
wherein preAdjustedSpeed is the pre-adjustment transmission rate, currBitrate is the video code rate, and speedFactor is the speed multiplier.
And determining the pre-adjustment transmission rate according to the pre-used bandwidth and the video code rate.
Step S32, determining the smaller value of the pre-adjusted transmission rate and the pre-used bandwidth as the adjusted transmission rate.
In the embodiment, the adjusted transmission rate is determined according to the preadjusted transmission rate preadjusted speed and the preapplied bandwidth preBoundWidth; specifically, the smaller of the two values of the pre-adjusted transmission rate preAdjustedSpeed and the pre-used bandwidth preBoundWidth is taken by comparing the pre-adjusted transmission rate preAdjustedSpeed and the pre-used bandwidth preBoundWidth. And determining the smaller value as the 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 pre-adjusted transmission rate preAdjustedSpeed is less than or equal to the pre-used bandwidth preBoundWidth, the pre-adjusted transmission rate preAdjustedSpeed is determined as an adjusted transmission rate, and data is transmitted at the adjusted transmission rate.
And when the pre-adjusted transmission rate preadjusted speed is greater than the pre-used bandwidth preBoundWidth, determining the pre-used bandwidth preBoundWidth as the adjusted transmission rate, and transmitting data through the adjusted transmission rate.
In the embodiment, when the pre-used bandwidth is greater than or equal to the video code rate, the pre-adjustment transmission rate is determined according to the video code rate and the double-speed factor; and calculating the adjusted transmission rate according to the pre-adjusted transmission rate and the pre-used bandwidth, thereby ensuring the real-time property of the actual transmission rate.
The invention also provides a data transmission device. Referring to fig. 7, the data transmission apparatus of the present invention includes:
an obtaining module 10, configured to obtain a network bandwidth and a video code rate, and determine a multiple speed factor;
a determining module 20, configured to determine a reserved bandwidth based on the network bandwidth and an upper limit factor when the speed multiplication factor is greater than a first preset value;
and a transmission module 30, configured to calculate an adjusted transmission rate when the reserved bandwidth is not less than the video bitrate, and transmit data at the adjusted transmission rate.
Furthermore, the present invention also provides a medium, which is a computer-readable storage medium, on which a data transmission program is stored, the data transmission program, when executed by a processor, implementing 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 each embodiment of the data transmission method of the present invention, and details are not described here.
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 an … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
Through the description of the foregoing embodiments, it is clear to those skilled in the art that the method of the foregoing embodiments may be implemented by software plus a necessary general hardware platform, and certainly may also be implemented by hardware, but in many cases, the former is a better implementation. Based on such understanding, the technical solution of the present invention or the portions contributing to the prior art may be embodied in the form of a software product, which is stored in a storage medium (such as ROM/RAM, magnetic disk, optical disk) as described above and includes several instructions for enabling a terminal device (which may be a mobile phone, a computer, a server, an air conditioner, or a network device) to execute the method according to the embodiments of the present invention.
The above description is only a preferred embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by using the contents of the present specification and the accompanying drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.

Claims (10)

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 doubling factor;
when the speed multiplying factor is larger than a first preset value, determining a preset bandwidth based on the network bandwidth and an upper limit factor;
and when the pre-used bandwidth is not less than the video code rate, calculating the adjusted transmission rate, and transmitting data by adopting the adjusted transmission rate.
2. The data transmission method of claim 1, wherein prior to the step of determining the pre-use bandwidth based on the network bandwidth and an upper bound factor, the data transmission method further comprises:
acquiring an initial upper limit factor and an incremental coefficient;
determining an upper bound factor based on the initial upper bound factor and the incremental factor.
3. The data transmission method of claim 2, wherein the step of determining an upper bound factor based on the initial upper bound factor and the incremental factor comprises:
if the upper limit factor is determined for the first time, determining the initial upper limit factor as the upper limit factor;
if the upper limit factor is not determined for the first time, acquiring the network bandwidth of the last calculation period, and judging whether the network bandwidth is smaller than the network bandwidth of the last calculation period; and if the network bandwidth is not less than the network bandwidth in the last calculation period, taking the sum of the initial upper limit factor and the incremental coefficient as an upper limit factor, and updating the upper limit factor to a second preset value when the upper limit factor is not less than the second preset value.
4. The data transmission method of claim 3, wherein after the step of determining whether the network bandwidth is less than the network bandwidth of the last calculation cycle, the data transmission method further comprises:
and if the network bandwidth is smaller than the network bandwidth in the last calculation period, taking the difference between the initial upper limit factor and the incremental coefficient as an upper limit factor, and updating the upper limit factor to the incremental coefficient when the upper limit factor is not larger than a third preset value.
5. The data transmission method of claim 1, wherein the step of determining a reserved bandwidth based on the network bandwidth and an upper bound factor comprises:
and determining the pre-used bandwidth according to the product of the network bandwidth and the upper limit factor.
6. 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 multiplying factor;
and determining the smaller value of the preset adjustment transmission rate and the preset bandwidth as the adjusted transmission rate.
7. The data transmission method of claim 6, wherein the step of determining a pre-adjusted transmission rate based on the video bitrate and the speed factor comprises:
and determining the pre-adjustment transmission rate according to the product of the video code rate and the speed factor.
8. A data transmission apparatus, characterized in that the data transmission apparatus comprises:
the acquisition module is used for acquiring the network bandwidth and the video code rate and determining a speed multiplication factor;
the determining module is used for determining the pre-used bandwidth based on the network bandwidth and the 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 and transmitting data at the adjusted transmission rate when the pre-used bandwidth is not less than the video code rate.
9. An apparatus, the apparatus being a data transmission apparatus, the data transmission apparatus comprising: memory, processor and data transmission program stored on the memory and executable on the processor, which data transmission program, when executed by the processor, implements the steps of the data transmission method according to any one of claims 1 to 7.
10. A medium, which is a computer-readable storage medium, characterized in that a data transmission program is stored on the computer-readable storage medium, which when executed by a processor implements the steps of the data transmission method according to any one of claims 1 to 7.
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 true CN115103235A (en) 2022-09-23
CN115103235B 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 (17)

* 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
US20080112506A1 (en) * 2006-11-13 2008-05-15 Motorola, Inc. Transmission power optimization
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
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
CN116193133A (en) * 2021-11-29 2023-05-30 上海大学 Code rate self-adaptive adjusting device and method based on wireless air interface bandwidth

Patent Citations (17)

* 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
US20080112506A1 (en) * 2006-11-13 2008-05-15 Motorola, Inc. Transmission power optimization
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
CN116193133A (en) * 2021-11-29 2023-05-30 上海大学 Code rate self-adaptive adjusting device and method based on wireless air interface bandwidth
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
M. SAJID MUSHTAQ: "HTTP rate adaptive algorithm with high bandwidth utilization", 10TH INTERNATIONAL CONFERENCE ON NETWORK AND SERVICE MANAGEMENT (CNSM) AND WORKSHOP *
林志勇: "3G视频传输中码率自适应调整算法", 东南大学学报 *

Also Published As

Publication number Publication date
CN115103235B (en) 2023-10-20

Similar Documents

Publication Publication Date Title
US9191664B2 (en) Adaptive bitrate management for streaming media over packet networks
JP4819873B2 (en) Technology to control data packet transmission of variable bit rate data
US8255559B2 (en) Data streaming through time-varying transport media
US9112947B2 (en) Flow-rate adaptation for a connection of time-varying capacity
US8255551B2 (en) Adaptive bitrate management for streaming media over packet networks
JP4299275B2 (en) Adaptive estimation method of multimedia data transfer rate
EP3175584B1 (en) Reducing delay in video telephony
US20120079132A1 (en) Method, device, and system for self-adaptively adjusting data transmission rate
WO2008110930A2 (en) Method of transmitting data in a communication system
US8634300B2 (en) Reducing communication delay of video data
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
Le et al. Bitrate adaptation for seamless on-demand video streaming over mobile networks
CN115103235B (en) Data transmission method, device, equipment and medium
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
US7525914B2 (en) Method for down-speeding in an IP communication network
JP7494938B2 (en) Throughput estimation device, throughput estimation 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