CN104754339B - I framing control method, apparatus and system - Google Patents
I framing control method, apparatus and system Download PDFInfo
- Publication number
- CN104754339B CN104754339B CN201310731550.6A CN201310731550A CN104754339B CN 104754339 B CN104754339 B CN 104754339B CN 201310731550 A CN201310731550 A CN 201310731550A CN 104754339 B CN104754339 B CN 104754339B
- Authority
- CN
- China
- Prior art keywords
- rtcp
- report
- frame
- mrow
- msub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000009432 framing Methods 0.000 title abstract 2
- 238000012545 processing Methods 0.000 claims abstract description 148
- 230000005540 biological transmission Effects 0.000 claims description 88
- 238000009499 grossing Methods 0.000 claims description 26
- 230000007774 longterm Effects 0.000 claims description 24
- 238000006243 chemical reaction Methods 0.000 claims description 22
- 230000009471 action Effects 0.000 claims description 6
- 230000003111 delayed effect Effects 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 6
- 230000007704 transition Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 8
- 238000012544 monitoring process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/643—Communication protocols
- H04N21/6437—Real-time Transport Protocol [RTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/647—Control 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/64784—Data processing by the network
- H04N21/64792—Controlling the complexity of the content stream, e.g. by dropping packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The present invention provides a kind of I framing control method, apparatus and system.Wherein, transmitting terminal is sending RTP bags, sender report;While receiving the receiving terminal report that receiving terminal is sent, transmitting terminal can obtain I dither frame parameters, and the I dither frame parameters include:First time stamp, the second time stamp, the 3rd time stamp, the 4th time stamp, the first processing delay and second processing time delay.Transmitting terminal is according to the delay jitters of I dither frame parameter acquiring I frames.If the delay jitter of I frames is more than dithering threshold, transmitting terminal increases the interval of adjacent I frame, the configuration of I frame periods is adjusted, and the encoder for notifying transmitting terminal video coding layer encodes according to new I frame periods to video data, it is achieved thereby that the shake according to I frames carries out the adjustment of I frame periods, so as to while video data stream decoding quality is ensured, avoid because I dither frames are uneven and cause the phenomenon of video cardton.
Description
Technical Field
The present invention relates to video communication technologies, and in particular, to a method, an apparatus, and a system for adjusting an I frame.
Background
In the prior art, video coding usually uses I-frames, P-frames and B-frames for coding transmission. I frames are mainly coded with reference to the current frame, P frames are mainly coded with reference to I frames or P frames, and B frames are usually coded with reference to I frames, P frames, or B frames. Therefore, the I-frame encoded output coded bits typically have a higher code rate. And, the code rate is typically several tens or hundreds times that of the P or B frame. When there is an I frame output, the amount of data to be transmitted is large, which results in a large video packet for an I frame or I slice output.
In the Real-time transmission process of images, the prior art generally uses a Real-time transport Protocol (RTP) to carry video packets of video coding, and correspondingly performs Real-time estimation of video packet delay, bit rate, and the like. In a typical Protocol architecture for video streaming media application, RTP requires real-time transport Control Protocol (RTP Control Protocol, RTCP for short) to guarantee its service quality, and the RTCP mainly has the following functions: monitoring and feedback of quality of service, synchronization between media, and identification of members in a multicast group. During the RTP session, each participant periodically transmits RTCP packets. RTCP packets contain statistics of the number of packets sent, the number of packets lost, etc., so that each participant can use this information to dynamically change the transmission rate, and even the payload type.
However, when the RTP protocol and the RTCP protocol in the prior art are used to transmit video data, the transmission delay is usually large, and the transmission delay is long, so that the delay jitter between different frames is not uniform, and the delay of the packet I is large during the transmission of the packet I, which still causes the video jam problem in the video output at the video decoding end.
Disclosure of Invention
The invention provides an I frame adjusting method, device and system, which are used for avoiding video pause caused by uneven jitter of an I frame while ensuring the decoding quality of a video data stream.
The first aspect of the present invention provides an I-frame adjusting method, including:
a sending end sends an I-frame real-time transport protocol (RTP) packet to a receiving end each time, and sends a first real-time transport control protocol (RTCP) sending end report to the receiving end corresponding to each I-frame RTP packet, wherein the first RTCP sending end report is associated with an I frame, and the first RTCP sending end report adopts a special report with a special bit mark as a corresponding I frame;
the sending end receives a first RTCP receiving end report sent by the receiving end, the first RTCP receiving end report is associated with an I frame, the first RTCP receiving end report comprises a first processing time delay, and the first processing time delay is the time delay from the receiving end receiving the first sending end report to the receiving end sending the first receiving end report;
the sending end sends a second RTCP sending end report to the receiving end based on the RTCP report interval;
the sending end receives a second RTCP receiving end report sent by the receiving end based on an RTCP report interval, the second RTCP receiving end report comprises a second processing time delay, and the second processing time delay is the time delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiving end report;
the sending end records a first timestamp, a second timestamp, a third timestamp and a fourth timestamp, wherein the first timestamp is the time when the sending end sends the report of the first RTCP sending end, the second timestamp is the time when the sending end receives the report of the first RTCP receiving end, the third timestamp is the time when the sending end sends the report of the second RTCP sending end, and the fourth timestamp is the time when the sending end receives the report of the second RTCP receiving end;
the sending end obtains the delay jitter of the I frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay and the second processing delay;
and if the delay jitter of the I frame is larger than the jitter threshold, increasing the interval of the adjacent I pins for coding.
With reference to the first aspect, in a first possible implementation manner, the acquiring, by the sender, the delay jitter of the I frame according to the first timestamp, the second timestamp, and the processing delay includes:
obtaining the equivalent transmission time delay of the I frame by the following formula:
wherein D isIkFor the equivalent transmission delay of the kth I frame,sending a first RTCP sender report for the senderA timestamp, the first RTCP sender report corresponding to an nth RTP packet of the kth I-frame,receiving a second timestamp of the first RTCP receiver report for the sender, the first RTCP receiver report corresponding to the nth RTP packet of the kth I frame, DLSRIknA first processing delay contained in the report of the first RTCP receiving end, wherein N is the number of RTP packets decomposed by the kth I frame and is an integer greater than or equal to 1, and the value range of N is [1, N [ ]]K is the index number of the I frame recorded in sequence;
obtaining the equivalent transmission time delay of the video frame by the following formula:
wherein D islFor the equivalent transmission delay of the RTP stream data,reporting a corresponding third timestamp for the second RTCP sender report sent based on the time interval,DLSR for a fourth timestamp corresponding to said time interval-based receipt of said second RTCP receiver reportaA is a second processing time delay contained in the report of the standard RTCP receiving end, and a is a sequentially recorded index number of the RTCP report which is sent in sequence based on the time interval;
obtaining the delay jitter of the I frame by the following formula:
DI jetter=DIk_avg-Da_avg
wherein D isI jetterFor delayed dithering of the I-frame, DIk_avgFor long-term smoothing of the transmission delay of the I-frame,Da_avglong-term smoothing of the transmission delay of video frames;
the D is obtained by the following formulaIk_avg:
Wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the I frame is [0.0, 1.0 ]],DI(k-1)Equivalent transmission delay of the (k-1) th I frame;
obtaining the long-term smoothness of the transmission delay of the video frame by the following formula:
wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the video frame is [0.0, 1.0 ]],Da-1Equivalent transmission delay for the a-1 st of said second RTCP reports, DaIs the equivalent transmission delay of the a-th said second RTCP report.
With reference to the first possible implementation manner of the first aspect, in a second possible implementation manner, if there is a report from the first RTCP sender or a report from the first RTCP receiver is lost and cannot be calculated, the D is obtained by the following formulaIk:
DIk=DMax
Wherein D isMaxIs the defined maximum transmission delay;
if the second RT is presentIf the CP sending end report or the second RTCP receiving end report is lost and cannot be calculated, the D is obtained by the following formulaa:
Da=DMax。
With reference to the first aspect or any one of the foregoing possible implementation manners of the first aspect, in a third possible implementation manner, the jitter threshold includes: a first jitter threshold and a second jitter threshold;
if the delay jitter of the I frame is greater than the jitter threshold, increasing the interval of the adjacent I pins for coding, including:
if said D isI jetterIf the jitter is larger than the first jitter threshold, I frame conversion is triggered, the next I frame is converted into a P frame or a B frame for coding every other I frame, and 1 is added to the accumulated conversion times m every time the I frame format is converted;
when the M values are accumulated for M times, M is an integer greater than or equal to 1 or DI jetterIf R times are greater than the second jitter threshold value continuously, increasing the interval of adjacent I frames, wherein R is an integer greater than or equal to 1, and the second jitter threshold value is greater than the first jitter threshold value;
wherein the interval of the new adjacent I frame is obtained by the following formula:
DIst_new=DIst_old+Diststep
wherein D isIst_newFor the new interval of adjacent I frames, DIst_oldInterval of I frame, D, adopted for last timeiststepThe step size is changed for a preset I frame interval.
With reference to the third possible implementation manner of the first aspect, in a fourth possible implementation manner, DIst_oldInitial value of DIst_I,DIst_IIs the spacing of standard adjacent I frames.
In combination with the first aspectA third possible implementation manner, in a fifth possible implementation manner, if D is the same as DIst_newAnd if the value is larger than or equal to the interval maximum value, the interval value of the new adjacent I frame is the interval maximum value.
With reference to the third possible implementation manner of the first aspect, in a sixth possible implementation manner, the method further includes:
if the accumulated conversion times M does not reach M times, and DI jetterAnd if the jitter value is less than or equal to the first jitter threshold value, stopping the I frame conversion action.
With reference to the third possible implementation manner of the first aspect, in a seventh possible implementation manner, the method further includes:
if said D isI jetterIf the continuous R times are less than or equal to the second jitter threshold, reducing the interval of I frames; wherein the interval D of new adjacent I framesIst_newObtained by the following formula:
DIst_new=DIst_old-Diststep。
with reference to the seventh possible implementation manner of the first aspect, in an eighth possible implementation manner, if D is greater than or equal to DIst_newInterval D less than or equal to standard adjacent I frameIst_IIf the new adjacent I frame interval is equal to DIst_I。
A second aspect of the present invention provides an I-frame adjusting method, including:
a receiving end receives a first real-time transport control protocol (RTCP) sending end report sent by a sending end, wherein the first RTCP sending end report is associated with an I frame, and the first RTCP sending end report adopts a special bit mark as a special report corresponding to the I frame;
the receiving end sends a first RTCP receiving end report to the sending end, the first RTCP receiving end report is associated with an I frame, the first RTCP receiving end report comprises a first processing time delay, and the first processing time delay is the time delay from the receiving end receiving the first RTCP sending end report to the receiving end sending the first RTCP receiving end report;
the receiving end receives a second RTCP sending end report sent by the sending end based on an RTCP report interval;
and the receiving terminal sends a second RTCP receiving terminal report to the sending terminal based on the RTCP report interval, wherein the second RTCP receiving terminal report comprises a second processing time delay, and the second processing time delay is the time delay from the receiving terminal receiving the second RTCP sending terminal report to the receiving terminal sending the second RTCP receiving terminal report.
A third aspect of the present invention provides an I-frame adjusting apparatus, including:
a sending module, configured to send an I-frame real-time transport protocol RTP packet to a receiving end each time, send a first real-time transport control protocol RTCP sender report to the receiving end corresponding to each I-frame RTP packet, where the first RTCP sender report is associated with an I-frame, and the first RTCP sender report uses a special bit identifier as a special report corresponding to the I-frame;
a receiving module, configured to receive a first RTCP receiver report sent by the receiver, where the first RTCP receiver report is associated with an I frame, the first RTCP receiver report includes a first processing delay, and the first processing delay is a delay from when the receiver receives the first sender report to when the receiver sends the first receiver report;
the sending module is further configured to send a second RTCP sender report to the receiving end based on an RTCP report interval;
the receiving module is further configured to receive a second RTCP receiver report that is sent by the receiver based on an RTCP report interval, where the second RTCP receiver report includes a second processing delay, and the second processing delay is a delay from when the receiver receives the second RTCP sender report to when the receiver sends the second RTCP receiver report;
a processing module, configured to record a first timestamp, a second timestamp, a third timestamp, and a fourth timestamp, where the first timestamp is a time when the sender sends the first RTCP sender report, the second timestamp is a time when the sender receives the first RTCP receiver report, the third timestamp is a time when the sender sends the second RTCP sender report, and the fourth timestamp is a time when the sender receives the second RTCP receiver report;
the processing module is further configured to obtain a delay jitter of the I frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay, and the second processing delay;
and the adjusting module is used for increasing the interval of the adjacent I pin for coding if the delay jitter of the I frame is greater than a jitter threshold value.
With reference to the third aspect, in a first possible implementation manner, the processing module is specifically configured to obtain the equivalent transmission delay of the I frame by using the following formula:
wherein D isIkFor the equivalent transmission delay of the kth I frame,sending a first timestamp of the first RTCP sender report for the sender, the first RTCP sender report corresponding to the nth RTP packet of the kth I frame,receiving a second timestamp of the first RTCP receiver report for the sender, the first RTCP receiver report corresponding to the nth RTP packet of the kth I frame, DLSRIknIncluded for said first RTCP receiver reportA first processing time delay, wherein N is the number of RTP packets corresponding to the k-th I frame, and is an integer greater than or equal to 1, and the value range of N is [1, N ]]K is the index number of the I frame recorded in sequence;
the processing module is specifically configured to obtain the equivalent transmission delay of the video frame according to the following formula:
wherein D isaFor the equivalent transmission delay of the RTP stream data,reporting a corresponding third timestamp for the second RTCP sender report sent based on the time interval,DLSR for a fourth timestamp corresponding to said second RTCP receiver report received based on said time intervalaA is a second processing time delay contained in the report of the standard RTCP receiving end, and a is a sequentially recorded index number of the RTCP report which is sent in sequence based on the time interval;
the processing module is specifically configured to obtain the delay jitter of the I frame according to the following formula:
DI jetter=DIk_avg-Da_avg
wherein D isI jetterFor delayed dithering of the I-frame, DIk_avgFor long-term smoothing of the transmission delay of the I-frame, Dl_avgLong-term smoothing of the transmission delay of video frames;
the processing module is specifically further configured to obtain the D by the following formulaIk_avg:
Wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the I frame is [0.0, 1.0 ]],DI(k-1)Equivalent transmission delay of the (k-1) th I frame;
the processing module is specifically configured to obtain the long-term smoothness of the transmission delay of the video frame according to the following formula:
wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the video frame is [0.0, 1.0 ]],Da-1Equivalent transmission delay for the a-1 st of said second RTCP reports, DaIs the equivalent transmission delay of the a-th said second RTCP report.
With reference to the first possible implementation manner of the third aspect, in a second possible implementation manner, the processing module is specifically further configured to obtain the D according to the following formula if there is a report from the first RTCP sender or a report from the first RTCP receiver is lost and cannot be calculatedIk:
DIk=DMax
Wherein D isMaxIs the defined maximum transmission delay;
the processing module is specifically configured to obtain the D according to the following formula if there is a failure in calculating that the second RTCP sender report or the second RTCP receiver report is losta:
Da=DMax。
With reference to the third aspect or any one of the foregoing possible implementation manners of the third aspect, in a third possible implementation manner, the jitter threshold includes: a first jitter threshold and a second jitter threshold;
the adjusting module is specifically configured to determine if DI jetterIf the jitter is larger than the first jitter threshold, I frame conversion is triggered, the next I frame is converted into a P frame or a B frame for coding every other I frame, and 1 is added to the accumulated conversion times m every time the I frame format is converted;
the adjusting module is specifically configured to add up to M times when the M values are greater than or equal to 1 or DI jetterIf R times are greater than the second jitter threshold value continuously, increasing the interval of adjacent I frames, wherein R is an integer greater than or equal to 1, and the second jitter threshold value is greater than the first jitter threshold value;
the processing module is further configured to obtain a new interval of adjacent I frames by the following equation:
DIst_new=DIst_old+Diststep
wherein D isIst_newFor the new interval of adjacent I frames, DIst_oldInterval of I frame, D, adopted for last timeiststepThe step size is changed for a preset I frame interval.
With reference to the third possible implementation manner of the third aspect, in a fourth possible implementation manner, DIst_oldInitial value of DIst_I,DIst_IIs the spacing of standard adjacent I frames.
With reference to the third possible implementation manner of the third aspect, in a fifth possible implementation manner, the adjusting module is specifically further configured to determine if D is the same as DIst_newAnd if the value is larger than or equal to the interval maximum value, the interval value of the new adjacent I frame is the interval maximum value.
With reference to the third possible implementation manner of the third aspect, in a sixth possible implementation manner, the adjusting module is further configured to determine that the cumulative number of times of conversion M does not reach M times, and the D number is smaller than MI jetterAnd if the jitter value is less than or equal to the first jitter threshold value, stopping the I frame conversion action.
With reference to the third possible implementation manner of the third aspect, in a seventh possible implementation manner, the adjusting module is further configured to determine if D is greater than a predetermined thresholdI jetterIf the continuous R times are less than or equal to the second jitter threshold, reducing the interval of I frames;
the processing module is further configured to obtain a new interval D of adjacent I frames by the following formulaIst_new:
DIst_new=DIst_old-Diststep。
With reference to the seventh possible implementation manner of the third aspect, in an eighth possible implementation manner, the adjusting module is specifically further configured to determine if D is greater than a predetermined thresholdIst_newInterval D less than or equal to standard adjacent I frameIst_IIf the new adjacent I frame interval is equal to DIst_I。
A fourth aspect of the present invention provides an I-frame adjusting apparatus, including:
the receiving module is used for receiving a first real-time transport control protocol (RTCP) sending end report sent by a sending end, wherein the first RTCP sending end report is associated with the I frame, and the first RTCP sending end report adopts a special bit mark as a special report corresponding to the I frame;
a sending module, configured to send a first RTCP receiver report to the sending end, where the first RTCP receiver report is associated with an I frame, the first RTCP receiver report includes a first processing delay, and the first processing delay is a delay from when the receiving end receives the first RTCP sending end report to when the receiving end sends the first RTCP receiver report;
the receiving module is further configured to receive a second RTCP sender report that is sent by the sender based on an RTCP report interval;
the sending module is further configured to send a second RTCP receiver report to the sending end based on an RTCP report interval, where the second RTCP receiver report includes a second processing delay, and the second processing delay is a delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiver report.
A fifth aspect of the present invention provides an I-frame adjustment system, comprising: the I-frame adjusting apparatus according to any one of the third aspect and the third possible implementation manner, and the I-frame adjusting apparatus according to the fourth aspect.
In the method, the apparatus, and the system for adjusting I frames provided in this embodiment, while sending an RTP packet for an I frame to a receiving end each time, a sending end sends a first RTCP sending end report associated with the I frame to the receiving end for each RTP packet for the I frame, and receives a first RTCP receiving end report sent by the receiving end, where the first RTCP receiving end report includes a first processing delay, and the first processing delay is a delay from the receiving end receiving the first sending end report to the receiving end sending the first receiving end report. And the sending end also needs to send a second RTCP sending end report to the receiving end and receive the second RTCP receiving end report sent by the receiving end, where the second RTCP receiving end report includes a second processing delay, and the second processing delay is a delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiving end report. Further, the sending end records a first timestamp, a second timestamp, a third timestamp and a fourth timestamp, wherein the first timestamp is the time when the sending end sends the first RTCP sending end report, the second timestamp is the time when the sending end receives the first RTCP receiving end report, the third timestamp is the time when the sending end sends the second RTCP sending end report, and the fourth timestamp is the time when the sending end receives the second RTCP receiving end report. And the sending end acquires the delay jitter of the I frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay and the second processing delay, and if the delay jitter of the I frame is greater than a jitter threshold, the interval of the adjacent I frame is increased for coding. Therefore, the adjustment of the interval of the I frame is realized according to the jitter of the I frame, and the video pause phenomenon caused by uneven jitter of the I frame is avoided while the decoding quality of the video data stream is ensured.
Drawings
Fig. 1 is a schematic flow chart of an I-frame adjustment method according to an embodiment of the present invention;
fig. 2 is a schematic diagram of an I-frame adjustment method according to an embodiment of the present invention;
fig. 3 is a schematic structural diagram of an I-frame adjusting apparatus according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of an I-frame adjusting apparatus according to an embodiment of the present invention;
fig. 5 is a schematic diagram of an I-frame adjustment system according to an embodiment of the present invention.
Detailed Description
In a monitoring scene, because a video picture is different from a movie or a television picture, inter-frame scene change exists, and thus, a certain correlation exists between adjacent frames of the monitoring scene in time, the interval of an I frame is set to be larger, so that the video quality is not greatly influenced.
However, if there is only P frame or B frame for a long time, the video coding parameters may be unstable, which will affect the coding quality, in order to obtain the balance between the video quality and the I frame interval, the I frame interval may be set according to the delay jitter of the I frame data, so as to reduce the delay caused by the I frame transmission delay as much as possible, and the following describes a scheme for adjusting the I frame interval by using a specific embodiment:
fig. 1 is a schematic flow chart of an I-frame adjustment method according to an embodiment of the present invention, and as shown in fig. 1, the execution main body is a sending end of a video data stream. The method comprises the following steps:
step 100, the sending end sends an I-frame Real-time Transport Protocol (RTP) packet to the receiving end each time, and sends a first Real-time Transport Control Protocol (RTCP) sending end report to the receiving end corresponding to each I-frame RTP packet, where the first RTCP sending end report is associated with an I-frame, and the first RTCP sending end report uses a special bit identifier as a special report corresponding to the I-frame.
Specifically, when the sending end sends an RTP packet of an I frame during data, one RTP packet may be sent at a time, or a plurality of RTP packets may be sent simultaneously, and each time an RTP packet is sent, a first RTCP sending end report is correspondingly sent once.
First RTCP sender report identification: with "profile-specific extensions", the upper 16 bits define a fixed value, e.g., 1010, that does not overlap with the real profile-specific extensions and cannot be invalid. The lower 8 bits are used to indicate that this first RTCP sender report is a special RTCP report sent for a corresponding I-frame.
Step 101, a sending end receives a first RTCP receiver report sent by a receiving end, the first RTCP receiver report is associated with an I frame, the first RTCP receiver report includes a first processing delay, and the first processing delay is a delay from the receiving end receiving the first RTCP receiver report to the receiving end sending the first RTCP receiver report.
Specifically, the first RTCP sender report is sent synchronously each time data is sent, so the transmission time reported by the first RTCP sender approximates the transmission time of equivalent data. The latency of the data may be evaluated by the reported loop back.
Step 102, the sender sends a second RTCP sender report to the receiver based on the RTCP report interval.
It should be noted that the second RTCP sender report is not associated with an I frame.
Step 103, the sending end receives a second RTCP receiver report sent by the receiving end based on the RTCP report interval, where the second RTCP receiver report includes a second processing delay, and the second processing delay is a delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiver report.
And step 104, the sending end records a first timestamp, a second timestamp, a third timestamp and a fourth timestamp, wherein the first timestamp is the time when the sending end sends the report of the first RTCP sending end, the second timestamp is the time when the sending end receives the report of the first RTCP receiving end, the third timestamp is the time when the sending end sends the report of the second RTCP sending end, and the fourth timestamp is the time when the sending end receives the report of the second RTCP receiving end.
And 105, the sending end acquires the delay jitter of the I frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay and the second processing delay.
And step 106, if the delay jitter of the I frame is larger than the jitter threshold, increasing the interval of the adjacent I pins for coding.
In the method for adjusting an I frame provided in this embodiment, while sending an I frame RTP packet to a receiving end each time, a sending end sends, to the receiving end, a first RTCP sending end report associated with the I frame for each I frame RTP packet, and receives a first RTCP receiving end report sent by the receiving end, where the first RTCP receiving end report includes a first processing delay, and the first processing delay is a delay from the receiving end receiving the first sending end report to the receiving end sending the first receiving end report. And the sending end also needs to send a second RTCP sending end report to the receiving end and receive the second RTCP receiving end report sent by the receiving end, where the second RTCP receiving end report includes a second processing delay, and the second processing delay is a delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiving end report. Further, the sending end records a first timestamp, a second timestamp, a third timestamp and a fourth timestamp, wherein the first timestamp is the time when the sending end sends the first RTCP sending end report, the second timestamp is the time when the sending end receives the first RTCP receiving end report, the third timestamp is the time when the sending end sends the second RTCP sending end report, and the fourth timestamp is the time when the sending end receives the second RTCP receiving end report. And the sending end acquires the delay jitter of the I frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay and the second processing delay, and if the delay jitter of the I frame is greater than a jitter threshold, the interval of the adjacent I frame is increased for coding. Therefore, the adjustment of the interval of the I frame is realized according to the jitter of the I frame, and the video pause phenomenon caused by uneven jitter of the I frame is avoided while the decoding quality of the video data stream is ensured.
Preferably, one possible implementation of step 105 in fig. 1 is:
obtaining the equivalent transmission delay of the I frame by the following formula:
wherein D isIkFor the equivalent transmission delay of the kth I frame,sending a first timestamp of a first RTCP sender report for the sender, the first RTCP sender report corresponding to an nth RTP packet of a kth I-frame,receiving a second timestamp reported by a first RTCP receiving end corresponding to the nth RTP packet of the kth I frame for a sending end, DLSRIknThe first processing delay contained in the report of the first RTCP receiving end, N is the number of RTP packets decomposed by the k-th I frame, and is an integer greater than or equal to 1And N has a value range of [1, N]And k is the index number of the I frame recorded in sequence.
Obtaining the equivalent transmission time delay of the video frame by the following formula:
wherein D isaFor the equivalent transmission delay of the RTP stream data,for the second RTCP sender to report a corresponding third timestamp sent based on the time interval,DLSR for a fourth timestamp corresponding to the reception of a second RTCP receiver report based on the time intervalaFor the second processing delay contained in the standard RTCP receiver report, a is the index number of the sequentially recorded RTCP report that is sent sequentially based on the time interval.
The delay jitter of the I frame is obtained by the following formula:
DI jetter=DIk_avg-Da_avg
wherein D isI jetterFor delayed dithering of I-frames, DIk_avgFor long-term smoothing of the transmission delay of I-frames, Da_avgLong-term smoothing of the transmission delay of video frames.
Obtaining D by the following formulaIk_avg:
Wherein,for performing equivalent transmission delay on I frameThe value range of the filter factor of the long-term smoothing is [0.0, 1.0 ]]The delay characteristic of the current I frame is considered, and the value may be set to 0.0. DI(k-1)Is the equivalent transmission delay of the (k-1) th I frame.
The long-term smoothing of the transmission delay of a video frame is obtained by the following formula:
wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the video frame is [0.0, 1.0 ]],Da-1Equivalent transmission delay for the a-1 st second RTCP report, DaThe equivalent transmission delay of the a-th second RTCP report.
Further, for a scene that the calculation cannot be performed if the first RTCP sender report or the first RTCP receiver report is lost, D is obtained by the following formulaIk:
DIk=DMax
Wherein D isMaxThe maximum transmission delay defined can be configured according to empirical or simulated values.
For the scene that the calculation cannot be carried out if the report of the second RTCP sending end or the report of the second RTCP receiving end is lost, the D is obtained by the following formulaa:
Da=DMax。
Preferably, the jitter threshold in the above embodiment includes: a first jitter threshold and a second jitter threshold.
Also, for step 106 in fig. 1, one possible implementation is:
when the I-frame transmission delay is continuously large, it is considered that the current signal state cannot be adapted, and I-frame interval adjustment is required, which has two ways, one of which can be used at the same time or the other one:
the first method is as follows: if D isI jetterIf the jitter is larger than the first jitter threshold value, I frame conversion is triggered, the next I frame is converted into a P frame or a B frame for coding every other I frame, and 1 is added to the accumulated conversion times m every time the I frame format is converted.
The second method comprises the following steps: when the M values are accumulated for M times, M is an integer greater than or equal to 1 or DI jetterAnd if the continuous R times are larger than a second jitter threshold value, increasing the interval of the adjacent I frames, wherein R is an integer larger than or equal to 1, and the second jitter threshold value is larger than the first jitter threshold value.
Wherein the interval of the new adjacent I frame is obtained by the following formula:
DIst_new=DIst_old+Diststep
wherein D isIst_newFor new interval of adjacent I-frames, DIst_oldInterval of I frame, D, adopted for last timeiststepThe step size is changed for a preset I frame interval.
In particular, if DIst_newAnd if the interval value is larger than or equal to the interval maximum value, the interval value of the new adjacent I frame is the interval maximum value.
In addition, D isIst_oldHas an initial value of DIst_I,DIst_IIs the interval of standard adjacent I frames, and continuously updates DIst_old=DIst_new。
Further, if the accumulated conversion times M does not reach M times, and DI jetterAnd if the jitter value is less than or equal to the first jitter threshold value, stopping the I frame conversion action.
If D isI jetterIf the continuous R times are less than or equal to the second jitter threshold, reducing the interval of the I frame; wherein the interval D of new adjacent I framesIst_newObtained by the following formula:
DIst_new=DIst_old-Diststep。
in particular, if DIst_newInterval D less than or equal to standard adjacent I frameIst_IThe interval of the new adjacent I frame is taken as DIst_I。
It should be noted that, after the sending end calculates the above I frame interval, the corresponding I frame interval is transmitted to the encoder, and the encoder encoding output is adjusted. And with the latest I frame as the starting point, the interval of a new I frame is determined again, and the corresponding frame type is configured as the I frame.
Fig. 2 is a schematic diagram of an I-frame adjusting method according to an embodiment of the present invention, where the main execution body is a receiving end of a video data stream. The method comprises the following steps:
step 200, the receiving end receives a first RTCP sending end report sent by the sending end, the first RTCP sending end report is associated with the I frame, and the first RTCP sending end report adopts a special bit mark as a special report corresponding to the I frame.
Step 201, the receiving end sends a first RTCP receiving end report to the sending end, the first RTCP receiving end report is associated with the I frame, the first RTCP receiving end report includes a first processing delay, and the first processing delay is a delay from the receiving end receiving the first RTCP sending end report to the receiving end sending the first RTCP receiving end report.
The receiver receives the first RTCP sender report, and replies a first RTCP receiver report each time the first RTCP sender report is received. The first RTCP receiver report needs to have an identification corresponding to the first RTCP sender report.
Step 202, the receiver receives a second RTCP sender report sent by the sender based on the RTCP report interval.
Step 203, the receiver sends a second RTCP receiver report to the sender based on the RTCP report interval, where the second RTCP receiver report includes a second processing delay, and the second processing delay is a delay from the receiver receiving the second RTCP sender report to the receiver sending the second RTCP receiver report.
In the method for adjusting an I frame provided in this embodiment, while sending an I frame RTP packet to a receiving end each time, the receiving end receives a first RTCP sending end report, which is sent by a sending end for each I frame RTP packet and is associated with an I frame, and sends the first RTCP receiving end report to the sending end, where the first RTCP receiving end report includes a first processing delay, and the first processing delay is a delay from the receiving end receiving the first sending end report to the receiving end sending the first receiving end report. And the receiving end also receives a second RTCP sending end report sent by the sending end and sends the second RTCP receiving end report to the sending end, wherein the second RTCP receiving end report comprises a second processing time delay, and the second processing time delay is the time delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiving end report. The method comprises the steps that a sending end records a first timestamp, a second timestamp, a third timestamp and a fourth timestamp, the first timestamp is the time when the sending end sends a first RTCP sending end report, the second timestamp is the time when the sending end receives a first RTCP receiving end report, the third timestamp is the time when the sending end sends a second RTCP sending end report, and the fourth timestamp is the time when the sending end receives a second RTCP receiving end report, and the delay jitter of an I frame is obtained according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, a first processing delay and a second processing delay, and if the delay jitter of the I frame is larger than a jitter threshold, the interval of adjacent I frames is increased for coding. Therefore, the adjustment of the interval of the I frame is realized according to the jitter of the I frame, and the video pause phenomenon caused by uneven jitter of the I frame is avoided while the decoding quality of the video data stream is ensured.
Fig. 3 is a schematic structural diagram of an I-frame adjusting device according to an embodiment of the present invention, where the I-frame adjusting device is disposed on a transmitting end, and the I-frame adjusting device includes: the device comprises a sending module 10, a receiving module 11, a processing module 12 and an adjusting module 13.
The sending module 10 is configured to send an I-frame RTP packet to the receiving end each time, and send a first RTCP sender report to the receiving end corresponding to each I-frame RTP packet, where the first RTCP sender report is associated with an I-frame, and the first RTCP sender report uses a special bit identifier as a special report corresponding to the I-frame.
The receiving module 11 is configured to receive a first RTCP receiver report sent by a receiver, where the first RTCP receiver report is associated with the I frame, and the first RTCP receiver report includes a first processing delay, where the first processing delay is a delay from when the receiver receives the first RTCP receiver report to when the receiver sends the first RTCP receiver report.
The sending module 10 is further configured to send a second RTCP sender report to the receiver based on the RTCP report interval.
The receiving module 11 is further configured to receive a second RTCP receiver report sent by the receiver based on the RTCP report interval, where the second RTCP receiver report includes a second processing delay, and the second processing delay is a delay from when the receiver receives the second RTCP sender report to when the receiver sends the second RTCP receiver report.
The processing module 12 is configured to record a first timestamp, a second timestamp, a third timestamp, and a fourth timestamp, where the first timestamp is a time when the sender sends a first RTCP sender report, the second timestamp is a time when the sender receives a first RTCP receiver report, the third timestamp is a time when the sender sends a second RTCP sender report, and the fourth timestamp is a time when the sender receives a second RTCP receiver report.
The processing module 12 is further configured to obtain the delay jitter of the I frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay, and the second processing delay.
And an adjusting module 13, configured to increase an interval between adjacent I pins for encoding if the delay jitter of the I frame is greater than a jitter threshold.
In the method for adjusting an I frame provided in this embodiment, while sending an I frame RTP packet to a receiving end each time, a sending module sends a first RTCP sending end report associated with the I frame to the receiving end for each I frame RTP packet, a receiving module receives the first RTCP receiving end report sent by the receiving end, the first RTCP receiving end report includes a first processing delay, and the first processing delay is a delay from the receiving end receiving the first RTCP sending end report to the receiving end sending the first receiving end report. And the sending module is further to send a second RTCP sending end report to the receiving end, and the receiving module receives the second RTCP receiving end report sent by the receiving end, where the second RTCP receiving end report includes a second processing delay, and the second processing delay is a delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiving end report. Further, the processing module records a first timestamp, a second timestamp, a third timestamp and a fourth timestamp, where the first timestamp is a time when the sender sends a first RTCP sender report, the second timestamp is a time when the sender receives a first RTCP receiver report, the third timestamp is a time when the sender sends a second RTCP sender report, and the fourth timestamp is a time when the sender receives a second RTCP receiver report. The processing module obtains delay jitter of the I frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay and the second processing delay, and if the delay jitter of the I frame is larger than a jitter threshold, the adjusting module increases an interval of adjacent I frames for encoding. Therefore, the adjustment of the interval of the I frame is realized according to the jitter of the I frame, and the video pause phenomenon caused by uneven jitter of the I frame is avoided while the decoding quality of the video data stream is ensured.
Further, the processing module 12 is specifically configured to obtain the equivalent transmission delay of the I frame according to the following formula:
wherein D isIkFor the equivalent transmission delay of the kth I frame,sending a first timestamp of a first RTCP sender report for the sender, the first RTCP sender report corresponding to an nth RTP packet of a kth I-frame,receiving a second timestamp reported by a first RTCP receiving end corresponding to the nth RTP packet of the kth I frame for a sending end, DLSRIknThe first processing delay contained in the report of the first RTCP receiving end, N is the number of RTP packets decomposed by the kth I frame and is an integer greater than or equal to 1, and the value range of N is [1, N%]And k is the index number of the I frame recorded in sequence.
The processing module 12 is further specifically configured to obtain the equivalent transmission delay of the video frame according to the following formula:
wherein D isaFor the equivalent transmission delay of the RTP stream data,for the second RTCP sender to report a corresponding third timestamp sent based on the time interval,DLSR for a fourth timestamp corresponding to the reception of a second RTCP receiver report based on the time intervalaFor the second processing delay contained in the standard RTCP receiver report, a is the index number of the sequentially recorded RTCP report that is sent sequentially based on the time interval.
The processing module 12 is further specifically configured to obtain the delay jitter of the I frame according to the following formula:
DI jetter=DIk_avg-Da_avg
wherein D isI jetterFor delayed dithering of I-frames, DIk_avgFor long-term smoothing of the transmission delay of I-frames, Da_avgLong-term smoothing of the transmission delay of video frames.
The processing module 12 is further configured to obtain D by the following formulaIk_avg:
Wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the I frame is [0.0, 1.0 ]],DI(k-1)Is the equivalent transmission delay of the (k-1) th I frame.
The processing module 12 is further specifically configured to obtain long-term smoothing of the transmission delay of the video frame according to the following formula:
wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the video frame is [0.0, 1.0 ]],Da-1Equivalent transmission delay for the a-1 st second RTCP report, DaThe equivalent transmission delay of the a-th second RTCP report.
Preferably, the processing module 12 is further configured to obtain D according to the following formula if there is a first RTCP sender report or a first RTCP receiver report is lost and cannot be calculatedIk:
DIk=DMax
Wherein D isMaxIs the defined maximum transmission delay.
The processing module 12 is further configured to obtain D according to the following formula if there is a second RTCP sender report or a second RTCP receiver report is lost and cannot be calculateda:
Da=DMax。
Further, the jitter threshold includes: a first jitter threshold and a second jitter threshold.
Thus, the adjustment module 13 is specifically adapted to the condition DI jetterIf the jitter is larger than the first jitter threshold value, I frame conversion is triggered, the next I frame is converted into a P frame or a B frame for coding every other I frame, and 1 is added to the accumulated conversion times m every time the I frame format is converted.
An adjusting module 13, configured to, when the M values are accumulated up to M times, M is an integer greater than or equal to 1 or DI jetterAnd if the continuous R times are larger than a second jitter threshold value, increasing the interval of the adjacent I frames, wherein R is an integer larger than or equal to 1, and the second jitter threshold value is larger than the first jitter threshold value.
The processing module 12 is further configured to obtain a new interval between adjacent I frames by the following formula:
DIst_new=DIst_old+Diststep
wherein D isIst_newIs the interval of the first adjacent I frame, DIst_oldInterval of I frame, D, adopted for last timeiststepThe step size is changed for a preset I frame interval.
In addition, D isIst_oldHas an initial value of DIst_I,DIst_IIs the spacing of standard adjacent I frames.
Preferably, the adjustment module 13 is also used in particular for the case DIst_newAnd if the interval value is larger than or equal to the interval maximum value, the interval value of the new adjacent I frame is the interval maximum value.
Further, the adjusting module 13 is further configured to determine that the accumulated number of times M has not reached M times and D has not reached M timesI jetterAnd if the jitter value is less than or equal to the first jitter threshold value, stopping the I frame conversion action.
Further, the adjustment module 13 is adapted to,also for if DI jetterIf the continuous R times are less than or equal to the second jitter threshold, reducing the interval of the I frame;
the processing module 12 is further configured to obtain a new interval D between adjacent I-frames by the following formulaIst_new:
DIst_new=DIst_old-Diststep。
Preferably, the adjustment module 13 is also used in particular for the case DIst_newInterval D less than or equal to standard adjacent I frameIst_IThe interval of the new adjacent I frame is taken as DIst_I。
Fig. 4 is a schematic structural diagram of an I-frame adjusting device according to an embodiment of the present invention, where the I-frame adjusting device is disposed at a receiving end, and the I-frame adjusting device includes: a receiving module 20 and a sending module 21.
The receiving module 20 is configured to receive a first RTCP sending end report sent by a sending end, where the first RTCP sending end report is associated with an I frame, and the first RTCP sending end report uses a special bit identifier as a special report corresponding to the I frame.
The sending module 21 is configured to send a first RTCP receiver report to the sending end, where the first RTCP receiver report is associated with the I frame, and the first RTCP receiver report includes a first processing delay, where the first processing delay is a delay from when the receiving end receives the first RTCP sending end report to when the receiving end sends the first RTCP receiver report.
The receiving module 20 is further configured to receive a second RTCP sender report sent by the sender based on the RTCP report interval.
The sending module 21 is further configured to send a second RTCP receiver report to the sending end based on the RTCP report interval, where the second RTCP receiver report includes a second processing delay, and the second processing delay is a delay from when the receiving end receives the second RTCP sender report to when the receiving end sends the second RTCP receiver report.
In the method for adjusting an I frame provided in this embodiment, while sending an I frame RTP packet to a receiving end each time, a receiving module receives a first RTCP sending end report, which is sent by a sending end for each I frame RTP packet and is associated with an I frame, and a sending module sends the first RTCP receiving end report to the sending end, where the first RTCP receiving end report includes a first processing delay, and the first processing delay is a delay from the receiving end receiving the first sending end report to the receiving end sending the first receiving end report. And the receiving module is also required to receive a second RTCP sending end report sent by the sending end, the sending module sends the second RTCP receiving end report to the sending end, the second RTCP receiving end report includes a second processing delay, and the second processing delay is a delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiving end report. The method comprises the steps that a sending end records a first timestamp, a second timestamp, a third timestamp and a fourth timestamp, the first timestamp is the time when the sending end sends a first RTCP sending end report, the second timestamp is the time when the sending end receives a first RTCP receiving end report, the third timestamp is the time when the sending end sends a second RTCP sending end report, and the fourth timestamp is the time when the sending end receives a second RTCP receiving end report, and the delay jitter of an I frame is obtained according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, a first processing delay and a second processing delay, and if the delay jitter of the I frame is larger than a jitter threshold, the interval of adjacent I frames is increased for coding. Therefore, the adjustment of the interval of the I frame is realized according to the jitter of the I frame, and the video pause phenomenon caused by uneven jitter of the I frame is avoided while the decoding quality of the video data stream is ensured.
Fig. 5 is a schematic diagram of an I-frame adjustment system according to an embodiment of the present invention, the system including: the I-frame adjusting device provided at the transmitting end and the I-frame adjusting device provided at the receiving end. Specifically, referring to fig. 5, the adjusting module 13 at the transmitting end is connected to the transmitting module 10 through the video coding layer at the transmitting end. Wherein, the sending module 10 of the sending end sends an RTP packet and a sending end report (the sending end report may be a first sending end report or a second sending end report); while the receiving module 11 receives the receiving-end report (the receiving-end report may be the first receiving-end report or the second receiving-end report) sent by the sending module 21 of the receiving end, the sending module 10 and the receiving module 11 send the processing module 12 the I-frame jitter parameter, where the I-frame jitter parameter includes the following: the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay and the second processing delay. The processing module 12 records the I-frame jitter parameter according to the I-frame jitter parameter, and obtains the delay jitter of the I-frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay, and the second processing delay. If the delay jitter of the I frame is greater than the jitter threshold, the adjusting module 13 increases the interval between adjacent I frames, adjusts the interval configuration of the I frames, and knows that the encoder of the video coding layer at the transmitting end encodes the video data according to the new interval of the I frames, and transmits the encoded video data to the receiving end receiving module 20 through the transmitting module 10. Therefore, the adjustment of the interval of the I frame is realized according to the jitter of the I frame, and the video pause phenomenon caused by uneven jitter of the I frame is avoided while the decoding quality of the video data stream is ensured.
Those of ordinary skill in the art will understand that: all or a portion of the steps of implementing the above-described method embodiments may be performed by hardware associated with program instructions. The program may be stored in a computer-readable storage medium. When executed, the program performs steps comprising the method embodiments described above; and the aforementioned storage medium includes: various media that can store program codes, such as ROM, RAM, magnetic or optical disks.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.
Claims (19)
1. An I frame adjusting method is applied to a sending end of a video data stream, and is characterized by comprising the following steps:
a sending end sends an I-frame real-time transport protocol (RTP) packet to a receiving end each time, and sends a first real-time transport control protocol (RTCP) sending end report to the receiving end corresponding to each I-frame RTP packet, wherein the first RTCP sending end report is associated with an I frame, and the first RTCP sending end report adopts a special report with a special bit mark as a corresponding I frame;
the sending end receives a first RTCP receiving end report sent by the receiving end, the first RTCP receiving end report is associated with an I frame, the first RTCP receiving end report comprises a first processing time delay, and the first processing time delay is the time delay from the receiving end receiving the first RTCP sending end report to the receiving end sending the first RTCP receiving end report;
the sending end sends a second RTCP sending end report to the receiving end based on the RTCP report interval;
the sending end receives a second RTCP receiving end report sent by the receiving end based on an RTCP report interval, the second RTCP receiving end report comprises a second processing time delay, and the second processing time delay is the time delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiving end report;
the sending end records a first timestamp, a second timestamp, a third timestamp and a fourth timestamp, wherein the first timestamp is the time when the sending end sends the report of the first RTCP sending end, the second timestamp is the time when the sending end receives the report of the first RTCP receiving end, the third timestamp is the time when the sending end sends the report of the second RTCP sending end, and the fourth timestamp is the time when the sending end receives the report of the second RTCP receiving end;
the sending end obtains the delay jitter of the I frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay and the second processing delay;
if the delay jitter of the I frame is larger than the jitter threshold, increasing the interval of the adjacent I needle for coding;
wherein, the obtaining, by the sending end, the delay jitter of the I frame according to the first timestamp, the second timestamp, and the processing delay includes:
obtaining the equivalent transmission time delay of the I frame by the following formula:
<mrow> <msub> <mi>D</mi> <mrow> <mi>I</mi> <mi>k</mi> </mrow> </msub> <mo>=</mo> <mrow> <mo>(</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>n</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <mfrac> <mrow> <msub> <mi>T</mi> <mrow> <msub> <mi>RR</mi> <mrow> <mi>s</mi> <mi>n</mi> </mrow> </msub> <mi>I</mi> <mi>k</mi> <mi>n</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>T</mi> <mrow> <msub> <mi>SR</mi> <mrow> <mi>s</mi> <mi>n</mi> </mrow> </msub> <mi>I</mi> <mi>k</mi> <mi>n</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>DLSR</mi> <mrow> <mi>I</mi> <mi>k</mi> <mi>n</mi> </mrow> </msub> </mrow> <mn>2</mn> </mfrac> <mo>)</mo> </mrow> <mo>&divide;</mo> <mi>N</mi> </mrow>
wherein D isIkFor the equivalent transmission delay of the kth I frame,sending a first timestamp of the first RTCP sender report for the sender, the first RTCP sender report corresponding to the nth RTP packet of the kth I frame,receiving a second timestamp of the first RTCP receiver report for the sender, the first RTCP receiver report corresponding to the nth RTP packet of the kth I frame, DLSRIknA first processing delay contained in said first RTCP receiver report, N being the number of RTP packets corresponding to said kth I-frame,should be an integer greater than or equal to 1, and the value range of N is [1, N%]K is the index number of the I frame recorded in sequence;
obtaining the equivalent transmission time delay of the video frame by the following formula:
<mrow> <msub> <mi>D</mi> <mi>a</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>T</mi> <mrow> <msub> <mi>RR</mi> <mi>a</mi> </msub> </mrow> </msub> <mo>-</mo> <msub> <mi>T</mi> <mrow> <msub> <mi>SR</mi> <mi>a</mi> </msub> </mrow> </msub> <mo>-</mo> <msub> <mi>DLSR</mi> <mi>a</mi> </msub> </mrow> <mn>2</mn> </mfrac> </mrow>
wherein D isaFor the equivalent transmission delay of the RTP stream data,reporting a corresponding third timestamp for the second RTCP sender report sent based on the time interval,DLSR for a fourth timestamp corresponding to said time interval-based receipt of said second RTCP receiver reportaA is a second processing time delay contained in the report of the standard RTCP receiving end, and a is a sequentially recorded index number of the RTCP report which is sent in sequence based on the time interval;
obtaining the delay jitter of the I frame by the following formula:
DI jetter=DIk_avg-Da_avg
wherein D isI jetterFor delayed dithering of the I-frame, DIk_avgFor long-term smoothing of the transmission delay of the I-frame, Da_avgLong-term smoothing of the transmission delay of video frames;
the D is obtained by the following formulaIk_avg:
<mrow> <msub> <mi>D</mi> <mrow> <mi>I</mi> <mi>k</mi> <mo>_</mo> <mi>a</mi> <mi>v</mi> <mi>g</mi> </mrow> </msub> <mo>=</mo> <msub> <mo>&part;</mo> <mn>1</mn> </msub> <mo>&times;</mo> <msub> <mi>D</mi> <mrow> <mi>I</mi> <mrow> <mo>(</mo> <mi>k</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mo>&part;</mo> <mn>1</mn> </msub> <mo>)</mo> </mrow> <msub> <mi>D</mi> <mrow> <mi>I</mi> <mi>k</mi> </mrow> </msub> </mrow>
Wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the I frame is [0.0, 1.0 ]],DI(k-1)Equivalent transmission delay of the (k-1) th I frame;
obtaining the long-term smoothness of the transmission delay of the video frame by the following formula:
<mrow> <msub> <mi>D</mi> <mrow> <mi>a</mi> <mo>_</mo> <mi>a</mi> <mi>v</mi> <mi>g</mi> </mrow> </msub> <mo>=</mo> <msub> <mo>&part;</mo> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>D</mi> <mrow> <mi>a</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mo>&part;</mo> <mn>2</mn> </msub> <mo>)</mo> </mrow> <msub> <mi>D</mi> <mi>a</mi> </msub> </mrow>
wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the video frame is [0.0, 1.0 ]],Da-1Equivalent transmission delay for the a-1 st of said second RTCP reports, DaIs the equivalent transmission delay of the a-th said second RTCP report.
2. The method of claim 1, wherein if there is the first RTCP sender report or the first RTCP receiver report is lost and cannot be calculated, the D is obtained according to the following formulaIk:
DIk=DMax
Wherein D isMaxIs the defined maximum transmission delay;
if the second RTCP sending end report or the second RTCP receiving end report is lost and can not be calculated, acquiring the D through the following formulaa:
Da=DMax。
3. The method of claim 1 or 2, wherein the jitter threshold comprises: a first jitter threshold and a second jitter threshold;
if the delay jitter of the I frame is greater than the jitter threshold, increasing the interval of the adjacent I pins for coding, including:
if said D isI jetterIf the jitter is larger than the first jitter threshold, I frame conversion is triggered, the next I frame is converted into a P frame or a B frame for coding every other I frame, and 1 is added to the accumulated conversion times m every time the I frame format is converted;
when the M values are accumulated for M times, M is an integer greater than or equal to 1 or DI jetterIf R times are greater than the second jitter threshold value continuously, increasing the interval of adjacent I frames, wherein R is an integer greater than or equal to 1, and the second jitter threshold value is greater than the first jitter threshold value;
wherein the interval of the new adjacent I frame is obtained by the following formula:
DIst_new=DIst_old+Diststep
wherein D isIst_newFor the new interval of adjacent I frames, DIst_oldInterval of I frame, D, adopted for last timeiststepThe step size is changed for a preset I frame interval.
4. The method of claim 3, wherein D isIst_oldInitial value of DIst_I,DIst_IIs the spacing of standard adjacent I frames.
5. The method of claim 3, wherein if D is saidIst_newAnd if the value is larger than or equal to the interval maximum value, the interval value of the new adjacent I frame is the interval maximum value.
6. The method of claim 3, further comprising:
if the accumulated conversion times M does not reach M times, and DI jetterAnd if the jitter value is less than or equal to the first jitter threshold value, stopping the I frame conversion action.
7. The method of claim 3, further comprising:
if said D isI jetterIf the continuous R times are less than or equal to the second jitter threshold, reducing the interval of I frames; wherein the interval D of new adjacent I framesIst_newObtained by the following formula:
DIst_new=DIst_old-Diststep。
8. the method of claim 7, wherein if D is greater thanIst_newInterval D less than or equal to standard adjacent I frameIst_IIf the new adjacent I frame interval is equal to DIst_I。
9. An I frame adjusting method applied to a receiving end of a video data stream is characterized by comprising the following steps:
a receiving end receives a first real-time transport control protocol (RTCP) sending end report sent by a sending end, wherein the first RTCP sending end report is associated with an I frame, and the first RTCP sending end report adopts a special bit mark as a special report corresponding to the I frame;
the receiving end sends a first RTCP receiving end report to the sending end, the first RTCP receiving end report is associated with an I frame, the first RTCP receiving end report comprises a first processing time delay, and the first processing time delay is the time delay from the receiving end receiving the first RTCP sending end report to the receiving end sending the first RTCP receiving end report;
the receiving end receives a second RTCP sending end report sent by the sending end based on an RTCP report interval;
and the receiving terminal sends a second RTCP receiving terminal report to the sending terminal based on the RTCP report interval, wherein the second RTCP receiving terminal report comprises a second processing time delay, and the second processing time delay is the time delay from the receiving terminal receiving the second RTCP sending terminal report to the receiving terminal sending the second RTCP receiving terminal report.
10. An I frame adjusting device is arranged at a sending end and is characterized by comprising:
a sending module, configured to send an I-frame real-time transport protocol RTP packet to a receiving end each time, send a first real-time transport control protocol RTCP sender report to the receiving end corresponding to each I-frame RTP packet, where the first RTCP sender report is associated with an I-frame, and the first RTCP sender report uses a special bit identifier as a special report corresponding to the I-frame;
a receiving module, configured to receive a first RTCP receiver report sent by the receiver, where the first RTCP receiver report is associated with an I frame, the first RTCP receiver report includes a first processing delay, and the first processing delay is a delay from when the receiver receives the first RTCP sender report to when the receiver sends the first RTCP receiver report;
the sending module is further configured to send a second RTCP sender report to the receiving end based on an RTCP report interval;
the receiving module is further configured to receive a second RTCP receiver report that is sent by the receiver based on an RTCP report interval, where the second RTCP receiver report includes a second processing delay, and the second processing delay is a delay from when the receiver receives the second RTCP sender report to when the receiver sends the second RTCP receiver report;
a processing module, configured to record a first timestamp, a second timestamp, a third timestamp, and a fourth timestamp, where the first timestamp is a time when the sender sends the first RTCP sender report, the second timestamp is a time when the sender receives the first RTCP receiver report, the third timestamp is a time when the sender sends the second RTCP sender report, and the fourth timestamp is a time when the sender receives the second RTCP receiver report;
the processing module is further configured to obtain a delay jitter of the I frame according to the first timestamp, the second timestamp, the third timestamp, the fourth timestamp, the first processing delay, and the second processing delay;
the adjusting module is used for increasing the interval of the adjacent I needle for coding if the delay jitter of the I frame is greater than a jitter threshold;
the processing module is specifically configured to obtain the equivalent transmission delay of the I frame according to the following formula:
<mrow> <msub> <mi>D</mi> <mrow> <mi>I</mi> <mi>k</mi> </mrow> </msub> <mo>=</mo> <mrow> <mo>(</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>n</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <mfrac> <mrow> <msub> <mi>T</mi> <mrow> <msub> <mi>RR</mi> <mrow> <mi>s</mi> <mi>n</mi> </mrow> </msub> <mi>I</mi> <mi>k</mi> <mi>n</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>T</mi> <mrow> <msub> <mi>SR</mi> <mrow> <mi>s</mi> <mi>n</mi> </mrow> </msub> <mi>I</mi> <mi>k</mi> <mi>n</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>DLSR</mi> <mrow> <mi>I</mi> <mi>k</mi> <mi>n</mi> </mrow> </msub> </mrow> <mn>2</mn> </mfrac> <mo>)</mo> </mrow> <mo>&divide;</mo> <mi>N</mi> </mrow>
wherein D isIkFor the equivalent transmission delay of the kth I frame,sending a first timestamp of the first RTCP sender report for the sender, the first RTCP sender report corresponding to the nth RTP packet of the kth I frame,receiving a second timestamp of the first RTCP receiver report for the sender, the first RTCP receiver report corresponding to the nth RTP packet of the kth I frame, DLSRIknA first processing delay contained in the report of the first RTCP receiving end, wherein N is the number of RTP packets decomposed by the kth I frame and is an integer greater than or equal to 1, and the value range of N is [1, N [ ]]K is the index number of the I frame recorded in sequence;
the processing module is specifically configured to obtain the equivalent transmission delay of the video frame according to the following formula:
<mrow> <msub> <mi>D</mi> <mi>a</mi> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>T</mi> <mrow> <msub> <mi>RR</mi> <mi>a</mi> </msub> </mrow> </msub> <mo>-</mo> <msub> <mi>T</mi> <mrow> <msub> <mi>SR</mi> <mi>a</mi> </msub> </mrow> </msub> <mo>-</mo> <msub> <mi>DLSR</mi> <mi>a</mi> </msub> </mrow> <mn>2</mn> </mfrac> </mrow>
wherein D isaFor the equivalent transmission delay of the RTP stream data,reporting a corresponding third timestamp for the second RTCP sender report sent based on the time interval,DLSR for a fourth timestamp corresponding to said time interval-based receipt of said second RTCP receiver reportaA is a second processing time delay contained in the report of the standard RTCP receiving end, and a is a sequentially recorded index number of the RTCP report which is sent in sequence based on the time interval;
the processing module is specifically configured to obtain the delay jitter of the I frame according to the following formula:
DI jetter=DIk_avg-Da_avg
wherein D isI jetterFor delayed dithering of the I-frame, DIk_avgFor long-term smoothing of the transmission delay of the I-frame, Da_avgLong-term smoothing of the transmission delay of video frames;
the processing module is specifically further configured to obtain the D by the following formulaIk_avg:
<mrow> <msub> <mi>D</mi> <mrow> <mi>I</mi> <mi>k</mi> <mo>_</mo> <mi>a</mi> <mi>v</mi> <mi>g</mi> </mrow> </msub> <mo>=</mo> <msub> <mo>&part;</mo> <mn>1</mn> </msub> <mo>&times;</mo> <msub> <mi>D</mi> <mrow> <mi>I</mi> <mrow> <mo>(</mo> <mi>k</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mo>&part;</mo> <mn>1</mn> </msub> <mo>)</mo> </mrow> <msub> <mi>D</mi> <mrow> <mi>I</mi> <mi>k</mi> </mrow> </msub> </mrow>
Wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the I frame is [0.0, 1.0 ]],DI(k-1)Equivalent transmission delay of the (k-1) th I frame;
the processing module is specifically configured to obtain the long-term smoothness of the transmission delay of the video frame according to the following formula:
<mrow> <msub> <mi>D</mi> <mrow> <mi>a</mi> <mo>_</mo> <mi>a</mi> <mi>v</mi> <mi>g</mi> </mrow> </msub> <mo>=</mo> <msub> <mo>&part;</mo> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>D</mi> <mrow> <mi>a</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mo>&part;</mo> <mn>2</mn> </msub> <mo>)</mo> </mrow> <msub> <mi>D</mi> <mi>a</mi> </msub> </mrow>
wherein,the value range of the filter factor for carrying out long-term smoothing on the equivalent transmission delay of the video frame is [0.0, 1.0 ]],Da-1Equivalent transmission delay for the a-1 st of said second RTCP reports, DaIs the equivalent transmission delay of the a-th said second RTCP report.
11. The apparatus of claim 10, wherein the processing module is further configured to obtain the D according to the following formula if there is the first RTCP sender report or the first RTCP receiver report is lost and cannot be calculatedIk:
DIk=DMax
Wherein D isMaxIs the defined maximum transmission delay;
the processing module is specifically configured to obtain the D according to the following formula if there is a failure in calculating that the second RTCP sender report or the second RTCP receiver report is losta:
Da=DMax。
12. The apparatus of claim 10 or 11, wherein the jitter threshold comprises: a first jitter threshold and a second jitter threshold;
the adjusting module is particularly used forIf said D isI jetterIf the jitter is larger than the first jitter threshold, I frame conversion is triggered, the next I frame is converted into a P frame or a B frame for coding every other I frame, and 1 is added to the accumulated conversion times m every time the I frame format is converted;
the adjusting module is specifically configured to add up to M times when the M values are greater than or equal to 1 or DI jetterIf R times are greater than the second jitter threshold value continuously, increasing the interval of adjacent I frames, wherein R is an integer greater than or equal to 1, and the second jitter threshold value is greater than the first jitter threshold value;
the processing module is further configured to obtain a new interval of adjacent I frames by the following equation:
DIst_new=DIst_old+Diststep
wherein D isIst_newFor the new interval of adjacent I frames, DIst_oldInterval of I frame, D, adopted for last timeiststepThe step size is changed for a preset I frame interval.
13. The device of claim 12, wherein D isIst_oldInitial value of DIst_I,DIst_IIs the spacing of standard adjacent I frames.
14. The apparatus according to claim 12, wherein the adjustment module is further configured to adjust the value of D if DIst_newAnd if the value is larger than or equal to the interval maximum value, the interval value of the new adjacent I frame is the interval maximum value.
15. The apparatus of claim 12, wherein the adjusting module is further configured to determine D if the accumulated number of transitions M has not reached M timesI jetterAnd if the jitter value is less than or equal to the first jitter threshold value, stopping the I frame conversion action.
16. The garment of claim 12Wherein the adjusting module is further configured to determine if D is greater than a predetermined thresholdI jetterIf the continuous R times are less than or equal to the second jitter threshold, reducing the interval of I frames;
the processing module is further configured to obtain a new interval D of adjacent I frames by the following formulaIst_new:
DIst_new=DIst_old-Diststep。
17. The apparatus according to claim 16, wherein the adjustment module is further configured to adjust the value of D if DIst_newInterval D less than or equal to standard adjacent I frameIst_IIf the new adjacent I frame interval is equal to DIst_I。
18. An I frame adjusting device, disposed at a receiving end, includes:
the receiving module is used for receiving a first real-time transport control protocol (RTCP) sending end report sent by a sending end, wherein the first RTCP sending end report is associated with the I frame, and the first RTCP sending end report adopts a special bit mark as a special report corresponding to the I frame;
a sending module, configured to send a first RTCP receiver report to the sending end, where the first RTCP receiver report is associated with an I frame, the first RTCP receiver report includes a first processing delay, and the first processing delay is a delay from when the receiving end receives the first RTCP sending end report to when the receiving end sends the first RTCP receiver report;
the receiving module is further configured to receive a second RTCP sender report that is sent by the sender based on an RTCP report interval;
the sending module is further configured to send a second RTCP receiver report to the sending end based on an RTCP report interval, where the second RTCP receiver report includes a second processing delay, and the second processing delay is a delay from the receiving end receiving the second RTCP sending end report to the receiving end sending the second RTCP receiver report.
19. An I-frame adjustment system, comprising: the I-frame adjusting apparatus of any one of claims 10-17, the I-frame adjusting apparatus of claim 18.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310731550.6A CN104754339B (en) | 2013-12-26 | 2013-12-26 | I framing control method, apparatus and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310731550.6A CN104754339B (en) | 2013-12-26 | 2013-12-26 | I framing control method, apparatus and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104754339A CN104754339A (en) | 2015-07-01 |
CN104754339B true CN104754339B (en) | 2018-02-13 |
Family
ID=53593360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310731550.6A Active CN104754339B (en) | 2013-12-26 | 2013-12-26 | I framing control method, apparatus and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104754339B (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108809850B (en) * | 2017-05-03 | 2021-11-30 | 成都鼎桥通信技术有限公司 | State feedback method and device of transmission channel |
JP6630323B2 (en) * | 2017-08-31 | 2020-01-15 | 慎之輔 浅原 | Video distribution device, method, program, video distribution system |
CN109861789B (en) * | 2019-01-15 | 2021-09-07 | 北京临近空间飞行器系统工程研究所 | Assembly line telemetering data batch processing system suitable for slow-recording and fast-sending |
CN113068001B (en) * | 2019-12-16 | 2022-10-04 | 浙江宇视科技有限公司 | Data processing method, device, equipment and medium based on cascade camera |
CN113452953B (en) * | 2020-03-26 | 2022-06-14 | 浙江宇视科技有限公司 | Video stream transmission control method, device, equipment and medium |
CN113259717B (en) * | 2021-07-15 | 2021-09-14 | 腾讯科技(深圳)有限公司 | Video stream processing method, device, equipment and computer readable storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1980238A (en) * | 2006-10-30 | 2007-06-13 | 上海广电(集团)有限公司中央研究院 | II.264 flow-media transmission control method based on real-time transmission/control protocl |
CN1996897A (en) * | 2005-12-28 | 2007-07-11 | 中兴通讯股份有限公司 | A method for real time detection of the network transfer delay in the RTP |
JP3948597B2 (en) * | 2000-03-08 | 2007-07-25 | Kddi株式会社 | Moving picture compression encoding transmission apparatus, reception apparatus, and transmission / reception apparatus |
CN101699867A (en) * | 2009-10-28 | 2010-04-28 | 武汉世纪信通通信产业有限公司 | Dynamic adjustment method of video data transmission rate |
CN101909208B (en) * | 2010-08-05 | 2012-06-20 | 浙江工业大学 | Video wireless transmission control method suitable for CDMA2000 |
-
2013
- 2013-12-26 CN CN201310731550.6A patent/CN104754339B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3948597B2 (en) * | 2000-03-08 | 2007-07-25 | Kddi株式会社 | Moving picture compression encoding transmission apparatus, reception apparatus, and transmission / reception apparatus |
CN1996897A (en) * | 2005-12-28 | 2007-07-11 | 中兴通讯股份有限公司 | A method for real time detection of the network transfer delay in the RTP |
CN1980238A (en) * | 2006-10-30 | 2007-06-13 | 上海广电(集团)有限公司中央研究院 | II.264 flow-media transmission control method based on real-time transmission/control protocl |
CN101699867A (en) * | 2009-10-28 | 2010-04-28 | 武汉世纪信通通信产业有限公司 | Dynamic adjustment method of video data transmission rate |
CN101909208B (en) * | 2010-08-05 | 2012-06-20 | 浙江工业大学 | Video wireless transmission control method suitable for CDMA2000 |
Also Published As
Publication number | Publication date |
---|---|
CN104754339A (en) | 2015-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104754339B (en) | I framing control method, apparatus and system | |
KR100537499B1 (en) | Method of generating transmission control parameter and selective retranmission method according to the packet characteristics. | |
US8320364B2 (en) | Control of bit-rate and packet duplication in a real-time media stream | |
CN105704580B (en) | A kind of video transmission method | |
US10602139B2 (en) | Embedded multimedia systems with adaptive rate control for power efficient video streaming | |
CN100591124C (en) | Code rate control method for video coding and video data emission device | |
CN101909208B (en) | Video wireless transmission control method suitable for CDMA2000 | |
KR101122143B1 (en) | Signaling buffer parameters indicative of receiver buffer architecture | |
KR20140098248A (en) | Dynamic modification of video properties | |
US10944973B2 (en) | Estimation of video quality of experience on media servers | |
KR20180031016A (en) | Downside of the transmitter side video phone | |
JP3730974B2 (en) | Media transmission method and transmission device therefor | |
CN101699867A (en) | Dynamic adjustment method of video data transmission rate | |
CN110996103A (en) | Method for adjusting video coding rate according to network condition | |
CN101931799A (en) | Method and device for smoothing video bit stream | |
JP2017069849A (en) | Video control device, video distribution system and video control method | |
US8904024B2 (en) | System and method for low delay fast update for video streaming | |
JP3838511B2 (en) | Video compression encoding transmission / reception device | |
Van Beek et al. | Delay-constrained rate adaptation for robust video transmission over home networks | |
JP5877960B2 (en) | Receiving apparatus, system, program and method for controlling video frame rate based on transmission bit rate | |
JP2005033556A (en) | Data transmitter, data transmitting method, data receiver, data receiving method | |
Ma et al. | Early packet loss feedback for webrtc-based mobile video telephony over Wi-Fi | |
Wei et al. | Prioritized retransmission for error protection of video streaming over WLANs | |
Wu et al. | Adaptive source-FEC coding for energy-efficient surveillance video over wireless networks | |
EP2911406A1 (en) | Method and device for encoding a video |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |