Content streaming with client device trick play index
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
H04N-021/6587
H04N-021/845
H04N-021/472
H04N-021/2343
H04N-021/4405
출원번호
US-0905804
(2013-05-30)
등록번호
US-9247317
(2016-01-26)
발명자
/ 주소
Shivadas, Abhishek
Bramwell, Stephen R.
출원인 / 주소
Sonic IP, Inc.
대리인 / 주소
KPPB LLP
인용정보
피인용 횟수 :
10인용 특허 :
107
초록▼
An apparatus downloads files of encoded video including interspersed key frames over a communication network. The apparatus plays back video from the downloaded files and creates a trick play index based on the downloaded files. The trick play index indicates network locations of the key frames in t
An apparatus downloads files of encoded video including interspersed key frames over a communication network. The apparatus plays back video from the downloaded files and creates a trick play index based on the downloaded files. The trick play index indicates network locations of the key frames in the encoded video files. When the apparatus receives a trick play request, such as rewind or fast forward, the client device downloads the key frames from the indicated network locations, and plays back video from the downloaded key frames.
대표청구항▼
1. A method of video playback with trick play, the method performed by a playback device, the method comprising: streaming video at a playback device, wherein streaming video comprises: downloading, at the playback device, blocks of encoded video including a plurality of interspersed key frames, whe
1. A method of video playback with trick play, the method performed by a playback device, the method comprising: streaming video at a playback device, wherein streaming video comprises: downloading, at the playback device, blocks of encoded video including a plurality of interspersed key frames, wherein the blocks of encoded video are downloaded from a remote content source over a communication network,playing back video from the downloaded blocks of encoded video at the playback device; andincrementally creating a trick play index as each block of encoded video is downloaded at the playback device by identifying network locations of the downloaded blocks of encoded video and parsing each downloaded block of encoded video to determine an offset from the beginning of the downloaded block to a key frame within the downloaded block of encoded video;storing the created trick play index at the playback device, wherein the stored trick play index indicates the network locations of the downloaded blocks of encoded video and the offsets for the key frames within the downloaded blocks of encoded video; andreceiving a trick play request at the playback device and, in response to the trick play request: downloading, at the playback device, key frames using the network locations and the offsets indicated in the previously stored trick play index, andplaying back video from the downloaded key frames at the playback device. 2. The method of claim 1, wherein the encoded video comprises successive encoded video frames, including: non-key frames each encoded based on one or more other video frames of the encoded video; andthe key frames interspersed among the non-key frames, each of the key frames encoded independent of other video frames of the encoded video, and thereby capable of being decoded independent of the other video frames. 3. The method of claim 2, wherein the key frames include intra-coded I-frames and the non-key frames include inter-coded P-frames. 4. The method of claim 2, wherein: the playing back video from the downloaded blocks of encoded video includes: decoding the non-key frames and the key frames in the downloaded blocks of encoded video to recover the video encoded therein, andpresenting the recovered video; andthe playing back video from the downloaded key frames includes: decoding the downloaded key frames to recover the video encoded therein, andpresenting the recovered video. 5. The method of claim 1, further comprising: prior to the downloading the blocks of encoded video, receiving a playlist over the communication network, the playlist listing network addresses where the blocks of encoded video are accessible; andwherein downloading the blocks of encoded video includes downloading the blocks of encoded video from the network addresses listed in the playlist. 6. The method of claim 1, wherein the creating the trick play index includes, for each downloaded block of encoded video: determining a size of the key frame within the downloaded block; andstoring, in the index, the offset and the size of the key frame,wherein the network address of the block of encoded video and the offset of the key frame together represent one of the indicated network locations within the trick play index. 7. The method of claim 1, wherein: the downloaded as blocks of encoded video, and correspondingly the key frames interspersed therein, are associated with successive time codes;the playing back video from the downloaded blocks of encoded video includes playing back the video from the downloaded blocks of encoded video in a forward direction of increasing time codes; andthe playing back in response to the trick play request includes playing back the downloaded key frames in a rewind direction of decreasing time codes. 8. The method of claim 7, further comprising: receiving a subsequent trick play request and, in response thereto: downloading further key frames from network addresses indicated in the stored trick play index; andplaying back video from the downloaded further key frames in the forward direction of increasing time codes. 9. The method of claim 1, further comprising: after creating the trick play index and before receiving the trick play request, uploading the trick play index to a particular network address; andafter receiving the trick play request and before downloading the key frames, downloading the trick play index from the particular network address. 10. An apparatus for video playback with trick play, comprising: a processor;a memory storing an application;wherein the application directs the processor to: download blocks of encoded video including a plurality of interspersed key frames, wherein the blocks of encoded video are downloaded from a remote content source over a communication network;play back video from the downloaded blocks of encoded video;incrementally create a trick play index as each block of encoded video is downloaded at the apparatus for video playback by identifying network locations of the downloaded blocks of encoded video and parsing each downloaded block of encoded video to determine an offset from the beginning of the downloaded block to a key frame within the downloaded block;store the created trick play index, wherein the stored trick play index indicates the network locations of the downloaded blocks of encoded video and the offsets for the key frames within the downloaded blocks of encoded video; andreceive a trick play request and, in response to the trick play request: download key frames using the network locations and the offsets indicated in the previously stored trick play index, andplay back video from the downloaded key frames. 11. The apparatus of claim 10, wherein the encoded video comprises successive encoded video frames, including: non-key frames each encoded based on one or more other video frames; andthe key frames interspersed among the non-key frames, each of the key frames encoded independent of other video frames, and thereby capable of being decoded independent of the other video frames. 12. The apparatus of claim 11, wherein the key frames include intra-coded I-frames and the non-key frames include inter-coded P-frames. 13. The apparatus of claim 10, wherein the application further directs the processor: prior to when the blocks of encoded video are downloaded, receive a playlist over the communication network, the playlist listing network addresses where the blocks of encoded video are accessible; andwherein the application further directs the processor to download the blocks of encoded video from the network addresses listed in the playlist. 14. The apparatus of claim 10, wherein the application further directs the processor to, for each downloaded block of encoded video: determine a size of the key frame within the downloaded block; andstore, in the index, the offset and the size of the key frame,wherein the network address of the block of encoded video and the offset of the key frame together represent one of the indicated network locations within the trick play index. 15. The apparatus of claim 10, wherein: the downloaded blocks of encoded video, and correspondingly the key frames interspersed therein, are associated with successive time codes;the application further directs the processor to play back the video from the downloaded blocks of encoded video in a forward direction of increasing time codes; andthe application further directs the processor to play back the downloaded key frames in a reverse direction of decreasing time codes in response to the trick play request. 16. The apparatus of claim 15, wherein the application further directs the processor to: receive a subsequent trick play request and, in response thereto: download further key frames from network addresses indicated in the stored trick play index, andplay back video from the downloaded further key frames in the forward direction of increasing time codes. 17. The apparatus of claim 10, further comprising: a communication system to communicate with the communication network;a user interface system; anda housing to house the processor system, the communication system, and the user the interface system. 18. The apparatus of claim 17, wherein: the communication system includes a wireless communication system; andthe housing includes a mobile hand-held housing to house the processor system, the communication system, the user interface system, and a battery. 19. A non-transitory computer readable medium encoded with a computer program including instructions to cause a processor of a playback device to: stream video, wherein the instructions to stream video further comprise instructions to: download blocks of encoded video including a plurality of interspersed key frames, wherein the blocks of encoded video are downloaded from a remote content source over a communication network;play back video from the downloaded blocks of encoded video;during execution of the instructions to stream video, incrementally create a trick play index as each block of encoded video is downloaded by identifying network locations of the downloaded blocks of encoded video and parsing each downloaded block of encoded video to determine an offset from the beginning of the downloaded block to a key frame within the downloaded block;store the created trick play index, wherein the stored trick play index indicates the network locations of the downloaded blocks of encoded video and the offsets for the key frames within the downloaded blocks of encoded video; andreceive a trick play request and, in response to the trick play request: downloading key frames using the network locations and the offsets indicated in the previously stored trick play index, andplaying back video from the downloaded key frames. 20. The computer program product of claim 19, wherein the encoded video comprises successive encoded video frames, including: non-key frames each encoded based on one or more other video frames of the encoded video; andthe key frames interspersed among the non-key frames, each of the key frames encoded independent of other video frames of the encoded video, and thereby capable of being decoded independent of the other video frames. 21. The computer program product of claim 20, wherein the key frames include intra-coded I-frames and the non-key frames include inter-coded P-frames. 22. The computer program product of claim 19, wherein the instructions further include instructions to cause the processor to: prior to the downloading the blocks of encoded video, receive a playlist over the communication network, the playlist listing network addresses where the blocks of encoded video are accessible; andwherein the instruction to cause the processor to download the blocks of encoded video further include instructions to cause the processor to download the blocks of encoded video from the network addresses listed in the playlist. 23. The computer program product of claim 19, wherein the instruction to cause the processor to create the trick play index further include instructions to cause the processor to, for each downloaded block of encoded video: determine a size of the key frame within the downloaded block; andstore, in the index, the offset and the size of the key frame,wherein the network address of the block of encoded video and the offset of the key frame together represent one of the indicated network locations within the trick play index. 24. The computer program product of claim 19, wherein: the downloaded as blocks of encoded video, and correspondingly the key frames interspersed therein, are associated with successive time codes;the instructions to cause the processor to playback video from the downloaded blocks of encoded video further include instructions to cause the processor to playback the video from the downloaded blocks of encoded video in a forward direction of increasing time codes; andthe instructions to cause the processor to playback in response to the trick play request further include instructions to cause the processor to playback the downloaded key frames in a rewind direction of decreasing time codes. 25. The computer program product of claim 24, wherein the instructions further include instructions to cause the processor to: receive a subsequent trick play request and, in response thereto, download further key frames from network addresses indicated in the stored trick play index; andplay back video from the downloaded further key frames in the forward direction of increasing time codes.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (107)
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.
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.
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.
Pensak David A. ; Cristy John J. ; Singles Steven J., Information security architecture for encrypting documents for remote access while maintaining access control.
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.
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.
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.
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.
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.
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.
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.
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.
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.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.