Patent ID: 7668968

Claim:
A computerized method for adjusting audio packet flow in response to continuous network monitoring for users of a Voice Over Internet Protocol (VOIP) audio application, where all users are running the same audio application, comprising: a first user audio application receiving audio packets from a second user audio application, the audio packets containing audio data from a second user and additional data from the second user audio application used for generating bandwidth estimates by the first user audio application the first user audio application further receiving a series of bandwidth estimates from the second user audio application embedded in the audio packets, the bandwidth estimates indicating a current available bandwidth on a first network path from the first user audio application to the second user audio application; reconstructing if required the audio data from the audio packets received from the second user audio application for playback to a first user of the first user audio application; comparing the bandwidth estimates received from the second user audio application to a bandwidth threshold, and modifying the audio packets over the first network path when the bandwidth estimates are less than the threshold, modifying based on a result of the comparing, captured audio data from the first user and destined for the second user audio application; and forming the possibly modified captured audio data into audio packets and embedding a series of bandwidth estimates of current available bandwidth for the audio packet received by the first user audio application for transmission to the second user audio application over the first network path; whereby the packets are modified by performing one or more of the following actions: adjusting the audio compression, adjusting packet length, adjusting the amount of decimation of the audio data; whereby bandwidth estimates are continuously generated between the first user audio application and the second user audio application until communication between the two applications is terminated.