REDUCING EFFECTS OF PACKET LOSS IN VIDEO TRANSMISSIONS
First Claim
1. A method in a computer system for reducing the effects of packet loss when sending data between a sending endpoint and a receiving endpoint, the method comprising:
- receiving a data size and an indication of a rate of packet loss during a previous period;
determining a level of protection to apply based on the received data size and the indication of the rate of packet loss;
sending to the receiving endpoint one or more data packets containing the data; and
sending to the receiving endpoint one or more protection packets based on the determined level of protection, wherein the one or more protection packets comprise information with which the receiving endpoint can recover a lost data packet, such that when a data packet is lost the receiving endpoint can obtain all of the data using the protection packets without additional communication with the sending endpoint.
2 Assignments
0 Petitions
Accused Products
Abstract
An error correction system determines a level of error correction protection to apply to a frame of video data to be transmitted by a sending endpoint to a receiving endpoint based on the predicted impact of packet loss as well as the importance of the frame based on inter-frame dependencies, frame size, packet loss probability, historical packet loss pattern, central processing unit (CPU) load, and available network bandwidth. At the receiving endpoint, when packet loss is detected for a particular frame, the receiving endpoint will attempt to recover the frame using protection packets received along with the video data.
122 Citations
26 Claims
-
1. A method in a computer system for reducing the effects of packet loss when sending data between a sending endpoint and a receiving endpoint, the method comprising:
-
receiving a data size and an indication of a rate of packet loss during a previous period; determining a level of protection to apply based on the received data size and the indication of the rate of packet loss; sending to the receiving endpoint one or more data packets containing the data; and sending to the receiving endpoint one or more protection packets based on the determined level of protection, wherein the one or more protection packets comprise information with which the receiving endpoint can recover a lost data packet, such that when a data packet is lost the receiving endpoint can obtain all of the data using the protection packets without additional communication with the sending endpoint. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer system for reducing the effects of packet loss on videoconferencing data transmitted from a sending endpoint to a receiving endpoint through a videoconferencing server over a network, comprising:
-
a video conference data receiving component configured to receive video conference data from the sending endpoint; an error correction component configured to produce error correction data based on the video conference data, wherein the error correction data provides information for recovering a lost portion of the video conference data and is divided into packets based on one or more levels of protection; a video conference data sending component configured to forward the video conference data received from the sending endpoint to multiple receiving endpoints, wherein the video conference data sending component determines which of the packets of the error correction data to send to each receiving endpoint based on characteristics of the video conference data and the connection with the receiving endpoint, such that the error correction data is not separately produced for each receiving endpoint. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A computer-readable medium containing instructions for controlling a computer system to recover lost packets at a receiving endpoint, by a method comprising:
-
receiving video data from a sending endpoint, wherein the video data is divided into one or more data packets; receiving error correction data from the sending endpoint, wherein the error correction data is divided into one or more protection packets; determining that at least one data packet sent by the sending endpoint was not received by the receiving endpoint; applying the error correction data from the one or more protection packets to recover the at least one data packet that was not received. - View Dependent Claims (23, 24, 25, 26)
-
Specification