Patent ID: 7895629

Claim:
A mobile wireless device to buffer and display a video received from a video streaming device via a mobile wireless network comprising: a wireless transceiver receives a video stream of data units at a streaming rate from the video streaming device via the mobile wireless network, the video stream of data units created by the video streaming device encoding the video at an encoding rate, the video comprising a sequence of frames; a receive buffer stores the received data units, the receive buffer having a receive buffer capacity, the receive buffer indicates a current receive buffer level corresponding to a fraction of the receive buffer capacity currently storing data units; a video player removes data units from the receive buffer, the video player to decode the removed data units into decoded video frames, the video player to sequentially display the decoded video frames at a playback frame rate; and a receive buffer controller compares the current receive buffer level with an early detection threshold, the receive buffer controller sends a request to the video streaming device to decrease the streaming rate if the current receive buffer level rises above the early detection threshold; wherein the receive buffer controller compares the current receive buffer level with a high level threshold, the receive buffer controller sends a request to the video streaming device to halt the streaming of the video stream if the current receiver buffer level rises above the high level threshold; wherein the receive buffer has a receive buffer margin sufficient to prevent an overflow of the receive buffer in the event of a data unit surge resulting from the video streaming device increasing the encoding rate, wherein the receive buffer margin is a product of the receive buffer capacity times a difference between the high level threshold and a pre-surge buffer level; and wherein the receive buffer margin is sufficient to prevent the overflow of the receive buffer when the receive buffer margin is greater than or equal to a size of the surge, wherein the size of the surge is the product of a time delay and a typical data speed, wherein the time delay is a time required for the mobile wireless network to increase capacities of one or more network resources carrying the video stream in response to the video streaming device increasing the encoding rate, wherein the typical data speed is the encoding rate during the delay minus the streaming rate during the delay.