US2013304874A1PendingUtilityA1

Multi-stream bit rate adaptation

37
Assignee: MOBIXELL NETWORKS LTDPriority: Mar 9, 2010Filed: Jul 18, 2013Published: Nov 14, 2013
Est. expiryMar 9, 2030(~3.7 yrs left)· nominal 20-yr term from priority
H04L 65/756H04L 65/752H04L 65/611H04L 65/762H04L 65/601
37
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method for communication includes providing an item of media content for streaming in a plurality of versions having different, respective bit rates. The media content is streamed from a server to a client by transmitting a first version of the item over a network at a first bit rate from the server to the client via a server buffer associated with the server and monitoring a fill level of the server buffer while streaming the media content. The server switches to transmitting a second version of the item at a second bit rate, different from the first bit rate, to the client in response to a change in the fill level of the server buffer.

Claims

exact text as granted — not AI-modified
1 . A method for communication, comprising:
 providing an item of media content for streaming in a plurality of versions having different, respective bit rates; and   streaming the media content from a server to a client by:   transmitting a first version of the item over a network at a first bit rate from the server to the client via a server buffer associated with the server;   monitoring a fill level of the server buffer while streaming the media content; and   switching to transmitting a second version of the item at a second bit rate, different from the first bit rate, from the server to the client in response to a change in the fill level of the server buffer.   
     
     
         2 . The method according to  claim 1 , wherein providing the item of media content comprises receiving and transcoding an original item at a full bit rate so as to generate the versions at multiple partial bit rates. 
     
     
         3 . The method according to  claim 1 , wherein the media content comprises a video stream, and wherein at least some of the versions have different, respective frame rates. 
     
     
         4 . The method according to  claim 1 , wherein transmitting the first and second versions comprises transmitting data packets over the network from the server to the client, and wherein the method comprises receiving messages at the server from the client that report receipt of the data packets, and controlling the fill level of the server buffer responsively to the received messages. 
     
     
         5 . The method according to  claim 4 , wherein transmitting the data packets comprises transmitting in accordance with a Transmission Control Protocol (TCP), wherein the server buffer comprises a TCP send buffer, and wherein the messages from the client comprise TCP acknowledgments. 
     
     
         6 . The method according to  claim 1 , wherein monitoring the fill level comprises comparing the fill level to at least an upper threshold and a lower threshold, and wherein switching to transmitting the second version comprises switching to a lower bit rate when the fill level passes above the upper threshold, and switching to a higher bit rate when the fill level passes below the lower threshold. 
     
     
         7 . The method according to  claim 6 , and comprising defining a buffer danger level above the upper threshold, wherein switching to the lower bit rate comprises reducing the bit rate by one increment when the fill level passes above the upper margin but is below the buffer danger level, and reducing the bit rate by multiple increments in a single step when the fill level passes above the buffer danger level. 
     
     
         8 . A method for communication, comprising:
 providing an item of video content for streaming in a plurality of versions, at least two of the versions having different, respective frame rates; and   streaming the video content from a server to a client by:
 transmitting a first version of the item over a network at a first frame rate from the server to the client; and 
 in response to a change in transmission conditions, switching to transmitting a second version of the item at a second frame rate, different from the first frame rate, from the server to the client. 
   
     
     
         9 . The method according to  claim 8 , wherein providing the item of video content comprises receiving and transcoding an original item at a full frame rate so as to generate the versions at multiple partial frame rates. 
     
     
         10 . The method according to  claim 8 , wherein providing the item of video content comprises aligning the versions so that at least some first frames in the first version are synchronized with respective second frames in the second version. 
     
     
         11 . The method according to  claim 10 , wherein the video content comprises a compressed video stream comprising I-frames and P-frames, and wherein switching to transmitting the second version comprises switching to the second version at one of the P-frames. 
     
     
         12 . Communication apparatus, comprising:
 a media source, which is configured to provide an item of media content for streaming in a plurality of versions having different, respective bit rates; and   a client interface, which comprises a buffer and is configured to stream the media content from the source to a client by transmitting a first version of the item over a network at a first bit rate via the buffer to the client, to monitor a fill level of the buffer while streaming the media content, and to switch to transmitting a second version of the item at a second bit rate, different from the first bit rate, in response to a change in the fill level of the buffer.   
     
     
         13 . The apparatus according to  claim 12 , wherein the media source comprises a transcoder, which is configured to receive and transcode an original item at a full bit rate so as to generate the versions at multiple partial bit rates. 
     
     
         14 . The apparatus according to  claim 12 , wherein the media content comprises a video stream, and wherein at least some of the versions have different, respective frame rates. 
     
     
         15 . The apparatus according to  claim 12 , wherein the client interface is configured to transmit the first and second versions in data packets over the network to the client, and to receive messages at the server from the client that report receipt of the data packets, and to control the fill level of the buffer responsively to the received messages. 
     
     
         16 . The apparatus according to  claim 15 , wherein the client interface is configured to transmit the data packets in accordance with a Transmission Control Protocol (TCP), wherein the buffer comprises a TCP send buffer, and wherein the messages from the client comprise TCP acknowledgments. 
     
     
         17 . The apparatus according to  claim 12 , wherein the client interface is configured to compare the fill level of the buffer to at least an upper threshold and a lower threshold, and to switch to a lower bit rate when the fill level passes above the upper threshold and switch to a higher bit rate when the fill level passes below the lower threshold. 
     
     
         18 . The apparatus according to  claim 17 , wherein a buffer danger level is defined above the upper threshold, and wherein the client interface is configured to reduce the bit rate by one increment when the fill level passes above the upper margin but is below the buffer danger level, and to reduce the bit rate by multiple increments in a single step when the fill level passes above the buffer danger level. 
     
     
         19 . Communication apparatus, comprising:
 a media source, which is configured to provide an item of video content for streaming in a plurality of versions, at least two of the versions having different, respective frame rates; and   a client interface, which is configured to stream the video content from the source to a client by transmitting a first version of the item over a network to the client at a first frame rate, and in response to a change in transmission conditions, to switch to transmitting a second version of the item to the client at a second frame rate, different from the first frame rate.   
     
     
         20 . The apparatus according to  claim 19 , wherein the media source comprises a transcoder, which is configured to receive and transcode an original item at a full frame rate so as to generate the versions at multiple partial frame rates. 
     
     
         21 . The apparatus according to  claim 19 , wherein the versions are aligned at the source so that at least some first frames in the first version are synchronized with respective second frames in the second version. 
     
     
         22 . The apparatus according to  claim 21 , wherein the video content comprises a compressed video stream comprising I-frames and P-frames, and wherein the client interface is configured to switch to the second version at one of the P-frames.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.