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 |
Patent application number | Description | Published |
20080320100 | DETERMINING PLAYABILITY OF MEDIA FILES WITH MINIMAL DOWNLOADING - A method is provided through which information about media files embedded in web pages is obtained from a server and analyzed to determine if the media files are playable on a device. This information may be external to the media file or may be a portion of the media file itself. The determination of whether a media file is playable by a device is made based on information obtained from the server without downloading the entirety of the media file. | 12-25-2008 |
20090006421 | METHODS AND SYSTEMS FOR RAPID DATA ACQUISITION OVER THE INTERNET - The present invention includes apparatuses, methods, computer readable media and systems comprising means for rapid data acquisition from a server are discussed herein. This rapid data acquisition can be achieved using a combination of bulk data requests and small data requests. A hybrid approach that uses simultaneous bulk and small data requests can provide random access to data files while achieving the high download speeds of a large data transfer. | 01-01-2009 |
20090006736 | SYSTEMS AND METHODS FOR MANAGING DATA STORAGE - This invention is directed to a system by which data received by an electronic device from a server may be selectively stored in cache. The electronic device may define an anchor that is related to the current position of a playhead reading data stored in cache. The electronic device may then dynamically assign values to each data block of the received file based on the position of the anchor. As the anchor moves the value of data blocks changes, and new incoming data may replace less valuable data previously stored in cache. | 01-01-2009 |
20100169303 | PLAYLISTS FOR REAL-TIME OR NEAR REAL-TIME STREAMING - Methods and apparatuses for real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes dividing a stream of data, representing the contiguous time based content of a program (e.g. a live video broadcast), into a plurality of distinct media files, and generating a playlist file having a plurality of tags and Universal Resource Indicators (URIs) indicating an order of presentation of the plurality of distinct media files. The plurality of media files and the playlist file can be made available for transmission to a client device which can retrieve the media files using the playlist file. | 07-01-2010 |
20100169453 | UPDATABLE REAL-TIME OR NEAR REAL-TIME STREAMING - Methods and apparatuses for real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes dividing a stream of data, representing the contiguous time based content of a program (e.g. a live video broadcast), into a plurality of distinct media files, and generating a playlist file having a plurality of tags and Universal Resource Indicators (URIs) indicating an order of presentation of the plurality of distinct media files. The plurality of media files and the playlist file can be made available for transmission to a client device which can retrieve the media files using the playlist file. | 07-01-2010 |
20100169458 | Real-Time or Near Real-Time Streaming - Methods and apparatuses for real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes dividing a stream of data representing the contiguous time based content of a program (e.g. a live video broadcast), into a plurality of distinct media files, and generating a playlist file having a plurality of tags and Universal Resource Indicators (URIs) indicating an order of presentation of the plurality of distinct media files. The plurality of media files and the playlist file can be made available for transmission to a client device which can retrieve the media files using the playlist file. | 07-01-2010 |
20100169459 | VARIANT STREAMS FOR REAL-TIME OR NEAR REAL-TIME STREAMING - Methods and apparatuses for real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes dividing a stream of data, representing the contiguous time based content of a program (e.g. a live video broadcast), into a plurality of distinct media files, and generating a playlist file having a plurality of tags and Universal Resource Indicators (URIs) indicating an order of presentation of the plurality of distinct media files. The plurality of media files and the playlist file can be made available for transmission to a client device which can retrieve the media files using the playlist file. | 07-01-2010 |
20120110141 | VARIANT STREAMS FOR REAL-TIME OR NEAR REAL-TIME STREAMING - Methods and apparatuses for real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes dividing a stream of data, representing the contiguous time based content of a program (e.g. a live video broadcast), into a plurality of distinct media files, and generating a playlist file having a plurality of tags and Universal Resource Indicators (URIs) indicating an order of presentation of the plurality of distinct media files. The plurality of media files and the playlist file can be made available for transmission to a client device which can retrieve the media files using the playlist file. | 05-03-2012 |
20120311075 | PLAYLISTS FOR REAL-TIME OR NEAR REAL-TIME STREAMING - A content streaming system, such as an HTTP streaming system, can use a variant audio playlist that identifies different audio playlists, such as one playlist in English and one playlist in Spanish, for the same program such as a video program which is specified by a video playlist which can be separate from the variant audio playlist. A client can use the variant audio playlist to select a particular audio content for the same program, and the particular audio content can be referred to by one URL in the variant audio playlist, among a set of alternative URLs, in the variant audio playlist, for alternative audio content. | 12-06-2012 |
20120324058 | PLAYLISTS FOR REAL-TIME OR NEAR REAL-TIME STREAMING - Methods and apparatuses for real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes dividing a stream of data, representing the contiguous time based content of a program (e.g. a live video broadcast), into a plurality of distinct media files, and generating a playlist file having a plurality of tags and Universal Resource Indicators (URIs) indicating an order of presentation of the plurality of distinct media files. The plurality of media files and the playlist file can be made available for transmission to a client device which can retrieve the media files using the playlist file. | 12-20-2012 |
20130238765 | METHODS AND SYSTEMS FOR RAPID DATA ACQUISITION OVER THE INTERNET - The present invention includes apparatuses, methods, computer readable media and systems comprising means for rapid data acquisition from a server are discussed herein. This rapid data acquisition can be achieved using a combination of bulk data requests and small data requests. A hybrid approach that uses simultaneous bulk and small data requests can provide random access to data files while achieving the high download speeds of a large data transfer. | 09-12-2013 |
20140012952 | DETERMINING PLAYABILITY OF MEDIA FILES WITH MINIMAL DOWNLOADING - A method is provided through which information about media files embedded in web pages is obtained from a server and analyzed to determine if the media files are playable on a device. This information may be external to the media file or may be a portion of the media file itself. The determination of whether a media file is playable by a device is made based on information obtained from the server without downloading the entirety of the media file. | 01-09-2014 |
20140143388 | PLAYLISTS FOR REAL-TIME OR NEAR REAL-TIME STREAMING - Methods and apparatuses for real-time or near real-time streaming of content using transfer protocols such as an HTTP compliant protocol. In one embodiment, a method includes dividing a stream of data, representing the contiguous time based content of a program (e.g. a live video broadcast), into a plurality of distinct media files, and generating a playlist file having a plurality of tags and Universal Resource Indicators (URIs) indicating an order of presentation of the plurality of distinct media files. The plurality of media files and the playlist file can be made available for transmission to a client device which can retrieve the media files using the playlist file. | 05-22-2014 |
20140379873 | PLAYLISTS FOR REAL-TIME OR NEAR REAL-TIME STREAMING - Methods, systems and machine readable storage medium for allowing playback of streaming media at playback rates of other than 1× are described. In one embodiment, a method can determine different sets of I-frames that are available before a display deadline, where each set can have a different cadence, and one of the sets can be selected for download and display to achieve playback at other than 1×. Byte range requests from a client device can be used to retrieve each of the I-frames. Other methods, system and media are also described. | 12-25-2014 |
20150052186 | METHODS AND SYSTEMS FOR RAPID DATA ACQUISITION OVER THE INTERNET - The present invention includes apparatuses, methods, computer readable media and systems comprising means for rapid data acquisition from a server are discussed herein. This rapid data acquisition can be achieved using a combination of bulk data requests and small data requests. A hybrid approach that uses simultaneous bulk and small data requests can provide random access to data files while achieving the high download speeds of a large data transfer. | 02-19-2015 |