Patent application number | Description | Published |
20110072105 | VARIANT STREAMS FOR REAL-TIME OR NEAR REAL-TIME STREAMING TO PROVIDE FAILOVER PROTECTION - Methods and apparatuses provide real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes providing multiple redundant locations that provide media content to client devices using alternative streams. To implement failover protection, a first server device or first content distribution service creates a stream, or multiple alternate bandwidth streams and generates playlist file(s). A second server device or second content distribution service creates a parallel stream, or set of streams. A client attempts to download the playlist file(s) from a first uniform resource locator (URL) using a first stream associated with the first server device or the first content distribution service. If a client is unable to download the playlist file(s) from the first URL, the client attempts to switch to an alternate stream associated with another URL. | 03-24-2011 |
20110138020 | Real-Time or Near Real-Time Streaming with Compressed Playlists - Methods and apparatuses provide real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes providing a request for a playlist file (e.g. an updated playlist) and specifying a compression protocol with or for the request; the request can come from a client device which is requesting the playlist from a web server. The web server can provide the playlist in a compressed format. | 06-09-2011 |
20110246621 | REAL-TIME OR NEAR REAL-TIME STREAMING - A near real time content streaming system can use a playlist file, in one embodiment, that includes an indicator of the type of content represented by the playlist file. The type can be indicated by a parameter, such as Video on Demand (VOD) or live, or event, that specifies the type of playlist file, and a client device can process the playlist file based upon the type of playlist file indicated by the parameter. For example, the client device, after determining the type of playlist from a playlist file can make efficiency optimizations when processing the playlist file. For example, the client, knowing the playlist file is a VOD playlist, can save the previously used variant playlist when switching to a new variant playlist rather than discarding the previously used variant playlist. | 10-06-2011 |
20110246622 | Real-Time or Near Real-Time Streaming - Methods and apparatuses provide real-time or near real-time streaming of content, specified in one or more playlists, using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method can adaptively determine a minimum overlap for an overlap in time between two streams being received concurrently in order to determine when to switch between the two streams, and the minimum overlap can be determined based on connection speed. In another embodiment, a minimum playlist duration can be set as a multiple of a target duration which specifies a maximum duration of a media file specified in a playlist. In another embodiment, a method can enforce a start point for playback at a client device. | 10-06-2011 |
20110246623 | Real-Time or Near Real-Time Streaming - Methods and apparatuses provide real-time or near real-time streaming of content, specified in one or more playlists, using transfer protocols such as on HTTP compliant protocol. In one embodiment, a method can execute a user application on a client device to present media files and to control presentation of the media files. The method can further run a media serving process on the client device to retrieve a playlist specifying the media files and a media source at which the media files arc available, to retrieve the media files from the media source, and to decode the media files retrieved. While the media serving process is separate from the user application, they may share the same privileges with respect to memory control, memory space, memory allocation, file system control, and network control. | 10-06-2011 |
20110246885 | REAL-TIME OR NEAR REAL-TIME STREAMING - A user interface (UI) for controlling buffered content of a streaming presentation is disclosed. In one embodiment, the UI includes a time line which represents a length in time of a streaming content that has been buffered at a receiver, such as a client device which retrieves the streaming content by sending one or more URLs, in a playlist file, to a transmitter; an indicator on the time line shows a current playback position within the buffered content at the receiver. | 10-06-2011 |
20110252118 | REAL-TIME OR NEAR REAL-TIME STREAMING - Methods and apparatuses provide real-time or near real-time streaming of content, specified in one or more playlists, using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method can execute a user application on a client device to present media files and to control presentation of the media files. The method can further run a media serving process on the client device to retrieve a playlist specifying the media files and a media source at which the media files are available, to retrieve the media files from the media source, and to decode the media files retrieved. The media serving process can call the user application to process a custom URL in order to obtain an object referred to by the custom URL. | 10-13-2011 |
20120191870 | REAL-TIME OR NEAR REAL-TIME STREAMING WITH COMPRESSED PLAYLISTS - Methods and apparatuses provide real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes providing a request for a playlist file (e.g. an updated playlist) and specifying a compression protocol with or for the request; the request can come from a client device which is requesting the playlist from a web server. The web server can provide the playlist in a compressed format. | 07-26-2012 |
20120307654 | Bandwidth Estimation Based on Statistical Measures - Some embodiments provide a method for estimating bandwidth estimate based on a set of statistical measurements that quantifies bandwidth variation. The method receives a piece of media content at a receiving device and computes several instantaneous bandwidth measurements based on sample data blocks or media content received at the receiving device. The method computes the set of statistical measures that quantifies variation between the computed instantaneous bandwidth measurements. Based on the set of statistical measures, the method computes a revised bandwidth estimate for receiving media content at the receiving device. In some embodiments, the method uses the revised bandwidth estimate to determine an amount of media content data to buffer in order to provide an uninterrupted playback. | 12-06-2012 |
20120311134 | Estimating Bandwidth Based on Server IP Address - Some embodiments provide a method for estimating bandwidth for receiving data at a device during a communication session from a set of servers based on identities of the servers. During the session, the method receives a first set of data packets reflecting a first server identity. The method detects a change of server identity during the session based on a second set of received data packets that reflect a second server identity that is different from the first server identity. The method uses the second server identity to calculate a bandwidth estimate that accounts for the change based on a history of interactions during the session with the second server. | 12-06-2012 |
20130031165 | REAL-TIME OR NEAR REAL-TIME STREAMING WITH COMPRESSED PLAYLISTS - Methods and apparatuses provide real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes providing a request for a playlist file (e.g. an updated playlist) and specifying a compression protocol with or for the request; the request can come from a client device which is requesting the playlist from a web server. The web server can provide the playlist in a compressed format. | 01-31-2013 |
20130046861 | VARIANT STREAMS FOR REAL-TIME OR NEAR REAL-TIME STREAMING TO PROVIDE FAILOVER PROTECTION - Methods and apparatuses provide real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes providing multiple redundant locations that provide media content to client devices using alternative streams. To implement failover protection, a first server device or first content distribution service creates a stream, or multiple alternate bandwidth streams and generates playlist file(s). A second server device or second content distribution service creates a parallel stream, or set of streams. A client attempts to download the playlist file(s) from a first uniform resource locator (URL) using a first stream associated with the first server device or the first content distribution service. If a client is unable to download the playlist file(s) from the first URL, the client attempts to switch to an alternate stream associated with another URL. | 02-21-2013 |
20140317244 | REAL-TIME OR NEAR REAL-TIME STREAMING - Methods and apparatuses provide real-time or near real-time streaming of content, specified in one or more playlists, using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method can adaptively determine a minimum overlap for an overlap in time between two streams being received concurrently in order to determine when to switch between the two streams, and the minimum overlap can be determined based on connection speed. In another embodiment, a minimum playlist duration can be set as a multiple of a target duration which specifies a maximum duration of a media file specified in a playlist. In another embodiment, a method can enforce a start point for playback at a client device. | 10-23-2014 |