Method and system for improving real-time data communications
First Claim
1. A system for adjusting a playback sampling rate for real-time data communications over a data packet network, comprising:
- a data interface for receiving data packets from the data packet network;
a buffer coupled to the data interface and configured to temporarily store the data packets;
a digital to analog converter coupled to the buffer and configured to convert the data packets to an analog signal;
a clocking mechanism coupled to the digital to analog converter and configured to provide the digital to analog converter with variable frequencies;
a buffer monitor for monitoring activity of the buffer during the real-time data communications, wherein the buffer monitor is configured to adjust the playback sampling rate and to calculate average number of data packets stored in the buffer over a pre-determined period of time; and
a timer for preventing the adjustment of the playback sampling rate by the buffer monitor until after expiration of the pre-determined period of time;
wherein the playback sampling rate is adjusted by at least 8 Hz when the average number is deemed high or low, adjusted by at least 2 Hz if the average number is deemed lower than high, higher than low and outside a range deemed acceptable and held constant if the average number is in the range deemed acceptable.
5 Assignments
0 Petitions
Accused Products
Abstract
A system and method for improving real-time data communications by accounting for sampling rate mismatches between a transmitter and a receiver. Based on an analysis of the average number of packets received at a receiver over a period of time, a buffer monitor cooperating with the receiver can trigger an adjustment to the playback sampling rate to account for mismatches in the sampling rates of the transmitter and receiver. The buffer monitor may adjust the playback sampling rate more dramatically if the average is dangerously high or low, adjust the playback sampling rate less dramatically if the average is near satisfactory conditions, and not adjust the playback sampling rate if the average falls is satisfactory.
-
Citations
21 Claims
-
1. A system for adjusting a playback sampling rate for real-time data communications over a data packet network, comprising:
-
a data interface for receiving data packets from the data packet network; a buffer coupled to the data interface and configured to temporarily store the data packets; a digital to analog converter coupled to the buffer and configured to convert the data packets to an analog signal; a clocking mechanism coupled to the digital to analog converter and configured to provide the digital to analog converter with variable frequencies; a buffer monitor for monitoring activity of the buffer during the real-time data communications, wherein the buffer monitor is configured to adjust the playback sampling rate and to calculate average number of data packets stored in the buffer over a pre-determined period of time; and a timer for preventing the adjustment of the playback sampling rate by the buffer monitor until after expiration of the pre-determined period of time; wherein the playback sampling rate is adjusted by at least 8 Hz when the average number is deemed high or low, adjusted by at least 2 Hz if the average number is deemed lower than high, higher than low and outside a range deemed acceptable and held constant if the average number is in the range deemed acceptable. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for accounting for variances in sampling rates in a transmitter and a receiver communicating over a packet network, comprising:
-
an interface at the receiver for receiving and decoding data packets transmitted over the packet network; a digital to analog converter at the receiver configured to convert the data packets to an analog signal; a clocking mechanism at the receiver for providing a frequency to the digital to analog converter that establishes playback sampling rate, wherein the clocking mechanism is configured to provide varying frequencies to the digital to analog converter; a buffer at the receiver that temporarily stores the data packets; and a buffer monitor at the receiver configured to; determine average number of data packets stored in the buffer over a given time period; and based on the determination, trigger an adjustment in the playback sampling rate for the receiver to account for the variances in sampling rates, wherein adjustments to the playback sampling rate are made as follows; when the average number of data packets in the buffer over the given time period is greater than 4.5, the playback sampling rate is increased by 4 Hz; when the average number of data packets in the buffer over the given time period is greater than 4.0 but less than or equal to 4.5, the playback sampling rate is increased by 2 Hz; when the average number of data packets in the buffer over the given time period is between or equal to 4.0 and 1.5, the playback sampling rate is not adjusted; when the average number of data packets in the buffer over the given time period is less than 1.5 but greater than or equal to 0.5, the playback sampling rate is decreased by 2 Hz; and when the average number of data packets in the buffer over the given time period is less than 0.5, the playback sampling rate is decreased by 4 Hz. - View Dependent Claims (12, 13)
-
-
14. A method for adjusting a playback sampling rate, comprising the steps of:
-
receiving packets over a packet network at a network interface; forwarding the received packets from the network interface to a buffer for temporary storage; querying the buffer with a buffer monitor to determine average number of packets stored in the buffer over a specified time interval; determining whether the buffer is approaching capacity or depletion based on the average number of packets stored in the buffer; and adjusting the playback sampling rate for the receiver based on the determination of whether the buffer is approaching capacity or depletion, wherein the playback sampling rate is only adjusted after twenty seconds have elapsed since a last adjustment of the playback sampling rate. - View Dependent Claims (15, 16, 17, 19, 20)
-
-
18. The method of 14, further comprising the step of determining an amount to increase or decrease the playback sampling rate according to duration of time the buffer took to approach capacity or to approach depletion.
-
21. A method for adjusting a playback sampling rate, comprising the steps of:
-
receiving packets over a packet network at a network interface; forwarding the received packets from the network interface to a buffer for temporary storage; querying the buffer with a buffer monitor to determine average number of packets stored in the buffer over a specified time interval; determining whether the buffer is approaching capacity or depletion based on the average number of packets stored in the buffer; and adjusting the playback sampling rate for the receiver based on the determination of whether the buffer is approaching capacity or depletion, wherein the adjusting step comprises; adjusting the playback sampling rate by approximately 8 Hz in response to determining that the average number of packets stored in the buffer is high or low; adjusting the playback sampling rate by approximately 2 Hz in response to determining that the average number of packets stored in the buffer is outside an acceptable range and neither high or low; and maintaining a uniform playback sampling rate in response to determining that the average number of packets stored in the buffer is in the acceptable range.
-
Specification