Video distribution system including progressive playback
US-8977768-B2 · Mar 10, 2015 · US
US9794318B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9794318-B2 |
| Application number | US-201514632670-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 26, 2015 |
| Priority date | Jan 5, 2007 |
| Publication date | Oct 17, 2017 |
| Grant date | Oct 17, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A receiver driven approach for playback of remote content is described. One embodiment includes obtaining information concerning the content of the media file from the remote server, identifying a starting location within the media sequence, identifying byte ranges of the media file corresponding to media required to play the media sequence from the starting location, requesting the byte ranges required to play the media sequence from the starting location, buffering received bytes of information pending commencement of playback, playing back the buffered bytes of information, receiving a user instruction, identifying byte ranges of the media file corresponding to media required to play the media sequence in accordance with the user instruction, flushing previous byte range requests, and requesting the byte ranges required to play the media in accordance with the user instruction.
Opening claim text (preview).
What is claimed is: 1. A method for obtaining media from a media file for playback on a playback device from a remote server, the media formatted to represent media as chunks, comprising: download an index from a remote media file, using a playback engine implemented on the playback device, wherein the index is used to convert a chunk reference into a specific HTTP request for use in downloading; request chunks for downloading based upon a received instruction and maintain a queue of the requested chunks, using the playback engine implemented on the playback device, wherein the requested chunks are downloaded by identifying media chunks corresponding to a sequence of key frames identified for the received instruction; receive a requested chunk and remove the received chunk from the queue of requested chunks, using the playback engine implemented on the playback device; maintain a playback queue of received chunks for playback pending commencement of playback by the playback device, using the playback engine implemented on the playback device; and provide chunks maintained in the playback queue to a decoder to enable playing of the media by the playback device, using the playback engine implemented on the playback device. 2. The method of claim 1 , wherein the chunks are requested based upon an earliest deadline first selection strategy. 3. The method of claim 1 , wherein chunks are requested prior to the downloading of the entire index. 4. The method of claim 1 , wherein chunks from a start of a media sequence are downloaded simultaneously as the index is downloaded. 5. The method of claim 1 , wherein playing of the media comprises determining a sufficient amount of the media has been downloaded, wherein a buffered length is determined by a length of a playback list shared with the downloaded chunks. 6. The method of claim 1 , wherein the queue of requested chunks is a list of index entries for the requested chunks. 7. The method of claim 1 , further comprising polling the download status of the requested chunks. 8. The method of claim 1 , wherein the received instruction is a trick play instruction and requesting only key frames that are spaced throughout the media sequence at a timing determined by a rate of the trick play instruction. 9. The method of claim 8 , wherein the spacing is a multiple of a trick play frame rate. 10. A playback device for streaming media content, the playback device comprising: at least one hardware processor that is configured to: download an index from a remote media file, wherein the index is used to convert a chunk reference into a specific HTTP request for use in downloading; request chunks for downloading based upon a received instruction and maintain a queue of the requested chunks, wherein the requested chunks are downloaded by identifying media chunks corresponding to a sequence of key frames identified for the received instruction; receive a requested chunk and remove the received chunk from the queue of requested chunks; maintain a playback queue of received chunks for playback pending commencement of playback by the playback device; and provide chunks maintained in the playback queue to a decoder to enable playing of the media by the playback device. 11. The playback device of claim 10 , wherein the chunks are requested based upon an earliest deadline first selection strategy. 12. The playback device of claim 10 , wherein chunks are requested prior to the downloading of the entire index. 13. The playback device of claim 10 , wherein chunks from a start of a media sequence are downloaded simultaneously as the index is downloaded. 14. The playback device of claim 10 , wherein playing of the media comprises determining a sufficient amount of the media has been downloaded, wherein a buffered length is determined by a length of a playback list shared with the downloaded chunks. 15. The playback device of claim 10 , wherein the queue of requested chunks is a list of index entries for the requested chunks. 16. The playback device of claim 10 , further comprising polling the download status of the requested chunks. 17. The playback device of claim 10 , wherein the received instruction is a trick play instruction and requesting only key frames that are spaced throughout the media sequence at a timing determined by a rate of the trick play instruction. 18. The playback device of claim 17 , wherein the spacing is a multiple of a trick play frame rate.
End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content {(end-user interfaces for retrieving video data from a database G06F16/739; network services for supporting unicast streaming H04L65/612)} · CPC title
involving video buffer management, e.g. video decoder buffer or video display buffer · CPC title
Direct or substantially direct transmission and handling of requests · CPC title
Adaptations for reproducing at a rate different from the recording rate · CPC title
Indexing; Data structures therefor; Storage structures · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.