A method and system for shielding real-time interactive video streaming from cellular network jitter
By working together between the receiver and transmitter, and using frame interaction time and reception rate information to make bitrate decisions, the problem of unstable user experience caused by cellular network jitter is solved, and better video stream optimization is achieved.
Patent Information
- Application Number
- CN202211697204.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-28
- Publication Date
- 2026-01-23
- Estimated Expiration
- 2042-12-28
AI Technical Summary
In existing technologies, jitter in cellular networks leads to unstable service quality and user viewing experience for real-time interactive video. Traditional algorithms are too conservative when dealing with jitter, which affects the user experience.
By obtaining the video frame interaction time and reception rate at the receiving end, the sending end determines the user experience status and network congestion status based on this information, makes bitrate decisions, designs new RTCP message feedback frame delivery time and reception rate to distinguish between real congestion and irregular jitter, and adjusts the bitrate to optimize the user experience.
It effectively distinguishes between real congestion and irregular jitter in cellular networks, improving the user viewing experience and maintaining stable service quality.
Smart Images

Figure CN116471261B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of video optimization technology, and in particular to a method and system for optimizing real-time interactive video streams by shielding against cellular network jitter. Background Technology
[0002] Currently, the growth rate of real-time interactive video streaming is accelerating, and some traditional offline activities are being replaced by real-time interactive video, such as remote teaching, remote interviews, and remote meetings. Current mainstream real-time interactive video applications, such as Taobao Live and Tencent Meeting, are all based on WebRTC (Web Real-Time Communications) or its variants, with modifications and optimizations. Real-time interactive video frameworks, led by WebRTC, are based on the RTP (Real-time Transport Protocol) and RTCP (RTP control protocol) protocol suite.
[0003] Since the 1980s, wireless networks have flourished worldwide, and people have increasingly preferred to use them for their daily online activities. Now, almost every household uses Wi-Fi, and people use cellular networks for essential online activities when they are out and about. The advent of 5G (5th Generation Mobile Network) has also provided greater bandwidth and lower latency. Abundant network resources can provide users with higher quality and more stable network application services, which has stimulated the development of network applications such as real-time interactive video. Real-time interactive video requires stable network bandwidth and latency to ensure its stability and real-time performance. However, in reality, wireless networks, especially cellular networks, are often unstable and plagued by jitter, which can be summarized in two aspects: bandwidth jitter and latency jitter.
[0004] Bandwidth jitter exists in cellular networks, which is related to the network's scheduling mechanism. Specifically, in a cellular network, user equipment (UE) acting as a client needs to periodically send scheduling requests (SRs) to the base station to request resource blocks (RBs). The number of RBs acquired determines the amount of bandwidth the UE can obtain. In actual communication, the number of RBs acquired by the UE is affected by factors such as the number of other devices at the base station and the transmission loss of the wireless network channel. Specifically, user movement changes the number of users at the base station, thus affecting the bandwidth allocated to each UE. Natural physical factors such as weather and obstructions can cause transmission loss in the wireless channel, resulting in some data packets failing to reach the receiver. Cellular networks are rife with latency jitter, and the causes are complex. Common factors contributing to transmission delays in cellular networks include DRX doze latency (due to discontinuous reception) and scheduling latency. These delays are often difficult to predict and model.
[0005] The existence of these two types of jitter renders traditional algorithms for optimizing Quality of Service (QoS) based on the transport layer inadequate, such as the RTT-sensitive GCC and BBR algorithms. Their overly conservative decision-making in the face of jitter disastrously harms the viewing experience for users.
[0006] Therefore, existing technologies still need to be improved and enhanced. Summary of the Invention
[0007] The technical problem to be solved by the present invention is to provide a method and system for optimizing real-time interactive video streams by shielding cellular network jitter, in order to address the above-mentioned deficiencies of the prior art.
[0008] To solve the above-mentioned technical problems, the technical solution adopted by the present invention is as follows:
[0009] In a first aspect, the present invention provides a method for optimizing real-time interactive video streams by shielding against cellular network jitter, wherein the method includes:
[0010] The receiving end obtains the frame interaction time and reception rate of the video, and sends the frame delivery time and reception rate to the sending end in the form of RTCP packets;
[0011] The sending end determines the user experience status based on the frame delivery time and the network congestion status based on the receiving rate;
[0012] The sending end makes a bitrate decision based on the user experience status and the network congestion status.
[0013] In one implementation, sending the frame delivery time and the reception rate to the sender in the form of RTCP packets includes:
[0014] The frame delivery time is sent to the sending end in the form of a DIFB message;
[0015] The receiving rate is sent to the sending end in the form of an RR message.
[0016] In one implementation, the sending end determines the user experience status based on the frame delivery time, including:
[0017] Define the frame delivery time of any video frame in the video stream, and determine the rationality of the frame delivery time setting;
[0018] Based on the aforementioned rationality, the frame drop rate is determined, and a modeling equation reflecting the user experience state is constructed based on the frame drop rate. The user experience state is then determined based on the modeling equation.
[0019] In one implementation, the frame delivery time is defined as:
[0020]
[0021] in, Let j be the rendering time of the j-th video frame. Let T be the predicted arrival time of the j-th video frame in real-time web communication. decode jitter_delay is the time taken to decode video frames for real-time web communication. j The jitter delay set for the j-th video frame in real-time web communication.
[0022] In one implementation, determining the reasonableness of the frame delivery time setting includes:
[0023] Establish the formula:
[0024] If DIFF j A value >0 indicates that the video frame was delivered on time, thus confirming that the frame delivery time setting is reasonable.
[0025] If DIFF j A value less than 0 indicates a delayed delivery of video frames, which means the frame delivery time setting is unreasonable.
[0026] In one implementation, the formula for the frame drop rate is:
[0027]
[0028] in, Let i be the total number of video frames sent from the transmitter to the receiver at time i. This represents the total number of frames where DIFF < 0 at time i.
[0029] In one implementation, the modeling equation for the user experience state is:
[0030] QoE i =P i +βR(DIFF_ratio i )+γ(P i -P i-1 );
[0031] In the formula, P i For the video quality at time i, P i-1 For the video quality at time i-1, βR(DIFF_ratio) i γ(P) represents the penalty for video stuttering, β represents the weight of the penalty; i -P i-1 ) represents the penalty for video smoothness, and γ represents the penalty for video smoothness.
[0032] In one implementation, determining the user experience state based on the modeling equation includes:
[0033] Frame delivery time-related information is stored in a queue, and the frame loss rate is calculated.
[0034] If the frame drop rate is less than a preset window threshold, the user experience state is determined to be the true state.
[0035] If the frame drop rate is greater than a preset window threshold, the user experience state is determined to be unreal.
[0036] In one implementation, the mechanism for determining the network congestion state based on the receiving rate is as follows:
[0037]
[0038] Where r is the current estimated receiving rate, r avg The weighted average of the 50 historical acceptance rates is σ, which is used to balance the average and the current estimate, and σ is 0.75.
[0039] In one implementation, the sending end makes a bitrate decision based on the user experience state and the network congestion state, including:
[0040] If the user experience state is real and the network congestion state is real, then the final bitrate B i For ravg r avg The weighted average of the 50 historical reception rates;
[0041] If the user experience state is real and the network congestion state is unreal, then the final bitrate B i For max(b) i ,b i-1 ), b i b i-1 It is the bit rate estimated by the GCC algorithm at time i and time i-1;
[0042] If the user experience state is not real and the network congestion state is real, then the final bitrate B i For b i ;
[0043] If the user experience state is not real and the network congestion state is not real, then the final bitrate B i For b i .
[0044] Secondly, embodiments of the present invention also provide a real-time interactive video stream optimization system for shielding cellular network jitter, characterized in that the system comprises: a transmitting end and a receiving end, wherein,
[0045] The receiving end is used to obtain the frame interaction time and reception rate of the video, and send the frame delivery time and reception rate to the sending end in the form of RTCP packets;
[0046] The sending end is used to determine the user experience status based on the frame delivery time, and to determine the network congestion status based on the receiving rate, and to make a bitrate decision based on the user experience status and the network congestion status.
[0047] Thirdly, embodiments of the present invention also provide a terminal device, wherein the terminal device is applied to a receiving end or a transmitting end, including a memory, a processor, and a real-time interactive video stream optimization program for shielding cellular network jitter stored in the memory and executable on the processor. When the processor executes the real-time interactive video stream optimization program for shielding cellular network jitter, it implements the steps of the real-time interactive video stream optimization method for shielding cellular network jitter in any of the above-mentioned schemes.
[0048] Fourthly, embodiments of the present invention also provide a computer-readable storage medium storing a real-time interactive video stream optimization program for shielding cellular network jitter. When the real-time interactive video stream optimization program for shielding cellular network jitter is executed by a processor, it implements the steps of the real-time interactive video stream optimization method for shielding cellular network jitter as described in any of the above solutions.
[0049] Beneficial Effects: Compared with existing technologies, this invention provides a real-time interactive video stream optimization method that shields against cellular network jitter. First, the receiving end acquires the frame delivery time and reception rate of the video, and sends these data to the sending end in the form of RTCP packets. Then, the sending end determines the user experience status based on the frame delivery time and the network congestion status based on the reception rate. Finally, the sending end makes a bitrate decision based on the user experience status and the network congestion status. This invention can distinguish between genuine congestion and irregular jitter in cellular networks and make reasonable decisions to maximize the user's viewing experience and maintain stable service quality. Attached Figure Description
[0050] Figure 1 A flowchart illustrating a specific implementation of the real-time interactive video stream optimization method for shielding cellular network jitter provided in this embodiment of the invention.
[0051] Figure 2 This is a schematic diagram of the DIFB message format in the real-time interactive video stream optimization method for shielding cellular network jitter provided in an embodiment of the present invention.
[0052] Figure 3 This is an overall architecture diagram of the real-time interactive video stream optimization system for shielding cellular network jitter provided in an embodiment of the present invention.
[0053] Figure 4 This is a block diagram illustrating the internal structure of the terminal device provided in an embodiment of the present invention. Detailed Implementation
[0054] To make the objectives, technical solutions, and effects of this invention clearer and more explicit, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
[0055] This embodiment provides a method for optimizing real-time interactive video streams by mitigating cellular network jitter. First, the receiving end acquires the frame delivery time and reception rate of the video, and sends these data to the sending end in the form of RTCP packets. Then, the sending end determines the user experience status based on the frame delivery time and the network congestion status based on the reception rate. Finally, the sending end makes a bitrate decision based on the user experience status and the network congestion status. This embodiment can distinguish between genuine congestion and irregular jitter in the cellular network and make reasonable decisions to maximize the user's viewing experience and maintain stable service quality.
[0056] Exemplary methods
[0057] The real-time interactive video stream optimization method for shielding cellular network jitter in this embodiment can be applied to terminal devices, such as computers, mobile phones, smart TVs, and other intelligent products. Figure 1 As shown in the figure, the real-time interactive video stream optimization method for shielding cellular network jitter in this embodiment includes the following steps:
[0058] Step S100: The receiving end obtains the frame interaction time and reception rate of the video, and sends the frame delivery time and reception rate to the sending end in the form of RTCP packets.
[0059] In this embodiment, the receiving end first obtains the frame delivery time (FDT) and the receiving rate of the video. Then, it feeds back the frame delivery time to the sending end in the form of a DIFB (Diff Information Feedback) message, and sends the receiving rate to the sending end in the form of an RR (Reveiver Report) message. It can be seen that in this embodiment, after receiving the frame delivery time and the receiving rate, the receiving end sends them to the sending end in the form of RTCP (RTP control Protocol) messages. The specific message format is as follows: Figure 2 As shown in the image.
[0060] Step S200: The sending end determines the user experience status based on the frame delivery time and the network congestion status based on the receiving rate.
[0061] When the sending end receives the RTCP data packet from the sending end, it parses the RTCP data packet to obtain the Frame Delivery Time (FDT) and the receiving rate. Then, the sending end uses the FDT to determine the Quality of Experience (QoE) status (i.e., user experience status) and the receiving rate to determine the network congestion status.
[0062] Specifically, in this embodiment, when determining the user experience state based on the frame delivery time, the frame delivery time of any video frame in the video stream is first defined, and the rationality of the frame delivery time setting is determined. Then, based on the rationality, the frame drop rate is determined, and a modeling equation reflecting the user experience state is constructed based on the frame drop rate. Finally, the user experience state is determined based on the modeling equation.
[0063] In practical applications, this embodiment uses the frame delivery time obtained by the receiving end to determine the QoE state. The scheme models QoE as follows:
[0064] QoE i =P i +βR(stall)+γ(Pi -P i-1 (1)
[0065] In the formula, P i For the video quality at time i, P i-1 Let be the video quality at time i-1; βR(stall) be the penalty for video stuttering, where β is the weight of the penalty; γ(P) i -P i-1 ) represents the penalty for video smoothness, where γ is the penalty for video smoothness.
[0066] In real-time interactive video applications, video quality can be approximated by the video bitrate, which is directly determined by the GCC's decision bitrate and is easily obtained at the sending end. However, the video stuttering penalty is difficult for the sending end to obtain. In this embodiment, the frame delivery time (FDT) is used to define the stuttering penalty, as follows:
[0067] The delivery time of WebRTC for the j-th video frame can be defined as Equation (2):
[0068]
[0069] In the formula, Let j be the rendering time of the j-th video frame. Let T be the arrival time of the j-th video frame predicted by WebRTC. decode jitter_delay is the time taken for WebRTC to decode video frames. j Sets the jitter delay for the j-th video frame in WebRTC.
[0070] When the actual arrival time of the video frame When the video frame is rendered and played in time, it will be rendered and played on schedule. Conversely, when... When the frame drop rate increases, the receiving end will discard corresponding video frames to meet real-time requirements. Once the frame drop rate increases, the video will stutter or even stop.
[0071] This embodiment uses the following equation (3) to define DIFF to measure the rationality of the FDT setting in WebRTC:
[0072]
[0073] DIFF j >0 indicates that the frame was delivered on time, thus confirming that the frame delivery time setting is reasonable; if DIFF j A value less than 0 indicates a delayed delivery of video frames, which means the frame delivery time setting is unreasonable.
[0074] Furthermore, this embodiment uses DIFF_ratio iLet i represent the frame loss rate at time i, as shown in equation (4):
[0075]
[0076] In the formula, Let i be the total number of video frames sent to the receiver at time i. This represents the total number of frames where DIFF < 0 at time i.
[0077] In this embodiment, the size of DIFF_ratio is used to define the pauses during video viewing, so the equation for QoE can be rewritten as equation (5):
[0078] QoE i =P i +βR(DIFF_ratio i )+γ(P i -P i-1 (5)
[0079] The receiving end sends Frame Delivery Time (FDT) related information (DIFF) to the sending end. The sending end uses the FDT information to determine the impact of FDT on QoE, especially the impact on video stuttering. After receiving the FDT information, the sending end uses the following algorithm to determine the QoE status.
[0080] Specifically as follows:
[0081] Input: DIFF information, queue Q, counter, last window value last_wnd(0), window threshold DIFF_wnd(0)
[0082] Output: FDT state s f
[0083]
[0084] Therefore, this embodiment mainly calculates the frame drop rate by storing frame delivery time-related information in a queue. If the frame drop rate is less than a preset window threshold, the user experience state is determined to be a true state, i.e., a good user experience state. Conversely, if the frame drop rate is greater than the preset window threshold, the user experience state is determined to be an untrue state, i.e., a poor user experience state.
[0085] In one implementation, after parsing and obtaining the receiving rate, the sending end in this embodiment directly uses the receiving rate to determine whether network congestion has occurred. Specifically, using s r To determine the network congestion status. The following equation (6) shows s r The discrimination mechanism:
[0086]
[0087] In formula (6), r is the estimated current receiving rate. avg The weighted average of the historical 50 receiving rates is denoted as σ, which is used to balance the average and the current estimate and is set to 0.75. In other words, in this application, if the current receiving rate is less than the weighted average of the historical 50 receiving rates, the network congestion state is determined to be a true state, i.e., severe network congestion; conversely, if the current receiving rate is greater than or equal to the weighted average of the historical 50 receiving rates, the network congestion state is determined to be a false state, i.e., the network is uncongested.
[0088] Step S300: The sending end makes a bitrate decision based on the user experience status and the network congestion status.
[0089] Specifically, the control module at the sending end can adjust the user experience status based on the user's state. f With the network congestion state s r Adjusting the bit rate. Each time GCC (Google Congestion Control) wants to reduce its bit rate, s f and s r They will all be sent to Figure 1 The control module determines whether to adopt GCC to decrease the bit rate. In this embodiment, the bit rate estimate at time i can be expressed as shown in Table 1 below.
[0090] State <![CDATA[s r =true]]> <![CDATA[s r =false]]> <![CDATA[s f =true]]> <![CDATA[B i =r avg ]]> <![CDATA[B i =max(b i ,b i-1 ) <!-- 6 -->]]> <![CDATA[s f =false]]> <![CDATA[B i =b i ]]> <![CDATA[B i =b i ]]>
[0091] Table 1
[0092] Where b i b i-1 B is the bit rate estimated by the GCC algorithm at time i and time i-1. i This is the bit rate output at time i in this embodiment.
[0093] In other words, if the user experience state is real and the network congestion state is real, then the final bitrate B i For r avg r avg The final bitrate B is the weighted average of the historical 50 reception rates. If the user experience state is real and the network congestion state is unreal, then the final bitrate B... i For max(b) i ,b i-1 ), b i b i-1This is the bitrate estimated by the GCC algorithm at time i and time i-1. If the user experience state is not a real state and the network congestion state is a real state, then the final bitrate B... i For b i If the user experience state is not a real state and the network congestion state is not a real state, then the final bitrate B i For b i .
[0094] Therefore, this embodiment uses Frame Delivery Time (FDT) to reflect the degree of stuttering when a user watches a video; uses the reception rate (RFR) to reflect the network congestion status; designs a new RTCP message, DIFB, through which the receiver feeds back relevant information about frame delivery time; and the sender reasonably modifies the congestion control algorithm based on the feedback information from the receiver to avoid network congestion and improve the user's viewing experience.
[0095] Exemplary System
[0096] Based on the above embodiments, the present invention provides a real-time interactive video stream optimization system that shields against cellular network jitter, such as... Figure 3 As shown. The system in this embodiment includes a sending end and a receiving end. The receiving end is used to acquire the frame delivery time and reception rate of the video, and sends the frame delivery time and reception rate to the sending end in the form of RTCP packets. The sending end is used to determine the user experience status based on the frame delivery time, and to determine the network congestion status based on the reception rate, and to make a bitrate decision based on the user experience status and the network congestion status.
[0097] The working principle of the receiver and transmitter of the real-time interactive video stream optimization system for shielding cellular network jitter in this embodiment is the same as the execution process of each step in the above method embodiment, and will not be repeated here.
[0098] Based on the above embodiments, the present invention also provides a terminal device, the schematic diagram of which can be as follows: Figure 4 As shown. The terminal device in this embodiment can act as a receiver or a transmitter. The terminal device in this embodiment may include one or more processors 100 ( Figure 4 (Only one is shown in the image), a memory 101, and a computer program 102 stored in the memory 101 and executable on one or more processors 100, such as a program for optimizing real-time interactive video streams by shielding cellular jitter. When one or more processors 100 execute the computer program 102, they can implement the various steps in the method embodiment for optimizing real-time interactive video streams by shielding cellular jitter. Alternatively, when one or more processors 100 execute the computer program 102, they can implement the functions of the modules / units in the apparatus embodiment for optimizing real-time interactive video streams by shielding cellular jitter, which is not limited here.
[0099] In one embodiment, the processor 100 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.
[0100] In one embodiment, memory 101 may be an internal storage unit of an electronic device, such as a hard drive or RAM. Memory 101 may also be an external storage device of the electronic device, such as a plug-in hard drive, smart media card (SMC), secure digital (SD) card, flash card, etc. Furthermore, memory 101 may include both internal and external storage units. Memory 101 is used to store computer programs and other programs and data required by the terminal device. Memory 101 can also be used to temporarily store data that has been output or will be output.
[0101] Those skilled in the art will understand that Figure 4 The block diagram shown is merely a partial structural diagram related to the present invention and does not constitute a limitation on the terminal device to which the present invention is applied. The specific terminal device may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements.
[0102] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, storage, operating databases, or other media used in the embodiments provided by this invention can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual operating data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and RAMbus dynamic RAM (RDRAM), etc.
[0103] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for optimizing real-time interactive video streaming over a shielded cellular network to mitigate jitter, the method comprising: The method comprises: The receiving end obtains the frame delivery time and the receiving rate of the video, and sends the frame delivery time and the receiving rate to the sending end in the form of an RTCP message; The sending end determines the user experience state based on the frame delivery time, and determines the network congestion state based on the receiving rate; The sending end makes a code rate decision according to the user experience state and the network congestion state; The sending end determines the user experience state based on the frame delivery time, comprising: defining the frame delivery time of any video frame in the video stream, and determining the rationality of the frame delivery time setting; based on the rationality, determining a frame loss rate, and constructing a modeling equation for reflecting the user experience state based on the frame loss rate, and determining the user experience state based on the modeling equation; wherein the modeling equation of the user experience state is: ; wherein, is the video quality at time i, is the video quality at time i-1, is the penalty for video stuttering, is the weight of the penalty; is the penalty for video smoothness, is the penalty for video smoothness; The sending end makes a code rate decision according to the user experience state and the network congestion state, comprising: If the user experience state is a true state and the network congestion state is a true state, then the final code rate is , is a 50-accept rate weighted average of history. if the user experience state is a real state and the network congestion state is a non-real state, then the final code rate is , , is the bit rate estimated by the GCC algorithm at time instant i and at time instant i-1; If the user experience status is a non-true status and the network congestion status is a true status, then the final code rate is ; If the user experience status is a non-true status and the network congestion status is a non-true status, then the final code rate is .
2. The method of claim 1, wherein, The sending end sends the frame delivery time to the sending end in the form of a DIFB message; The sending end sends the receiving rate to the sending end in the form of an RR message. The definition of the frame delivery time is:
3. The method of claim 1, wherein, The determination of the rationality of the frame delivery time setting comprises: ; wherein, is the rendering time for the jth video frame, is the arrival time of the jth video frame predicted for the web real-time communication, is the time taken by the web real-time communication to decode the video frame, is the jth video frame set by the web real-time communication, .
4. The method of claim 3, wherein, The formula of the frame loss rate is: Establishing formula: ; is the real arrival time of the jth video frame; If , the video frames are delivered in time, it is determined that the frame delivery time setting is reasonable. If , representing a video frame is delivered with a delay, it is determined that the frame delivery time setting is unreasonable.
5. The method of claim 4, wherein, The determination of the user experience state based on the modeling equation comprises: ; wherein, is the total number of video frames sent from the sending end to the receiving end at time i, is the total number of frames with DIFF < 0 at time i.
6. The method of claim 1, wherein, frame delivery time related information is calculated and saved to a queue to calculate the frame loss rate; if the frame loss rate is less than a preset window threshold, it is determined that the user experience state is a real state; if the frame loss rate is greater than the preset window threshold, it is determined that the user experience state is a non-real state. The judgment mechanism for determining the network congestion state based on the receiving rate is:
7. The method of claim 1, wherein the method further comprises: The system is used to implement the steps of the real-time interactive video stream optimization method for shielding cellular network jitter according to any one of claims 1-7, and the system comprises a sending end and a receiving end, wherein ; wherein, is a current acceptance rate estimate, is a historical 50-acceptance rate weighted average, is a function for balancing the average and the current estimate, is 0.
75.
8. A system for real-time interactive video streaming optimization that shields from cellular network jitter, characterized by, The receiving end is used to obtain the frame delivery time and the receiving rate of the video, and send the frame delivery time and the receiving rate to the sending end in the form of an RTCP message; The sending end is used to determine the user experience state based on the frame delivery time, and determine the network congestion state based on the receiving rate, and make a code rate decision according to the user experience state and the network congestion state. The terminal device is applied to a receiving end or a sending end, comprising a memory, a processor, and a real-time interactive video stream optimization program for shielding cellular network jitter stored in the memory and executable on the processor, and when the processor executes the real-time interactive video stream optimization program for shielding cellular network jitter, the steps of the real-time interactive video stream optimization method for shielding cellular network jitter according to any one of claims 1-7 are implemented.
9. A terminal device, comprising: 10. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a real-time interactive video streaming optimization program for shielding cellular network jitter, and the real-time interactive video streaming optimization program, when executed by a processor, implements the steps of the real-time interactive video streaming optimization method for shielding cellular network jitter according to any one of claims 1-7.
Citation Information
Patent Citations
Video transmission system
CN115086779A