IP Library Granted Patent US 8,502,859
Granted Patent B2
US 8,502,859 · App. 13/090,927 · Granted Aug 6, 2013

Determining buffer size based on forward error correction rate

Inventors: P. Raghavendra Kamath (Bangalore, IN); Ashish Goyal (Bangalore, IN)
Assignee: LifeSize Communications, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,502,859
App. No.
13/090,927
Granted
Aug 6, 2013
Kind
B2
Abstract

Determining a buffer size in a videoconference. In some embodiments, one or more of various different error correction methods may be used in a videoconference. For example, forward error correction (FEC) may be used and/or retransmission of lost packets (ReTxLP) may be used, e.g., based on a packet loss threshold. Where FEC is used, a buffer size of a receiving videoconferencing device may be determined based on the FEC rate. Where ReTxLP is used, a buffer size of the receiving videoconferencing device may be determined based on a retransmission latency.

Claims (37)

1. A method for determining buffer size based on forward error correction (FEC) rate, comprising:

determining an FEC rate used in a videoconference, wherein the FEC rate specifies a frequency of FEC packets in a packet stream transmitted from a first videoconferencing device to a second videoconferencing device;

automatically determining a buffer size of a buffer of the second videoconferencing device based on the FEC rate;

receiving a plurality of packets from the first videoconferencing device, including at least one FEC packet;

reconstructing at least one lost packet using the at least one FEC packet, wherein the buffer size allows for said reconstructing; and

providing playback of the plurality of packets and the at least one lost packet.

2. The method of claim 1 , wherein said automatically determining the buffer size comprises:

determining a first number of FEC packets over a second number of data packets;

determining the buffer size using the first number of FEC packets and the second number of data packets, wherein the buffer size is greater than the sum of the first number and the second number.

3. The method of claim 2 , wherein the buffer size is at least 10% greater than the sum of the first number and the sum of the second number.

4. The method of claim 1 , further comprising:

performing said determining the FEC rate and said automatically determining the buffer size a plurality of times during a videoconference.

5. The method of claim 1 , wherein said determining the FEC rate and said automatically determining the buffer size is performed in response to initiation of FEC between the first videoconferencing device and the second videoconferencing device.

6. The method of claim 1 , wherein the packet stream comprises video packets, and wherein the buffer is a jitter buffer for video packets.

7. The method of claim 6 , wherein said receiving the plurality of packets is performed to the jitter buffer, wherein the FEC packets are not stored in a separate FEC buffer.

8. The method of claim 1 , wherein video frames in the packet stream are transmitted over a larger number of packets than that required without use of FEC, wherein the transmission of video frames over the larger number of packets reduces packet loss recovery time.

9. The method of claim 8 , wherein the number of packets per video frame is based on the automatically determined buffer size.

10. The method of claim 8 , wherein the number of packets per video frame is based on a video latency of the second videoconferencing device.

11. A non-transitory, computer-accessible memory medium storing program instructions for determining buffer size based on forward error correction (FEC) rate, wherein the program instructions are executable to:

determine an FEC rate used in a videoconference, wherein the FEC rate specifies a frequency of FEC packets in a packet stream transmitted from a first videoconferencing device to a second videoconferencing device;

automatically determine a buffer size of a buffer of the second videoconferencing device based on the FEC rate;

wherein the second videoconferencing device is configured to:

receive a plurality of packets from the first videoconferencing device, including at least one FEC packet;

reconstruct at least one lost packet using the at least one FEC packet, wherein the buffer size allows for said reconstructing; and

provide playback of the plurality of packets and the at least one lost packet.

12. The non-transitory, computer-accessible memory medium of claim 11 , wherein said automatically determining the buffer size comprises:

determining a first number of FEC packets sent over a second number of data packets;

determining the buffer size using the first number of FEC packets and the second number of data packets, wherein the buffer size is greater than the sum of the first number and the second number.

13. The non-transitory, computer-accessible memory medium of claim 12 , wherein the buffer size is at least 10% greater than the sum of the first number and the sum of the second number.

14. The non-transitory, computer-accessible memory medium of claim 11 , wherein the program instructions are further executable to:

perform said determining the FEC rate and said automatically determining the buffer size a plurality of times during a videoconference.

15. The non-transitory, computer-accessible memory medium of claim 11 , wherein said determining the FEC rate and said automatically determining the buffer size is performed in response to initiation of FEC between the first videoconferencing device and the second videoconferencing device.

16. The non-transitory, computer-accessible memory medium of claim 11 , wherein the packet stream comprises video packets, and wherein the buffer is a jitter buffer for video packets.

17. The non-transitory, computer-accessible memory medium of claim 16 , wherein said receiving the plurality of packets is performed to the jitter buffer, wherein the FEC packets are not stored in a separate FEC buffer.

18. The non-transitory, computer-accessible memory medium of claim 11 , wherein video frames in the packet stream are transmitted over a larger number of packets than that required without use of FEC, wherein the transmission of video frames over the larger number of packets reduces packet loss recovery time.

19. The non-transitory, computer-accessible memory medium of claim 18 , wherein the number of packets per video frame is based on the automatically determined buffer size.

20. The non-transitory, computer-accessible memory medium of claim 18 , wherein the number of packets per video frame is based on a video latency of the second videoconferencing device.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2025
From: SL MIDCO 2, LLC; SL MIDCO 1, LLC; LO PLATFORM MIDCO, INC.; SERENOVA, LLC; LIFESIZE, INC.; TELESTRAT LLC; LIGHT BLUE OPTICS INC.; SERENOVA WFM, INC.
To: ENGHOUSE INTERACTIVE INC.
Reel/Frame 070932/0415 →
SECURITY INTEREST Recorded Mar 16, 2020
From: LIFESIZE, INC.
To: WESTRIVER INNOVATION LENDING FUND VIII, L.P.
Reel/Frame 052179/0063 →
SECURITY INTEREST Recorded Mar 2, 2020
From: SERENOVA, LLC; LIFESIZE, INC.; LO PLATFORM MIDCO, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 052066/0126 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2016
From: LIFESIZE COMMUNICATIONS, INC.
To: LIFESIZE, INC.
Reel/Frame 037900/0054 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2011
From: KAMATH, P. RAGHAVENDRA; GOYAL, ASHISH
To: LIFESIZE COMMUNICATIONS, INC.
Reel/Frame 026158/0656 →
Continuity (1)
Related Publication 20110261145A1 · Oct 27, 2011