Patent ID: 8474001

Claim:
A method, comprising: identifying a selected media asset to be streamed to a media receiver; conducting a first negotiation with the media receiver including (i) initiating a session setup for delivery of the selected media asset, wherein the initiating comprises receiving a bandwidth parameter indicating an available access bandwidth at which the media receiver can receive data and (ii) calculating a delay in decoding a media stream associated with the selected media asset at the media receiver based on the received available access bandwidth of the media receiver, and further based on a calculated required minimum transmission rate of a variable bit rate (VBR) media stream representative of the selected media asset; transmitting the selected media asset at the calculated required minimum transmission rate of the VBR media stream and providing the calculated delay to the media receiver such that the media receiver begins decoding the VBR media stream in accordance with the calculated delay, wherein: a segment transmission rate vs. delay of an asset is calculated, where: rate≧bits_consumed/(delay+time_passed), wherein: the time_passed is a program clock reference (PCR) time passed since a start of the segment; the bits_consumed is a number of bits in the media stream since the start of the segment; the segment transmission rate calculation is performed for each program clock reference (PCR) point in the VBR media stream and a maximum rate is chosen for the respective segment; the required minimum transmission rate of the VBR media stream is calculated based on one of the calculated segment transmission rate values; detecting a stream control operation that changes a current play point of the media asset to a new play point; in response to detecting the stream control operation conducting a second negotiation with the media receiver comprising the same operations as the first negotiation; and transmitting the selected media asset from the new play point at a new required minimum transmission rate of the VBR media stream and providing a new calculated delay to the media receiver such that the media receiver begins decoding the VBR media stream at the new play point in accordance with the new calculated delay.