CN1980238A - II.264 flow-media transmission control method based on real-time transmission/control protocl - Google Patents
II.264 flow-media transmission control method based on real-time transmission/control protocl Download PDFInfo
- Publication number
- CN1980238A CN1980238A CN 200610117729 CN200610117729A CN1980238A CN 1980238 A CN1980238 A CN 1980238A CN 200610117729 CN200610117729 CN 200610117729 CN 200610117729 A CN200610117729 A CN 200610117729A CN 1980238 A CN1980238 A CN 1980238A
- Authority
- CN
- China
- Prior art keywords
- rtt
- average
- rtcp
- current
- rate
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Under condition of not increasing network load, using accurate effective feedback information provided by client end, the method analyzes and judges state of current network. Based on the analyzed result, the method adjusts size of RTP packet, and sending speed of video basic stream so as to realize dispatch control by server end. The method reduces time delay from server end to client end and rate of packet loss without increasing network burden. Transferred video provides good subjective effect.
Description
Technical field
The present invention relates to a kind of Streaming Media transfer control method, specifically relate to sending control method H.264 based on real-time Transmission/control protocol (RTP/RTCP) video transmission.
Background technology
Along with the fast development of Internet and multimedia technology, the network real-time Transmission of video becomes one of research focus of network application.H.264 standard becomes the main form and the standard of multimedia transmission on present and the next generation network with its high compression rate, high-quality, low code check.The time delay of the real-time Transmission requirement transmission of video is little, packet loss is low, yet because the retransmission mechanism of TCP (transmission control protocol) brings than long time delay, itself does not provide any Q again UDP (User Datagram Protoco (UDP))
OS guarantees, therefore needs new agreement to satisfy the high request of Network Video Transmission to time delay and packet loss.RTP/RTCP can address the above problem, and the RTP message is used for transmitting real-time data, can change transmission rate flexibly, and can prevent the transmission sequence confusion; And the RTCP message provides the feedback information of network condition and service quality for the RTP data in transmission course.The two be in conjunction with can providing reliable end-to-end transmission, and can adapt to bandwidth needs and and the audio-visual synchronization controlling mechanism is provided, therefore adopted by increasing streaming media service.
In the streaming media service based on RTP/RTCP, the Adaptive Transmission control of research RTP bag has a very important role.This control method can reduce delay end to end on the one hand by the network condition of feedback, the transmission rate that quality of service information is adjusted server end, can prevent network congestion on the other hand, guarantees certain service quality, realizes flow control end to end.Therefore, along with further developing of streaming media service, this class algorithm just is being subjected to increasing attention.
Summary of the invention
The purpose of this invention is to provide a kind of H.264 Streaming Media transfer control method, can effectively carry out the transmission control between the Server-Client (server end-client) based on real-time Transmission/control protocol; Client provides feedback information accurately and effectively, under the prerequisite that does not increase offered load, improves the H.264 quality of video flowing by the transmit mechanism of adjusting server end.
In order to achieve the above object, the invention provides a kind of H.264 Streaming Media transfer control method based on real-time Transmission/control protocol, utilize the RTCP feedback information to realize control, it comprises following steps:
Step 1, server end structure SR message and APP message send RTCP-SR control information and RTCP-APP detection packet with constant transmission rate to client;
Described RTCP-APP detection packet is used for detection network bandwidth change situation, because RTCP-APP detection packet volume is little and use flexibly, so can not bring burden to network;
Step 2, client receives and the resolution server end sends RTCP-SR and RTCP-APP message, structure RTCP-RR and RTCP-APP feed back message and are sent to server end with constant transmission rate;
Step 3, server end are resolved behind RTCP-RR that receives client feedback and RTCP-APP message, get parms: two-way time, network delay, packet loss, and analyze and draw current network bandwidth and operation conditions;
The network condition that step 4, server end obtain according to analysis is carried out parameter adjustment, and the transmission that RTP bag size by adjusting video-frequency basic flow and transmission rate realize server end is controlled.
In the step 1, server end sends 1 RTCP-APP detection packet with the constant transmission rate of every interval 1s to client, sends 1 RTCP-SR control information with the constant transmission rate of every interval 5s to client.
In the step 2, client sends RTCP-APP detection packet feedback message with the constant transmission rate of every interval 1s 1 time to server end, feeds back message with the constant transmission rate of every interval 5s to 1 RTCP-SR of server end transmission.
Described step 3 comprises following steps:
Step 3.1, according to the feedback information in the RTCP-RR message, calculating parameter:
Step 3.1.1, calculate RTT two-way time (Round-Trip time): RTT=T-LSR, wherein, T represents that server end receives the moment of RTCP-RR feedback message, the timestamp of the last RTCP-SR of LSR (Last SR timestamp) expression;
Step 3.1.2, computing network transmission delay T
Delay: T
Delay=(T-LSR-DLSR)/2, wherein, T represents that server end receives the moment of RTCP-RR feedback message, LSR represents the timestamp of a RTCP-SR; The delay of DLSR (Delay since last SR) expression behind a last RTCP-SR;
Step 3.1.3, calculating packet loss P
Loss: P
Loss=P
n/ 256, wherein, P
nBe the packet loss rate field in the RTCP-RR message;
Step 3.2, according to two-way time RTT and packet loss P
LossJudge current network state; Described network state specifically is divided into underloading (Unloaded), load (Loaded), light plug (LightCongested) and congested (Congested) four kinds;
Step 3.2.1, renewal average round-trip time RTT
On average: RTT
On average=(1-smoothing factor) * RTT
On average+ smoothing factor * RTT
Current, wherein, 0.5<smoothing factor<0.75;
When server end obtains first RTT, promptly during initial condition, definition RTT
On average=RTT
CurrentRTT
Load=0.25 * RTT
CurrentRTT
Unsupported=0.75 * RTT
Current
Step 3.2.2, if RTT
Current>RTT
On average, then have:
RTT
Maximum=RTT
Current
RTT
Load=rise the factor * RTT
Maximum
RTT
Unsupported=downward modulation the factor * RTT
Maximum
Wherein, the 0.5<rise factor<1, the 0<downward modulation factor<0.5;
If RTT
Current<=RTT
On average, then direct execution in step 3.2.3;
Step 3.2.3, if packet loss P
Loss>0, judge that then current network state is congested, continue execution in step 4; Otherwise execution in step 3.2.4;
Step 3.2.4, if RTT
On average<=RTT
Unsupported, judge that then current network state is a underloading, continue execution in step 4; Otherwise execution in step 3.2.5;
Step 3.2.5, if RTT
On average>RTT
Unsupported, and RTT
On average<=RTT
Load, judge that then current network state is load, continue execution in step 4; Otherwise execution in step 3.2.6;
Step 3.2.6, if RTT
On average>RTT
Load, judge that then current network state is light plug, continue execution in step 4.
In the step 3, utilize smoothing factor to calculate RTT
On average, pass through RTT
CurrentCome real-time update RTT with the product of smoothing factor
On average, because RTCP-SR and RTCP-RR message are every the 5s transmission once, so server end can utilize the feedback information of client to upgrade RTT every 5s
On average, and judge current network state, tracking network changes fast.
Described step 4 comprises following steps:
The network state information that step 4.1, basis are obtained by step 3 analysis, the server end parameter adjustment module is adjusted message transmitting spped rate, to adapt to current network conditions:
Step 4.1.1, if RTT
On averageTime interval when adjusted speed>=last time, then continue execution in step 4.1.2, otherwise execution in step 4.2;
Step 4.1.2, if network state be load, keep current transmission rate constant, steady rate is adjusted with smoothing factor, that is: steady rate=steady rate * (1-smoothing factor)+present rate * smoothing factor, wherein, 0.75<smoothing factor<1, described steady rate is an intermediate variable, and it is the intermediate quantity of the current transmission rate of auxiliary adjustment; Continue execution in step 4.2; Otherwise execution in step 4.1.3;
Step 4.1.3, if network state be congested, current transmission rate is pressed the regulatory factor linear decrease, that is: current transmission rate=max (current transmission rate * regulatory factor, minimum-rate), wherein, 0.5<regulatory factor<0.75, described minimum-rate is meant the minimum value of transmission rate, and this value is a network change and changing in time; Steady rate is successively decreased in proportion, that is: steady rate=steady rate * regulatory factor, wherein, 0.5<regulatory factor<0.75; Continue execution in step 4.2; Otherwise execution in step 4.1.4;
Under network was in congestion state, successively decreasing of steady rate was that the current transmission rate of careful increase prevents the message packet loss of next period for when the light condition;
Step 4.1.4, if network state be light plug, measurablely will continue to lose to the message bag, thus slow reduction present rate, that is: present rate=max (present rate * regulatory factor, minimum-rate), wherein, 0.5<regulatory factor<0.75; Continue execution in step 4.2; Otherwise execution in step 4.1.5;
Step 4.1.5, if network state be underloading, and current transmission rate<steady rate, then be in slow the startup stage, at this moment, current transmission rate can increase by a relatively large margin, that is: current transmission rate=(RR parlor the time interval/average RTT) * the adjust factor+current transmission rate, wherein, the RR parlor the time interval/average RTT is the number of RTT, the span of adjusting the factor is (0,1), continues execution in step 4.2;
If network state is a underloading, and current transmission rate>=steady rate, then be in the congested stage of avoiding, the increase amplitude of current transmission rate slows down, that is: current transmission rate=(RR parlor the time interval/average RTT) * adjust the factor * adjustment factor+current transmission rate, wherein, the RR parlor the time interval/average RTT is the number of RTT, the span of adjusting the factor is (0,1), continues execution in step 4.2;
Step 4.2, server end utilize RTCP-APP detection packet computing network bottleneck bandwidth B
Neck, according to B
NeckAdjust the size of RTP bag:
Step 4.2.1, calculating B
Neck: B
NeckThe transmission time interval of size/two an of=APP bag APP bag;
The average packet size of step 4.2.2, renewal APP: the average packet size=(1-0.75) * and average packet size+0.75 * current bag size, wherein,, be 0.75 so regulatory factor is set because of the transmission of RTP bag accounts for 75% of total bandwidth;
Step 4.2.3, if bottleneck bandwidth B
Neck>average packet size shows to be under the bandwidth sufficiency, and maximum bag size equals the product of bottleneck bandwidth and regulatory factor, that is: maximum is wrapped size=bottleneck bandwidth * regulatory factor, wherein, and 0.75<regulatory factor<1; Current bag size is got the average of maximum bag size and average packet size, suitably increases the size of bag, that is: current bag size=(maximum bag size+average packet size)/2; Finish then;
Step 4.2.4, if bottleneck bandwidth B
Neck<=average packet size shows to be under the nervous situation of bandwidth, average packet size=average packet size * regulatory factor, wherein, 0.5<regulatory factor<0.75; Current bag size is got the minimum value in maximum bag size and the average packet size, and it is big or small to reduce bag, that is: current bag size=min (average packet size, bottleneck bandwidth * regulatory factor), wherein, 0.5<regulatory factor<0.75.
Among the present invention, respectively be provided with timer at server end and client, when network is in congestion state and when causing the RTCP-APP message dropping, when the timer timing surpasses 5s, when server end or client are not received the RTCP-APP message yet, client or server end will be retransmitted automatically.
Among the present invention, because there is not handshake function in RTCP, so in server end and client the buffering area of RTCP message is arranged respectively, the RTCP packet of the two sends and receives the transmission that does not influence the RTP data, and APP wraps little to network bandwidth load effect simultaneously.
H.264 Streaming Media transfer control method based on real-time Transmission/control protocol provided by the invention under the situation that does not increase network burden, can reduce time-delay and the packet loss of server end to client, and the video subjective effect after the transmission is good.
Description of drawings
Fig. 1 is the schematic diagram of the H.264 Streaming Media transfer control method based on real-time Transmission/control protocol provided by the invention.
Embodiment
Followingly specify a kind of better embodiment of the present invention according to Fig. 1:
As shown in Figure 1, be the schematic diagram of the H.264 Streaming Media transfer control method based on real-time Transmission/control protocol provided by the invention, utilize the RTCP feedback information to realize control, it comprises following steps:
Step 1, server end structure SR message and APP message send RTCP-SR control information and RTCP-APP detection packet with constant transmission rate to client;
Described RTCP-APP detection packet is used for detection network bandwidth change situation, because RTCP-APP detection packet volume is little and use flexibly, so can not bring burden to network;
Step 2, client receives and the resolution server end sends RTCP-SR and RTCP-APP message, structure RTCP-RR and RTCP-APP feed back message and are sent to server end with constant transmission rate;
Step 3, server end are resolved behind RTCP-RR that receives client feedback and RTCP-APP message, get parms: two-way time, network delay, packet loss, and analyze and draw current network bandwidth and operation conditions;
The network condition that step 4, server end obtain according to analysis is carried out parameter adjustment, and the transmission that RTP bag size by adjusting video-frequency basic flow and transmission rate realize server end is controlled.
In the step 1, server end sends 1 RTCP-APP detection packet with the constant transmission rate of every interval 1s to client, sends 1 RTCP-SR control information with the constant transmission rate of every interval 5s to client.
In the step 2, client sends RTCP-APP detection packet feedback message with the constant transmission rate of every interval 1s 1 time to server end, feeds back message with the constant transmission rate of every interval 5s to 1 RTCP-SR of server end transmission.
Described step 3 comprises following steps:
Step 3.1, according to the feedback information in the RTCP-RR message, calculating parameter:
Step 3.1.1, calculate RTT:RTT=T-LSR two-way time, wherein, T represents that server end receives the moment of RTCP-RR feedback message, and LSR represents the timestamp of a RTCP-SR;
Step 3.1.2, computing network transmission delay T
Delay: T
Delay=(T-LSR-DLSR)/2, wherein, T represents that server end receives the moment of RTCP-RR feedback message, LSR represents the timestamp of a RTCP-SR; DLSR represents the delay behind a last RTCP-SR;
Step 3.1.3, calculating packet loss P
Loss: P
Loss=P
n/ 256, wherein, P
nBe the packet loss rate field in the RTCP-RR message;
Step 3.2, according to two-way time RTT and packet loss P
LossJudge current network state; Described network state specifically is divided into underloading, load, gently plug and congested four kinds;
Step 3.2.1, renewal average round-trip time RTT
On average: RTT
On average=(1-0.75) * RTT
On average+ 0.75 * RTT
Current, wherein, 0.75 is smoothing factor;
When server end obtains first RTT, promptly during initial condition, definition RTT
On average=RTT
CurrentRTT
Load=0.25 * RTT
CurrentRTT
Unsupported=0.75 * RTT
Current
Step 3.2.2, if RTT
Current>RTT
On average, then have:
RTT
Maximum=RTT
Current
RTT
Load=rise the factor * RTT
Maximum
RTT
Unsupported=downward modulation the factor * RTT
Maximum
Wherein, the 0.5<rise factor<1, the 0<downward modulation factor<0.5;
If RTT
Current<=RTT
On average, then direct execution in step 3.2.3;
Step 3.2.3, if packet loss P
Loss>0, judge that then current network state is congested, continue execution in step 4; Otherwise execution in step 3.2.4;
Step 3.2.4, if RTT
On average<=RTT
Unsupported, judge that then current network state is a underloading, continue execution in step 4; Otherwise execution in step 3.2.5;
Step 3.2.5, if RTT
On average>RTT
Unsupported, and RTT
On average<=RTT
Load, judge that then current network state is load, continue execution in step 4; Otherwise execution in step 3.2.6;
Step 3.2.6, if RTT
On average>RTT
Load, judge that then current network state is light plug, continue execution in step 4.
In the step 3, utilize smoothing factor to calculate RTT
On average, pass through RTT
CurrentCome real-time update RTT with the product of smoothing factor
On average, because RTCP-SR and RTCP-RR message are every the 5s transmission once, so server end can utilize the feedback information of client to upgrade RTT every 5s
On average, and judge current network state, tracking network changes fast.
Described step 4 comprises following steps:
The network state information that step 4.1, basis are obtained by step 3 analysis, the server end parameter adjustment module is adjusted message transmitting spped rate, to adapt to current network conditions:
Step 4.1.1, if RTT
On averageTime interval when adjusted speed>=last time, then continue execution in step 4.1.2, otherwise execution in step 4.2;
Step 4.1.2, if network state is load, keep current transmission rate constant, steady rate is adjusted with smoothing factor 0.25, that is: execution in step 4.2 is continued in steady rate=steady rate * (1-0.25)+present rate * 0.25; Otherwise execution in step 4.1.3;
Described steady rate is an intermediate variable, and it is the intermediate quantity of the current transmission rate of auxiliary adjustment;
Step 4.1.3, if network state be congested, current transmission rate is pressed regulatory factor 0.875 linear decrease, that is: current transmission rate=max (current transmission rate * 0.875, minimum-rate); Wherein, described minimum-rate is meant the minimum value of transmission rate, and this value is a network change and changing in time; Steady rate is successively decreased in 0.75 ratio, that is: execution in step 4.2 is continued in steady rate=steady rate * 0.75; Otherwise execution in step 4.1.4;
Under network was in congestion state, successively decreasing of steady rate was that the current transmission rate of careful increase prevents the message packet loss of next period for when the light condition;
Step 4.1.4, if network state be light plug, measurablely will continue to lose to the message bag, thus slow reduction present rate, that is: present rate=max (present rate * 0.95, minimum-rate), continuation execution in step 4.2; Otherwise execution in step 4.1.5;
Step 4.1.5, if network state be underloading, and current transmission rate<steady rate, then be in slow the startup stage, at this moment, current transmission rate can increase by a relatively large margin, that is: current transmission rate=(RR parlor the time interval/average RTT) * the adjust factor+current transmission rate, wherein, the RR parlor the time interval/average RTT is the number of RTT, the span of adjusting the factor is (0,1), continues execution in step 4.2;
If network state is a underloading, and current transmission rate>=steady rate, then be in the congested stage of avoiding, the increase amplitude of current transmission rate slows down, that is: current transmission rate=(RR parlor the time interval/average RTT) * adjust the factor * adjustment factor+current transmission rate, wherein, the RR parlor the time interval/average RTT is the number of RTT, the span of adjusting the factor is (0,1), continues execution in step 4.2;
Step 4.2, server end utilize RTCP-APP detection packet computing network bottleneck bandwidth B
Neck, according to B
NeckAdjust the size of RTP bag:
Step 4.2.1, calculating B
Neck: B
NeckThe transmission time interval of size/two an of=APP bag APP bag;
The average packet size of step 4.2.2, renewal APP: the average packet size=(1-0.75) * and average packet size+0.75 * current bag size, wherein,, be 0.75 so regulatory factor is set because of the transmission of RTP bag accounts for 75% of total bandwidth;
Step 4.2.3, if bottleneck bandwidth B
Neck>average packet size shows to be under the bandwidth sufficiency, and maximum bag size equals the product of bottleneck bandwidth and regulatory factor 0.75, that is: maximum size=bottleneck bandwidth * 0.75 of wrapping; Current bag size is got the average of maximum bag size and average packet size, suitably increases the size of bag, that is: current bag size=(maximum bag size+average packet size)/2; Finish then;
Step 4.2.4, if bottleneck bandwidth B
Neck<=average packet size shows to be under the nervous situation of bandwidth average packet size=average packet size * 0.75; Current bag size is got the minimum value in maximum bag size and the average packet size, reduces the bag size, that is: current bag size=min (average packet size, bottleneck bandwidth * 0.75).
Among the present invention, respectively be provided with timer at server end and client, when network is in congestion state and when causing the RTCP-APP message dropping, when the timer timing surpasses 5s, when server end or client are not received the RTCP-APP message yet, client or server end will be retransmitted automatically.
Among the present invention, because there is not handshake function in RTCP, so in server end and client the buffering area of RTCP message is arranged respectively, the RTCP packet of the two sends and receives the transmission that does not influence the RTP data, and APP wraps little to network bandwidth load effect simultaneously.
Below, adopt CIF format video cycle tests for the present invention being applied to the result that the H.264 Real-time video transmission system based on RTP/RTCP obtains.Table 1 and table 2 are represented the packet loss of network respectively and are sent preceding, as to receive back PSNR statistical conditions.
Sequence | Totalframes | Send the bag number | Receiver packet number | The lost package number | Packet loss (%) |
coastguard | 300 | 687 | 673 | 12 | 0.0175 |
hall | 300 | 359 | 355 | 4 | 0.0111 |
mobile | 300 | 954 | 937 | 17 | 0.0178 |
Paris | 1065 | 1538 | 1521 | 17 | 0.0137 |
Table 1 packet loss statistics
Sequence | Coding back (before sending) PSNR | Decoding back PSNR | PSNR decline ratio |
coastguard | 34.8163 | 34.4209 | 0.3954 |
hall | 37.6782 | 37.2939 | 0.3843 |
mobile | 33.7581 | 33.2744 | 0.4837 |
Paris | 35.1576 | 34.6613 | 0.4963 |
The statistics of table 2 PSNR
By table 1 as seen, packet loss all is lower than 0.02%; From table 2 can find out send before and receive decoding back PSNR decline ratio and be no more than 0.5dB.This shows that the H.264 Streaming Media transfer control method based on real-time Transmission/control protocol provided by the invention under the situation that does not increase network burden, can reduce end-to-end delay and packet loss, and the video subjective effect after the transmission is good.
Claims (6)
1. the H.264 Streaming Media transfer control method based on real-time Transmission/control protocol is characterized in that, comprises following steps:
Step 1, server end structure SR message and APP message send RTCP-SR control information and RTCP-APP detection packet with constant transmission rate to client;
Step 2, client receives and the resolution server end sends RTCP-SR and RTCP-APP message, structure RTCP-RR and RTCP-APP feed back message and are sent to server end with constant transmission rate;
Step 3, server end are resolved behind RTCP-RR that receives client feedback and RTCP-APP message, get parms: two-way time, network delay, packet loss, and analyze and draw current network bandwidth and operation conditions;
The network condition that step 4, server end obtain according to analysis is carried out parameter adjustment, and the transmission that RTP bag size by adjusting video-frequency basic flow and transmission rate realize server end is controlled.
2. the H.264 Streaming Media transfer control method based on real-time Transmission/control protocol as claimed in claim 1, it is characterized in that, in the step 1, server end sends 1 RTCP-APP detection packet with the constant transmission rate of every interval 1s to client, sends 1 RTCP-SR control information with the constant transmission rate of every interval 5s to client.
3. the H.264 Streaming Media transfer control method based on real-time Transmission/control protocol as claimed in claim 1, it is characterized in that, in the step 2, client sends RTCP-APP detection packet feedback message with the constant transmission rate of every interval 1s 1 time to server end, feeds back message with the constant transmission rate of every interval 5s to 1 RTCP-SR of server end transmission.
4. the H.264 Streaming Media transfer control method based on real-time Transmission/control protocol as claimed in claim 1 is characterized in that described step 3 comprises following steps:
Step 3.1, according to the feedback information in the RTCP-RR message, calculating parameter:
Step 3.1.1, calculate RTT:RTT=T-LSR two-way time, wherein, T represents that server end receives the moment of RTCP-RR feedback message, and LSR represents the timestamp of a RTCP-SR;
Step 3.1.2, computing network transmission delay T
Delay: T
Delay=(T-LSR-DLSR)/2, wherein, T represents that server end receives the moment of RTCP-RR feedback message, LSR represents the timestamp of a RTCP-SR; DLSR represents the delay behind a last RTCP-SR;
Step 3.1.3, calculating packet loss P
Loss: P
Loss=P
n/ 256, wherein, Pn is the packet loss rate field in the RTCP-RR message;
Step 3.2, according to two-way time RTT and packet loss P
LossJudge current network state; Described network state is divided into underloading, load, gently plug and congested four kinds;
Step 3.2.1, renewal average round-trip time RTT
On average: RTT
On average=(1-smoothing factor) * RTT
On average+ smoothing factor * RTT
Current, wherein, 0.5<smoothing factor<0.75;
When server end obtains first RTT, promptly when initial condition, define RTT
On average=RTT
CurrentRTT
Load=0.25 * RTT
CurrentRTT
Unsupported=0.75 * RTT
Current
Step 3.2.2, if RTT
Current>RTT
On average, then have:
RTT
Maximum=RTT
Current
RTT
Load=rise the factor * RTT
Maximum
RTT
Nonnegative number=downward modulation the factor * RTT
Maximum
Wherein, the 0.5<rise factor<1, the 0<downward modulation factor<0.5;
If RTT
Current<=RTT
On average, then direct execution in step 3.2.3;
Step 3.2.3, if packet loss P
Loss>0, judge that then current network state is congested, continue execution in step 4; Otherwise execution in step 3.2.4;
Step 3.2.4, if RTT
On average<=RTT
Unsupported, judge that then current network state is a underloading, continue execution in step 4; Otherwise execution in step 3.2.5;
Step 3.2.5, if RTT
On average>RTT
Unsupported, and RTT
On average<=RTT
Load, judge that then current network state is load, continue execution in step 4; Otherwise execution in step 3.2.6;
Step 3.2.6, if RTT
On average>RTT
Negative, judge that then current network state is light plug, continue execution in step 4.
5. the H.264 Streaming Media transfer control method based on real-time Transmission/control protocol as claimed in claim 1 is characterized in that described step 4 comprises following steps:
The network state information that step 4.1, basis are obtained by step 3 analysis, the server end parameter adjustment module is adjusted message transmitting spped rate:
Step 4.1.1, if RTT
On averageTime interval when adjusted speed>=last time, then continue execution in step 4.1.2, otherwise execution in step 4.2;
Step 4.1.2, if network state be load, keep current transmission rate constant, steady rate is adjusted with smoothing factor, that is: steady rate=steady rate * (1-smoothing factor)+present rate * smoothing factor, wherein, 0.75<smoothing factor<1, described steady rate are the intermediate variables of the current transmission rate of auxiliary adjustment; Continue execution in step 4.2; Otherwise execution in step 4.1.3;
Step 4.1.3, if network state be congested, current transmission rate is pressed the regulatory factor linear decrease, that is: current transmission rate=max (current transmission rate * regulatory factor, minimum-rate); Wherein, 0.5<regulatory factor<0.75, described minimum-rate is meant the minimum value of transmission rate, this is worth in time network change and changes; Steady rate is successively decreased in proportion, that is: steady rate=steady rate * regulatory factor, wherein, 0.5<regulatory factor<0.75; Continue execution in step 4.2; Otherwise execution in step 4.1.4;
Step 4.1.4, if network state be gently to fill in, slowly reduce present rate, that is: present rate=max (present rate * regulatory factor, minimum-rate), wherein, 0.5<regulatory factor<0.75; Continue execution in step 4.2; Otherwise execution in step 4.1.5;
Step 4.1.5, if network state be underloading, and current transmission rate<steady rate, be in slow the startup stage, current transmission rate=(RR parlor the time interval/average RTT) * the adjust factor+current transmission rate, wherein, the RR parlor the time interval/average RTT is the number of RTT, the span of adjusting the factor is (0,1), continues execution in step 4.2;
If network state is a underloading, and current transmission rate>=steady rate, be in the congested stage of avoiding, current transmission rate=(RR parlor the time interval/average RTT) * the adjust factor * adjustment factor+current transmission rate, wherein, the RR parlor the time interval/average RTT is the number of RTT, the span of adjusting the factor is (0,1), continues execution in step 4.2;
Step 4.2, server end utilize RTCP-APP detection packet computing network bottleneck bandwidth B
Neck, according to B
NeckAdjust the size of RTP bag:
Step 4.2.1, calculating B
Neck: B
NeckThe transmission time interval of size/two an of=APP bag APP bag;
The average packet size of step 4.2.2, renewal APP: the average packet size=(1-0.75) * average packet size+0.75 * current bag size;
Step 4.2.3, if bottleneck bandwidth B
Neck>average packet size is under the bandwidth sufficiency, maximum bag size=bottleneck bandwidth * regulatory factor, wherein, 0.75<regulatory factor<1; Current bag size=(maximum bag size+average packet size)/2; Finish then;
Step 4.2.4, if bottleneck bandwidth B
Neck<=average packet size is under the nervous situation of bandwidth, average packet size=average packet size * regulatory factor, wherein, 0.5<regulatory factor<0.75; Current bag size=min (average packet size, bottleneck bandwidth * regulatory factor), wherein, 0.5<regulatory factor<0.75.
6. the H.264 Streaming Media transfer control method based on real-time Transmission/control protocol as claimed in claim 1 is characterized in that, respectively is provided with timer at server end and client.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610117729 CN1980238A (en) | 2006-10-30 | 2006-10-30 | II.264 flow-media transmission control method based on real-time transmission/control protocl |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610117729 CN1980238A (en) | 2006-10-30 | 2006-10-30 | II.264 flow-media transmission control method based on real-time transmission/control protocl |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1980238A true CN1980238A (en) | 2007-06-13 |
Family
ID=38131236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200610117729 Pending CN1980238A (en) | 2006-10-30 | 2006-10-30 | II.264 flow-media transmission control method based on real-time transmission/control protocl |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1980238A (en) |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009106015A1 (en) * | 2008-02-27 | 2009-09-03 | 华为技术有限公司 | Dynamic bit rate allocation method, packet-domain streaming media server |
CN101222296B (en) * | 2008-01-31 | 2010-06-09 | 上海交通大学 | Self-adapting transmission method and system in ascending honeycomb video communication |
CN101159746B (en) * | 2007-11-08 | 2010-08-18 | 中兴通讯股份有限公司 | Self-adaptive method and system |
CN101860733A (en) * | 2010-06-11 | 2010-10-13 | 深圳市黄河数字技术有限公司 | 3g network video monitoring system and monitoring method |
CN101971629A (en) * | 2008-03-12 | 2011-02-09 | 艾利森电话股份有限公司 | Device and method for adaptation of target rate of video signals |
CN102075769A (en) * | 2011-01-10 | 2011-05-25 | 苏州博联科技有限公司 | Method for optimizing video QoS of video wireless transmission monitoring system |
CN102340789A (en) * | 2010-07-20 | 2012-02-01 | 中国联合网络通信集团有限公司 | Dialing test terminal and dialing test method |
CN101359979B (en) * | 2008-08-01 | 2012-03-28 | 中国联合网络通信集团有限公司 | Link packet drop rate control method and system based on terminal |
CN102404184A (en) * | 2010-09-09 | 2012-04-04 | 鸿富锦精密工业(深圳)有限公司 | Data transmission system and transmission method |
CN102447584A (en) * | 2012-01-04 | 2012-05-09 | 无锡云捷科技有限公司 | System and method for optimizing VPN (Virtual Private Network) link |
CN102571739A (en) * | 2011-05-26 | 2012-07-11 | 中兴通讯股份有限公司 | Batch data transmission method and device |
CN102594778A (en) * | 2011-01-11 | 2012-07-18 | 中兴通讯股份有限公司 | Realizing method and system for stream media feedback |
CN102845013A (en) * | 2011-04-22 | 2012-12-26 | 华为技术有限公司 | Data transmission method and device |
CN103944834A (en) * | 2013-01-22 | 2014-07-23 | 北京随锐科技有限公司 | Audio and video transmission control method and system |
CN104734806A (en) * | 2013-12-20 | 2015-06-24 | 施耐德电器工业公司 | Method for monitoring a communication between a transmitter entity and a receiver entity |
CN104754339A (en) * | 2013-12-26 | 2015-07-01 | 成都鼎桥通信技术有限公司 | Method, device and system for adjusting I frame |
CN105306424A (en) * | 2014-07-08 | 2016-02-03 | 腾讯科技(深圳)有限公司 | Stream media transmission method, stream media sending device and stream media transmission system |
CN105656602A (en) * | 2015-12-31 | 2016-06-08 | 小米科技有限责任公司 | Data transmission method and apparatus |
CN105763297A (en) * | 2015-12-25 | 2016-07-13 | 珠海国芯云科技有限公司 | Cloud computing system-based remote data optimized transmission method and device |
CN106912072A (en) * | 2015-12-22 | 2017-06-30 | 上海自足网络科技有限公司 | A kind of Wireless Ad Hoc network congestion control mechanism based on virtual transmission agreement |
CN106982371A (en) * | 2016-12-09 | 2017-07-25 | 上海谐桐信息技术有限公司 | Code stream control method and system, code stream management method and system, and terminal device |
CN106982378A (en) * | 2015-09-28 | 2017-07-25 | 苏州踪视通信息技术有限公司 | The Bandwidth adjustment of real-time video transmission |
CN107438187A (en) * | 2015-09-28 | 2017-12-05 | 苏州踪视通信息技术有限公司 | The Bandwidth adjustment of real-time video transmission |
CN108418757A (en) * | 2018-02-12 | 2018-08-17 | 北京容联易通信息技术有限公司 | The method for intelligently routing and system of media platform |
CN109257565A (en) * | 2018-09-27 | 2019-01-22 | 山东衡昊信息技术有限公司 | A kind of network transfer method of fruit juice production line intelligent monitoring system |
US10506257B2 (en) | 2015-09-28 | 2019-12-10 | Cybrook Inc. | Method and system of video processing with back channel message management |
US10516892B2 (en) | 2015-09-28 | 2019-12-24 | Cybrook Inc. | Initial bandwidth estimation for real-time video transmission |
CN111130923A (en) * | 2019-11-29 | 2020-05-08 | 北京达佳互联信息技术有限公司 | Network bandwidth determining method and device, electronic equipment and storage medium |
CN113542209A (en) * | 2020-03-30 | 2021-10-22 | 腾讯美国有限责任公司 | Method, apparatus and readable storage medium for video signaling |
WO2022022539A1 (en) * | 2020-07-29 | 2022-02-03 | 华为技术有限公司 | Network congestion control method and related apparatus |
CN114095760A (en) * | 2021-11-09 | 2022-02-25 | 杭州萤石软件有限公司 | Data transmission method and data transmission device thereof |
CN114157610A (en) * | 2021-09-16 | 2022-03-08 | 北京天德科技有限公司 | High-speed network protocol system and transmission method suitable for block chain network |
CN113542209B (en) * | 2020-03-30 | 2024-06-07 | 腾讯美国有限责任公司 | Method, apparatus and readable storage medium for video signaling |
-
2006
- 2006-10-30 CN CN 200610117729 patent/CN1980238A/en active Pending
Cited By (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159746B (en) * | 2007-11-08 | 2010-08-18 | 中兴通讯股份有限公司 | Self-adaptive method and system |
CN101222296B (en) * | 2008-01-31 | 2010-06-09 | 上海交通大学 | Self-adapting transmission method and system in ascending honeycomb video communication |
CN101242359B (en) * | 2008-02-27 | 2010-08-18 | 华为技术有限公司 | Dynamic code rate allocation method and packet domain stream media server |
WO2009106015A1 (en) * | 2008-02-27 | 2009-09-03 | 华为技术有限公司 | Dynamic bit rate allocation method, packet-domain streaming media server |
CN101971629A (en) * | 2008-03-12 | 2011-02-09 | 艾利森电话股份有限公司 | Device and method for adaptation of target rate of video signals |
CN101971629B (en) * | 2008-03-12 | 2014-05-21 | 艾利森电话股份有限公司 | Device and method for adaptation of target rate of video signals |
CN101359979B (en) * | 2008-08-01 | 2012-03-28 | 中国联合网络通信集团有限公司 | Link packet drop rate control method and system based on terminal |
CN101860733A (en) * | 2010-06-11 | 2010-10-13 | 深圳市黄河数字技术有限公司 | 3g network video monitoring system and monitoring method |
CN102340789A (en) * | 2010-07-20 | 2012-02-01 | 中国联合网络通信集团有限公司 | Dialing test terminal and dialing test method |
CN102404184A (en) * | 2010-09-09 | 2012-04-04 | 鸿富锦精密工业(深圳)有限公司 | Data transmission system and transmission method |
CN102075769B (en) * | 2011-01-10 | 2012-11-07 | 苏州博联科技有限公司 | Method for optimizing video QoS of video wireless transmission monitoring system |
CN102075769A (en) * | 2011-01-10 | 2011-05-25 | 苏州博联科技有限公司 | Method for optimizing video QoS of video wireless transmission monitoring system |
CN102594778A (en) * | 2011-01-11 | 2012-07-18 | 中兴通讯股份有限公司 | Realizing method and system for stream media feedback |
WO2012094996A1 (en) * | 2011-01-11 | 2012-07-19 | 中兴通讯股份有限公司 | Method, system and device for streaming media feedback |
CN102845013A (en) * | 2011-04-22 | 2012-12-26 | 华为技术有限公司 | Data transmission method and device |
CN102845013B (en) * | 2011-04-22 | 2016-08-03 | 华为技术有限公司 | Data transmission method and device |
CN102571739A (en) * | 2011-05-26 | 2012-07-11 | 中兴通讯股份有限公司 | Batch data transmission method and device |
CN102447584A (en) * | 2012-01-04 | 2012-05-09 | 无锡云捷科技有限公司 | System and method for optimizing VPN (Virtual Private Network) link |
CN103944834B (en) * | 2013-01-22 | 2017-03-22 | 随锐科技股份有限公司 | Audio and video transmission control method and system |
CN103944834A (en) * | 2013-01-22 | 2014-07-23 | 北京随锐科技有限公司 | Audio and video transmission control method and system |
CN104734806A (en) * | 2013-12-20 | 2015-06-24 | 施耐德电器工业公司 | Method for monitoring a communication between a transmitter entity and a receiver entity |
CN104734806B (en) * | 2013-12-20 | 2018-05-22 | 施耐德电器工业公司 | The method for monitoring the communication between transmitter entity and receiver entity |
CN104754339B (en) * | 2013-12-26 | 2018-02-13 | 成都鼎桥通信技术有限公司 | I framing control method, apparatus and system |
CN104754339A (en) * | 2013-12-26 | 2015-07-01 | 成都鼎桥通信技术有限公司 | Method, device and system for adjusting I frame |
CN105306424A (en) * | 2014-07-08 | 2016-02-03 | 腾讯科技(深圳)有限公司 | Stream media transmission method, stream media sending device and stream media transmission system |
CN105306424B (en) * | 2014-07-08 | 2019-05-03 | 腾讯科技(深圳)有限公司 | A kind of flow-medium transmission method, Streaming Media sending device and stream media transmission system |
US10756997B2 (en) | 2015-09-28 | 2020-08-25 | Cybrook Inc. | Bandwidth adjustment for real-time video transmission |
CN106982378A (en) * | 2015-09-28 | 2017-07-25 | 苏州踪视通信息技术有限公司 | The Bandwidth adjustment of real-time video transmission |
CN107438187A (en) * | 2015-09-28 | 2017-12-05 | 苏州踪视通信息技术有限公司 | The Bandwidth adjustment of real-time video transmission |
US10516892B2 (en) | 2015-09-28 | 2019-12-24 | Cybrook Inc. | Initial bandwidth estimation for real-time video transmission |
US10506257B2 (en) | 2015-09-28 | 2019-12-10 | Cybrook Inc. | Method and system of video processing with back channel message management |
CN106912072A (en) * | 2015-12-22 | 2017-06-30 | 上海自足网络科技有限公司 | A kind of Wireless Ad Hoc network congestion control mechanism based on virtual transmission agreement |
CN105763297A (en) * | 2015-12-25 | 2016-07-13 | 珠海国芯云科技有限公司 | Cloud computing system-based remote data optimized transmission method and device |
CN105763297B (en) * | 2015-12-25 | 2019-11-01 | 珠海国芯云科技有限公司 | A kind of teledata optimized transmission method and device based on cloud computing system |
CN105656602B (en) * | 2015-12-31 | 2019-05-14 | 小米科技有限责任公司 | Data transmission method and device |
CN105656602A (en) * | 2015-12-31 | 2016-06-08 | 小米科技有限责任公司 | Data transmission method and apparatus |
CN106982371A (en) * | 2016-12-09 | 2017-07-25 | 上海谐桐信息技术有限公司 | Code stream control method and system, code stream management method and system, and terminal device |
CN106982371B (en) * | 2016-12-09 | 2020-08-11 | 上海谐桐信息技术有限公司 | Code stream control method and system, code stream management method and system, and terminal equipment |
CN108418757A (en) * | 2018-02-12 | 2018-08-17 | 北京容联易通信息技术有限公司 | The method for intelligently routing and system of media platform |
CN108418757B (en) * | 2018-02-12 | 2020-10-20 | 北京容联易通信息技术有限公司 | Intelligent routing method and system for media platform |
CN109257565A (en) * | 2018-09-27 | 2019-01-22 | 山东衡昊信息技术有限公司 | A kind of network transfer method of fruit juice production line intelligent monitoring system |
CN109257565B (en) * | 2018-09-27 | 2021-03-19 | 乐清海创智能科技有限公司 | Network transmission method of intelligent monitoring system of fruit juice production line |
CN111130923A (en) * | 2019-11-29 | 2020-05-08 | 北京达佳互联信息技术有限公司 | Network bandwidth determining method and device, electronic equipment and storage medium |
CN113542209A (en) * | 2020-03-30 | 2021-10-22 | 腾讯美国有限责任公司 | Method, apparatus and readable storage medium for video signaling |
CN113542209B (en) * | 2020-03-30 | 2024-06-07 | 腾讯美国有限责任公司 | Method, apparatus and readable storage medium for video signaling |
WO2022022539A1 (en) * | 2020-07-29 | 2022-02-03 | 华为技术有限公司 | Network congestion control method and related apparatus |
CN114157610A (en) * | 2021-09-16 | 2022-03-08 | 北京天德科技有限公司 | High-speed network protocol system and transmission method suitable for block chain network |
CN114157610B (en) * | 2021-09-16 | 2022-07-08 | 北京天德科技有限公司 | High-speed network protocol system and transmission method suitable for block chain network |
CN114095760A (en) * | 2021-11-09 | 2022-02-25 | 杭州萤石软件有限公司 | Data transmission method and data transmission device thereof |
CN114095760B (en) * | 2021-11-09 | 2024-04-30 | 杭州萤石软件有限公司 | Data transmission method and data transmission device thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1980238A (en) | II.264 flow-media transmission control method based on real-time transmission/control protocl | |
CN101252425B (en) | Loss package error correcting method and system of self-adapting network | |
CN101909060B (en) | Qos control method suitable for real-time streaming media transmission of mobile videos | |
CN1156125C (en) | Flow control method based on feedback of client terminal | |
US8654638B2 (en) | Dynamically adjusting bandwidth usage among subscriber streams | |
CN103944834B (en) | Audio and video transmission control method and system | |
US7554922B2 (en) | Method and system for providing adaptive bandwidth control for real-time communication | |
EP3103210B1 (en) | Congestion control bitrate algorithm | |
EP2615760B1 (en) | Data flow control method and apparatus | |
CN101242359B (en) | Dynamic code rate allocation method and packet domain stream media server | |
CN101030832B (en) | Method and system for realizing realtime transmission protocol message redundancy | |
US20160205164A1 (en) | Server-side adaptive bit rate control for dlna http streaming clients | |
CN1983907A (en) | Method for controlling flow media transmitting rate | |
US9596323B2 (en) | Transport accelerator implementing client side transmission functionality | |
CN103051978A (en) | H264-based real-time mobile video service control method | |
CN101656747A (en) | Method and system for transmitting streaming media data | |
JP2004343698A (en) | Rate control of server base in multimedia streaming environment | |
CN113099310A (en) | Real-time media internal video and audio coordination method based on android platform | |
US20060174023A1 (en) | Method for obtaining information about a transmission capability | |
US7411978B2 (en) | Method of transmitting data packets using RTP and RTCP protocols | |
CN104486690A (en) | Mobile video transmission optimization method based on TCP (transmission control protocol) | |
EP3777218A1 (en) | Congestion response for timely media delivery | |
CN103607255A (en) | Wireless channel video communication packet loss rate control method | |
US9986010B2 (en) | System and method for controlling video and/or audio streams in a web browser | |
CN102523486A (en) | Method for realizing self adaptation to dynamic code stream bandwidth in video scheduling system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |