Systems, methods, and media for streaming media content
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-015/167
H04L-029/06
출원번호
US-0931198
(2013-06-28)
등록번호
US-9967305
(2018-05-08)
발명자
/ 주소
Braness, Jason A
출원인 / 주소
DIVX, LLC
대리인 / 주소
KPPB LLP
인용정보
피인용 횟수 :
4인용 특허 :
222
초록▼
Methods, systems, and computer readable media for streaming media content are provided. In some embodiments, the methods comprise: receiving top level index data from a server; caching the top level index data in an index file; receiving header data associated with a first media content file from th
Methods, systems, and computer readable media for streaming media content are provided. In some embodiments, the methods comprise: receiving top level index data from a server; caching the top level index data in an index file; receiving header data associated with a first media content file from the server; caching the header data in a header file; receiving a first segment of the first media content file based at least in part on the index file; caching the first segment of the first media content file in a first file; updating the index file to include information about the first file; and causing the first fragment to be displayed based at least in part on the index file and the header file.
대표청구항▼
1. A method for streaming media content, the method comprising: receiving on a playback device top level index data from a manifest server;caching the top level index data in a top level index file on the playback device, wherein the top level index file comprises Uniform Resource Identifiers (URIs)
1. A method for streaming media content, the method comprising: receiving on a playback device top level index data from a manifest server;caching the top level index data in a top level index file on the playback device, wherein the top level index file comprises Uniform Resource Identifiers (URIs) for a plurality of media content files with different versions;parsing the top level index file to obtain a URI of at least one header associated with a first media content file;sending at least one request that includes the URI of the at least one header associated with the first media content file to a server;receiving on the playback device header data associated with the first media content file from the server;caching the header data in a header file cached on the playback device;updating the top level index file using the playback device to include a URI providing a file path location of the header file on the playback device;obtaining at least one URI corresponding to a first fragment of the first media content file based on the top level index file;requesting the first fragment from a server based on the at least one URI corresponding to the first fragment;receiving on the playback device the first fragment of the first media content file based at least in part on the top level index file;caching the first fragment of the first media content file in a first file on the playback device;updating the top level index file using the playback device to include a URI providing the file path location of the first file that includes the cached first fragment within the storage of the playback device;receiving a request for playback of media content;retrieving the cached header file based on the updated top level index file by parsing the top level index file to obtain the URI providing the file path location of the cached header file within the storage of the playback device;configuring a decoder based at least in part upon the header data within the cached header file;retrieving the cached first fragment based on the updated top level index file by parsing the updated top level index file to obtain the URI providing the file path location of the first file that includes the cached first fragment within the storage of the playback device;extracting and decoding media content data from the cached first fragment using the decoder;causing the decoded media content data to be displayed. 2. The method of claim 1, further comprising: receiving a second fragment of a second media content file based at least in part on the top level index file;caching the second fragment of the second media content file in a second file;updating the top level index file to include a URI providing a location of the second file; andcausing the second fragment to be displayed based at least in part on the updated top level index file and the header file. 3. The method of claim 2, wherein the second media content file and the first media content file contain encoded video data having different bit rates. 4. The method of claim 2, wherein the second media content file and the first media content file contain encoded video data having different frame rates. 5. The method of claim 2, wherein the second media content file and the first media content file contain encoded video data having different resolutions. 6. The method of claim 2, further comprising retrieving the second fragment based on the updated top level index file. 7. The method of claim 1, further comprising: obtaining at least one URI corresponding to a second fragment based on the top level index file; andrequesting the second fragment from the server based on the at least one URI. 8. The method of claim 1, further comprising: requesting fragment index data based at least in part on the top level index file; andreceiving the fragment index data from the server. 9. The method of claim 1, further comprising retrieving the first file based on the updated top level index file. 10. The method of claim 1, further comprising simultaneously caching the first fragment of the first media content file and causing the first fragment to be displayed. 11. The method of claim 1, wherein the first file is an Extensible Binary Meta Language (EBML) container file. 12. A system for streaming media content, the system comprising: at least one hardware processor that is configured to:receive top level index data from a manifest server;cache the top level index data in a top level index file, wherein the top level index file comprises Uniform Resource Identifiers (URIs) for a plurality of media content files with different versions;parse the top level index file to obtain a URI of at least one header associated with a first media content file;send at least one request that includes the URI of the at least one header associated with the first media content file to a server;receive header data associated with the first media content file from the server;cache the header data in a header file cached within a storage of the system;update the top level index file to include a URI providing a file path location of the header file within the storage of the system;obtain at least one URI corresponding to a first fragment of the first media content file based on the top level index file;request the first fragment from a server based on the at least one URI corresponding to the first fragment;receive the first fragment of the first media content file based at least in part on the top level index file;cache the first fragment of the first media content file in a first file within the storage of the system;update the top level index file to include a URI providing a file path location of the first file that includes the cached first fragment within the storage of system;receive a request for playback of media content;retrieve the cached header file based on the updated top level index file by parsing the top level index file to obtain the URI providing the file path location of the cached header file within the storage of the playback device;configure a decoder based at least in part upon the header data within the cached header file;retrieve the cached first fragment based on the updated top level index file by parsing the updated top level index file to obtain the URI providing the file path location of the first file that includes the cached first fragment within the storage of the playback device;extract and decode media content data from the cached first fragment using the decoder;cause the decoded media content data to be displayed. 13. The system of claim 12, wherein the at hardware processor is further configured to: receive a second fragment of a second media content file based at least in part on the top level index file;cache the second fragment of the second media content file in a second file;update the top level index file to include a URI providing the file path location of the second file; andcause the second fragment to be displayed based at least in part on the updated top level index file and the header file. 14. The system of claim 13, wherein the second media content file and the first media content file contain encoded video data having different bit rates. 15. The system of claim 13, wherein the second media content file and the first media content file contain encoded video data having different frame rates. 16. The system of claim 13, wherein the second media content file and the first media content file contain encoded video data having different resolutions. 17. The system of claim 13, wherein the hardware processor is further configured to retrieve the second file based on the updated top level index file. 18. The system of claim 12, wherein the hardware processor is further configured to: obtain at least one URI corresponding to a second fragment based on the top level index file; andrequest the second fragment from the server based on the at least one URI. 19. The system of claim 12, wherein the hardware processor is further configured to: request fragment index data based at least in part on the top level index file; andreceive the fragment index data from the server. 20. The system of claim 12, wherein the hardware processor is further configured to retrieve the first file based on the updated top level index file. 21. The system of claim 12, wherein the at least one hardware processor is further configured to simultaneously cache the first fragment of the first media content file and cause the first fragment to be displayed. 22. The system of claim 12, wherein the first file is an Extensible Binary Meta Language (EBML) container file. 23. A non-transitory computer-readable medium containing computer-executable instructions that, when executed by a hardware processor, cause the hardware processor to perform a method for streaming media content, the method comprising: receiving top level index data from a manifest server;caching the top level index data in a top level index file, wherein the top level index file comprises Uniform Resource Identifiers (URIs) for a plurality of media content files with different versions;parsing the top level index file to obtain a URI of at least one header associated with a first media content file;sending at least one request that includes the URI of the at least one header associated with the first media content file to a server;receiving header data associated with the first media content file from the server;caching the header data in a header file cached within a storage;updating the top level index file to include a URI providing a file path location of the header file within the storage;obtaining at least one URI corresponding to a first fragment of the first media content file based on the top level index file;requesting the first fragment from a server based on the at least one URI corresponding to the first fragment;receiving the first fragment of the first media content file based at least in part on the top level index file;caching the first fragment of the first media content file in a first file within the storage;updating the top level index file to include a URI providing the file path location of the first file that includes the cached first fragment within the storage;receiving a request for playback of media content;retrieving the cached header file based on the updated top level index file by parsing the top level index file to obtain the URI providing the file path location of the cached header file within the storage of the playback device;configuring a decoder based at least in part upon the header data within the cached header file;retrieving the cached first fragment based on the updated top level index file by parsing the updated top level index file to obtain the URI providing the file path location of the first file that includes the cached first fragment within the storage of the playback device;extracting and decoding media content data from the cached first fragment using the decoder;causing the decoded media content data to be displayed. 24. The non-transitory computer-readable medium of claim 23, wherein the method further comprises: receiving a second fragment of a second media content file based at least in part on the top level index file;caching the second fragment of the second media content file in a second file;updating the top level index file to include a URI providing a location of the second file; andcausing the second fragment to be displayed based at least in part on the updated top level index file and the header file. 25. The non-transitory computer-readable medium of claim 24, wherein the second media content file and the first media content file contain encoded video data having different bit rates. 26. The non-transitory computer-readable medium of claim 24, wherein the second media content file and the first media content file contain encoded video data having different frame rates. 27. The non-transitory computer-readable medium of claim 24, wherein the second media content file and the first media content file contain encoded video data having different resolutions. 28. The non-transitory computer-readable medium of claim 24, wherein the method further comprises retrieving the second file based on the updated top level index file. 29. The non-transitory computer-readable medium of claim 23, wherein the method further comprises: obtaining at least one URI corresponding to a second fragment based on the top level index file; andrequesting the second fragment from the server based on the at least one URI. 30. The non-transitory computer-readable medium of claim 23, wherein the method further comprises: requesting fragment index data based at least in part on the top level index file; andreceiving the fragment index data from the server. 31. The non-transitory computer-readable medium of claim 23, wherein the method further comprises retrieving the first file based on the updated top level index file. 32. The non-transitory computer-readable medium of claim 23, wherein the method further comprises simultaneously caching the first fragment of the first media content file and causing the first fragment to be displayed. 33. The non-transitory computer-readable medium of claim 23, wherein the first file is an Extensible Binary Meta Language (EBML) container file.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (222)
Galligan, Francis, Adaptive video streaming using time-to-offset mapping.
Boroczky, Lilla; Ngai, Agnes Y.; Westermann, Edward F., Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel.
Branstad Mark W. (Rochester MN) Byrn Jonathan W. (Rochester MN) Delp Gary S. (Rochester MN) Leichty Philip L. (Rochester MN) Lynch Jeffrey J. (Apex NC) Plotz Kevin G. (Byron MN) Sendelbach Lee A. (Ro, Apparatus and method for segmentation and time synchronization of the transmission of multimedia data.
Carmel, Sharon; Gill, Dror; Shoham, Tamar, Apparatus and methods for re-compression having a monotonic relationship between extent of compression and quality of compressed image.
Nonomura Tomoyuki,JPX ; Inoue Mitsuhiro,JPX ; Uesaka Yasushi,JPX ; Kozuka Masayuki,JPX, Apparatus for generating sub-picture units for subtitles and storage medium storing sub-picture unit generation program.
Kollmyer,Brad; Baker,Brian; Shapiro,Eric; Kollmyer,Aric; Rutman,Mike; MacLean,Duncan; Robertson,Dan; Taylor,Neal; Hunsche,Dick; Walker,Amanda, Apparatus, system and method for selectively encrypting different portions of data sent over a network.
Walsh Bruce E. ; Herdrich John ; Smith William ; Vrabel Mark E. ; Borghesani Philip ; Hagberg Christine G. ; Champagne Karen, Computer based video system.
Beitel Bradley J. (Woodside CA) Bishop Mark S. (Austin TX) Burns Nancy A. (Austin TX) Deacon John J. (Austin TX) Gordon Robert D. (Sunnyvale CA) Haug Charles L. (Santa Cruz CA) Smith Kenneth B. (Palo, Computer-based, audio/visual creation and presentation system and method.
Beitel Bradley J. (Woodside CA) Bishop Mark S. (Austin TX) Deacon John J. (Austin TX) Gordon Robert D. (Sunnyvale CA) Smith Kenneth B. (Palo Alto CA) Walling Lonnie S. (Ben Lomond CA) Wilkes Michael , Computer-based, audio/visual creation and presentation system and method.
Adams Robert (Lake Oswego OR) Williams David M. (Portland OR) Richardson John (Portland OR) Perry Burt (Beaverton OR), Content programmer control of video and data display using associated data.
Boroczky, Lilla; Ngai, Agnes Y.; Westermann, Edward F., Control strategy for dynamically encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel.
Katayama Hironobu,JPX ; Nogami Hiroaki,JPX ; Shiraishi Kenichi,JPX, Digital recording and reproducing apparatus which multiplexes and records HDTV, SDTV and trick play data together on a magnetic tape.
Grab, Eric William; Russell, Chris; Chan, Francis Yee-Dug; Kiefer, Michael George, Federated digital rights management scheme including trusted systems.
Lyons Paul Wallace ; Beltz John Prickett ; Acampora Alfonse Anthony, Flow control, latency control, and bitrate conversions in a timing correction and frame synchronization apparatus.
Pensak David A. ; Cristy John J. ; Singles Steven J., Information security architecture for encrypting documents for remote access while maintaining access control.
Ando,Hideo; Kikuchi,Shinichi; Taira,Kazuhiko; Ito,Yuji, Information storage system capable of recording and playing back a plurality of still pictures.
Rossum David P. ; Guzewicz Michael ; Crawford Robert S. ; Williams Matthew F. ; Ruffcorn Donald F., Method and apparatus for formatting digital audio data.
Kwon, O-hoon; Ha, Ho-jin; Zhang, Guanhua; Choi, Hyung-tak; Kim, Sun-bal; Keum, Ji-Eun; Im, Sung-bin, Method and apparatus for providing trick play service.
Donald F. Gordon ; Ted Ludvig, Method and apparatus for simultaneously producing compressed play and trick play bitstreams from a video frame sequence.
Boyce Jill MacDonald ; Lane Frank Anton, Method and apparatus for the selection of data for use in VTR trick playback operation in a system using intra-coded vid.
Suzuki Hideharu (Tokyo JPX) Ishibashi Yutaka (Aichi JPX) Nishimura Kazutoshi (Tokyo JPX), Method and apparatus for visual search control of digital video files.
Woo,Je Hak; Lee,Hwan Chul; Cho,Sang Young; Jeong,Seong Ho; Ha,Young Soo; Shin,Seog Kyoon; Kim,Seong Il, Method and system for the information protection of digital content.
Carmel Sharon,ILX ; Daboosh Tzur,ILX ; Reifman Eli,ILX ; Shani Naftali,ILX ITX 62917, Method and system of building and transmitting a data file for real time play of multimedia, particularly animation, and.
DeWitt Frederick J. (Kirkland WA) Stewart Peter B. (Redmond WA), Method and system using pathnames to specify and access audio data at fidelity levels other than the level at which the.
Kim,Kwang Su, Method for creating caption-based search information of moving picture data, searching and repeating playback of moving picture data based on said search information, and reproduction apparatus using said method.
Yoshida Masayuki (Yokohama JPX) Nakanishi Keiko (Tokyo JPX), Method of commonly using font information for outputting information in a system having a plurality of information proce.
Foehr,Oliver H.; Dunietz,Jerry; Leonov,Mikhail V.; Brown,David C.; Daniels,Simon, Methods for providing an accurate visual rendition of a text element formatted with an unavailable font.
Morris James K. (Arlington VA) Probst Robert E. (Reston VA) Utley Robert A. (Randallstown MD), Multimedia complex form creation, display and editing method apparatus.
Dinallo Chris A. (Boca Raton FL) Koval Michael J. (Boca Raton FL) Lawton William W. (Boca Raton FL) Paulat ; Jr. Martin J. (Delray Beach FL) Tyler John G. (Boynton Beach FL) Winters Scott L. (Plantat, Personal computer with generalized data streaming apparatus for multimedia devices.
Okubo, Masafumi; Oashi, Masahiro; Ohto, Hidetaka, Playback device, playback method, and computer-readable recording medium for ensuring stable application execution in synchronism with video data playback.
Pantos, Roger; Biderman, David; May, Jr., William; Flick, Christopher; Bushell, John Samuel; Calhoun, John Kevin, Playlists for real-time or near real-time streaming.
Gutfreund, Steven; Nicol, John R.; Rush, Kimberly; Martin, Christopher M.; Paschetto, James, Real time media journaler with a timing event coordinator.
Tanaka Yasuyuki,JPX ; Fujii Akio,JPX ; Kato Masato,JPX, Recording apparatus for newly recording a second encoded data train on a recording medium on which an encoded data train is recorded.
Nogami Hiroaki,JPX ; Katayama Hironobu,JPX, Recording apparatus which adaptively records amounts of low resolution video inversely to amounts of high resolution video which has the same program content.
Kollmyer,Brad; Baker,Brian A.; Shapiro,Eric Bradley; Kollmyer,Aric; Rutman,Mike; MacLean,Charles Duncan; Robertson,Dan; Taylor,Neal; Hunsche,Dick; Walker,Amanda, Selectively encrypting different portions of data sent over a network.
Soroushian, Kourosh; Salmonsen, Dan; Landeros, Porfirio; Priyadarshi, Shaiwal; Gravel, Francois, Singular, collective and automated creation of a media guide for online content.
Goldmark Peter C. (Stamford CT) Dolan Donald T. (Ridgefield CT) Desai Arvind C. (Stamford CT) Hollywood John M. (Old Greenwich CT), Still picture program video recording composing and playback method and system.
Zintel, William Michael; Christian, Brian S.; Christian, Bradford A., Synchronization of controlled device state using state table and eventing in data-driven remote device control model.
Abbott Michael J. ; Close Paul ; Smith Kevin P., System and method for media stream synchronization with a base atom index file and an auxiliary atom index file.
Dockter Michael J. (Hollister CA) Haug Charles L. (Santa Cruz CA) Seppi Kevin D. (Austin TX), System and method for synchronization of multimedia streams.
Chen Huey-Shiang ; Chen Mon-Song ; Huang Shiow-Laang ; Song Deyang, System for just-in-time retrieval of multimedia files over computer networks by transmitting data packets at transmissio.
Braness, Jason; van der Schaar, Auke Sjoerd; Soroushian, Kourosh, Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol.
Soroushian, Kourosh; Douglas, Scott; Bramwell, Steve; Braness, Jason; Shivadas, Abhishek, Systems and methods for encoding media including subtitles for adaptive bitrate streaming.
Braness, Jason; van der Schaar, Auke Sjoerd; Soroushian, Kourosh, Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol.
Braness, Jason; Wallin, Evan; Ferreira, Ederson, Systems and methods for performing adaptive bitrate streaming using automatically generated top level index files.
Braness, Jason; Soroushian, Kourosh; van der Schaar, Auke Sjoerd, Systems and methods for performing smooth visual search of media encoded for adaptive bitrate streaming via hypertext transfer protocol using trick play streams.
Kiefer, Michael George; Grab, Eric William; Braness, Jason, Systems and methods for playing back alternative streams of protected content protected using common cryptographic information.
Kiefer, Michael George; Grab, Eric William; Braness, Jason, Systems and methods for playing back alternative streams of protected content protected using common cryptographic information.
Kiefer, Michael George; Grab, Eric William; Braness, Jason, Systems and methods for playing back alternative streams of protected content protected using common cryptographic information.
Kiefer, Michael George; Grab, Eric William; Braness, Jason, Systems and methods for protecting alternative streams in adaptive bitrate streaming systems.
Ginter Karl L. ; Shear Victor H. ; Sibert W. Olin ; Spahn Francis J. ; Van Wie David M., Systems and methods for secure transaction management and electronic rights protection.
Eerenberg, Onno; Rijckaert, Albert M. A.; Bruls, Wilhelmus H. A., Trick play signal generation for a digital video recorder using retrieved intra-encoded pictures and generated inter-encoded pictures.
Sakamoto Hideki,JPX ; Kawaguchi Tomoaki,JPX ; Suzuki Hideharu,JPX ; Mori Tatsuo,JPX ; Kimiyama Hiroyuki,JPX ; Nishimura Kazutoshi,JPX ; Itoh Kouichi,JPX ; Maruyama Mitsuru,JPX ; Sugiyama Hiroshi,JPX , Video data playback system using effective scheme for producing coded video data for fast playback mode.
Branstad Mark W. (Rochester MN) Byrn Jonathan W. (Rochester MN) Delp Gary S. (Rochester MN) Leichty Phillip L. (Rochester MN) Lynch Jeffrey J. (Apex NC) Plotz Kevin G. (Byron MN) Sendelbach Lee A. (R, apparatus and method for segmentation and time synchronization of the transmission of multimedia data.
Kiefer, Michael George; Grab, Eric William; Braness, Jason, Playback devices and methods for playing back alternative streams of content protected using a common set of cryptographic keys.
Kiefer, Michael George; Grab, Eric William; Braness, Jason, Systems and methods for playing back alternative streams of protected content protected using common cryptographic information.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.