Real-time VoIP transmission quality predictor and quality-driven de-jitter buffer
First Claim
1. A method of operating a Voice over Internet Protocol (VolP) device having a de-jitter buffer during a VolP call, the method comprising the steps of:
- a) determining a plurality of end to end delays of a plurality of received VolP packets during a window at the VolP device from a transmitter across a network, each of the plurality of the received VolP packets containing an audio payload and an absolute timestamp, wherein the absolute timestamp has been synchronized with a universal clock, and further wherein each of the plurality of the end to end delays are determined by extracting a value of the absolute timestamp contained after a Synchronization Source (SSRC) identifier within a corresponding VolP packet of the plurality of the received VolP packets, and comparing the extracted value of the absolute timestamp with a local clock synchronized to the universal clock to determine an absolute time delay for each of the corresponding VolP packet; and
b) determining an optimal operating point from a plurality of different operating points for the de-jitter buffer using the determined absolute time delays to maximize a transmission quality factor R, wherein the plurality of different operating points are different playout deadlines for the de-jitter buffer.
1 Assignment
0 Petitions
Accused Products
Abstract
Voice over Internet Protocol (VoIP) transmission quality predictor working in real-time provides feedback information regarding transmission impairments, transmission quality and end-user satisfaction to quality enhancement mechanisms along the transmission path. Quality enhancement mechanisms use this feedback information in the process of tuning their control parameters. The transmission quality predictor calculates the transmission rating factor R at each of the outputs based on the information regarding voice codec, packet loss, and mouth-to-ear delay. Information regarding voice codec and packet loss is determined from VoIP packet headers. Information regarding mouth-to-ear delay is determined from an additional time stamp that is inserted into each RTP packet header by the VoIP sender. Finally, the play-out delay of received VoIP packets for the actual time window is set equal to the play-out buffer output in the prior time window which gave the highest R-factor value.
10 Citations
12 Claims
-
1. A method of operating a Voice over Internet Protocol (VolP) device having a de-jitter buffer during a VolP call, the method comprising the steps of:
-
a) determining a plurality of end to end delays of a plurality of received VolP packets during a window at the VolP device from a transmitter across a network, each of the plurality of the received VolP packets containing an audio payload and an absolute timestamp, wherein the absolute timestamp has been synchronized with a universal clock, and further wherein each of the plurality of the end to end delays are determined by extracting a value of the absolute timestamp contained after a Synchronization Source (SSRC) identifier within a corresponding VolP packet of the plurality of the received VolP packets, and comparing the extracted value of the absolute timestamp with a local clock synchronized to the universal clock to determine an absolute time delay for each of the corresponding VolP packet; and b) determining an optimal operating point from a plurality of different operating points for the de-jitter buffer using the determined absolute time delays to maximize a transmission quality factor R, wherein the plurality of different operating points are different playout deadlines for the de-jitter buffer. - View Dependent Claims (2, 3, 4, 5)
-
- 6. A Voice over Internet Protocol (VolP) device for receiving VolP packet data during a VolP call and providing an audio signal to a user from said received VolP data, the VolP device comprising a de-jitter buffer having a variable buffering delay, and a local clock synchronized to a universal clock, wherein the device is configured to determine an absolute end to end delay of each VolP packet received during a window at the VolP device by extracting a value of an absolute timestamp contained after a Synchronization Source (SSRC) identifier of the corresponding VolP packet headers of the plurality of the received VolP packets and comparing the value of the absolute timestamp with the local clock and wherein the VolP device is further configured to determine an optimal operating point from a plurality of different operating points for the de-jitter buffer using the determined absolute time delays to maximize a transmission quality factor R, wherein the plurality of different operating points are different playout deadlines for the de-jitter buffer.
-
12. A method for operating a Voice over Internet Protocol (VolP) device having a de-jitter buffer which comprises the steps of:
-
establishing a window for the VolP device, wherein the VolP device operates with a continuing sequence of a plurality of windows during a VolP call; using a predetermined playout deadline for the de-jitter buffer during the window;
measuring an absolute time delay for a plurality of VolP packets received into the de-jitter buffer during the window;comparing the absolute time delay of the packets from the measuring step with a test playout deadline in a plurality of playout deadlines to determine a packet loss and a quality metric for each test playout deadline, wherein each quality metric is based on its corresponding packet loss; selecting a test playout deadline in a plurality of playout deadlines from the comparing step based on the highest respective quality metric; using the test playout deadline selected in the selecting step as the predetermined playout deadline for a subsequent window of the VolP call; and determining an optimal operating point from a plurality of different operating points for the de-jitter buffer using the determined absolute time delays to maximize a transmission quality factor R, wherein the plurality of different operating points are different playout deadlines for the de-jitter buffer.
-
Specification