Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-015/16
H04L-029/06
H04N-021/2343
H04N-021/845
H04L-029/08
출원번호
US-0545697
(2012-07-10)
등록번호
US-9253233
(2016-02-02)
발명자
/ 주소
Luby, Michael George
Minder, Lorenz Christoph
출원인 / 주소
QUALCOMM Incorporated
대리인 / 주소
Chiang, Campbell C.
인용정보
피인용 횟수 :
4인용 특허 :
230
초록▼
The switch signaling methods providing improved switching between representations for adaptive HTTP streaming described herein enable user experience and bandwidth efficiency improvements for adaptive HTTP streaming solutions, even when segment data is encrypted. The signaling methods include associ
The switch signaling methods providing improved switching between representations for adaptive HTTP streaming described herein enable user experience and bandwidth efficiency improvements for adaptive HTTP streaming solutions, even when segment data is encrypted. The signaling methods include associating segment maps with segments of a representation, wherein a segment map comprises both temporal entry and temporal exit points within associated segments together with byte offset information and potentially other segment information, wherein segment maps may be generated with predictable time span patterns that are independent of the time spans of the associated segments. These embodiments can be used to enhance existing deployments in such a way that there is no need to change existing content encoding and formatting processes, and such that existing clients that receive and play out content are unaffected.
대표청구항▼
1. A method of signaling, in a media stream sent from a server to a client, for switching between representations for adaptive HTTP streaming, the method comprising: generating a segment map for one or more segments of a representation, the segment map including one or more temporal entry points and
1. A method of signaling, in a media stream sent from a server to a client, for switching between representations for adaptive HTTP streaming, the method comprising: generating a segment map for one or more segments of a representation, the segment map including one or more temporal entry points and byte offset information for each of the one or more temporal entry points, the segment map further including one or more temporal exit points and byte offset information for each of the one or more temporal exit points, wherein a temporal entry point indicates an entry frame and a corresponding byte offset within the representation at which a switch from one or more other representations to the representation can be made and at which the representation can be played out to any subsequent temporal exit point of the representation, wherein a temporal exit point indicates an exit frame and a corresponding byte offset within the representation at which a switch from the representation can be made to the one or more other representations, and wherein play out can start at any entry point of the representation previous to the temporal exit point and played out to the temporal exit point; andassociating the segment map with the one or more segments of the representation. 2. A method of formatting content that is streamed as a plurality of representations, wherein each of the plurality of representations is an alternative for an item of content, the method comprising: organizing a first representation of the plurality of representations as a plurality of segments, wherein a segment comprises data relating to a portion of a representation that has a temporal order among other segments for the representation, and wherein a segment is usable by a receiver that does not have access to prior segments;generating a segment map for one or more segments of the first representation, the segment map including one or more temporal entry points and byte offset information for each of the one or more temporal entry points, the segment map further including one or more temporal exit points and byte offset information for each of the one or more temporal exit points, wherein a temporal entry point indicates an entry frame and a corresponding byte offset within the first representation at which a switch from one or more other representations to the first representation can be made and at which the first representation can be played out to any subsequent temporal exit point of the first representation, wherein a temporal exit point indicates an exit frame and a corresponding byte offset within the first representation at which a switch from the first representation can be made to the one or more other representations, and wherein play out can start at any entry point of the first representation previous to the temporal exit point and played out to the temporal exit point; andaligning the one or more temporal entry points and the one or more temporal exit points of the first representation with one or more temporal entry points and one or more temporal exit points of a second representation, wherein aligning results in a presentation time for a temporal entry point for a segment in the first representation matching a presentation time for a temporal exit point for a segment in the second representation. 3. The method of claim 2, further comprising: determining, for each segment, a filename; andstoring content of each segment as a plurality of files using the filename of each segment so stored. 4. The method of claim 3, further comprising: determining, at a client consuming content, a content request, wherein the content request specifies at least one representation and a presentation time range;determining a set of one or more URLs for one or more files in the plurality of files that represent one or more segments corresponding to the content request;requesting the one or more segments using the set of one or more URLs;receiving the one or more segments; andproviding content from the one or more segments to a content consumer at the client. 5. A method of requesting content using a client device configured to connect to a network, make requests over the network, and present content having a nonzero playout time, the method comprising: determining a content request, wherein the content request specifies at least one representation and a presentation time range, the presentation time range defining at least a portion of the representation being requested;reading, from a stored media representation dataset, a request format template, a segment time length and a variable segment range, the variable segment range defining a variation in presentation time range for segments, the variation being relative to the segment time length stored in the media representation dataset;comparing a value of the segment time length to a temporal entry point corresponding to a start of the presentation time range to determine an initial segment index, the temporal entry point indicating an entry frame and a corresponding byte offset within the representation at which a switch from one or more other representations to the representation can be made and at which the representation can be played out to any subsequent temporal exit point of the representation, wherein a temporal exit point indicates an exit frame and a corresponding byte offset within the representation at which a switch from the representation can be made to the one or more other representations, and wherein play out can start at any entry point of the representation previous to the temporal exit point and played out to the temporal exit point;evaluating the initial segment index, the variable segment range, and the segment time length to determine a desired segment index;generating a file request corresponding to the content request based on the desired segment index and the request format template; andrequesting at least one file using the file request. 6. The method of claim 5, wherein the file request is a URL and requesting at least one file is performed using HTTP requests using the URL. 7. The method of claim 5, wherein the initial segment index is determined by dividing the temporal entry point by the segment time length and the desired segment index is determined as the initial segment index when a remainder from the dividing is less than the variable segment range and is determined as a segment index immediately prior to the initial segment when a remainder from the dividing is equal to or greater than the variable segment range. 8. The method of claim 5, further comprising repeating file requests until a segment is received that contains content with a temporal exit point corresponding to, or later than, an end of the presentation time range. 9. The method of claim 5, wherein the variation being relative to the segment time length is a time range such that a segment presentation time is between the segment time length and the segment time length plus the time range of the variation, inclusive. 10. The method of claim 5, wherein the variation being relative to the segment time length is a proportion, P, such that a segment presentation time is between 1.0 times the segment time length and 1+P times the segment time length, inclusive. 11. The method of claim 5, wherein the variation being relative to the segment time length is a time range such that a segment presentation time can be greater than or less than the segment time length ranging over the time range of the variation. 12. The method of claim 11, further comprising repeating file requests until a segment is received that contains content with a temporal exit point corresponding to, or later than, an end of the presentation time range. 13. The method of claim 5, wherein segments are requested from one of a plurality of representations, wherein each of the plurality of representations is an alternative for an item of content. 14. A client device configured to request content over a network and present the content retrieved over the network, the content having a nonzero playout time, the client device comprising: a processing element capable of executing stored instructions;memory capable of storing data;memory capable of storing instructions;program code for determining a content request, wherein the content request specifies at least one representation and a presentation time range, the presentation time range defining at least a portion of the presentation being requested;program code for reading, from stored media representation dataset, a request format template, a segment time length and a variable segment range, the variable segment range defining a variation in presentation time range for segments, the variation being relative to the segment time length stored in the media representation dataset;program code for comparing a value of the segment time length to a temporal entry point corresponding to a start of the presentation time range to determine an initial segment index, the temporal entry point indicating an entry frame and a corresponding byte offset within the representation at which a switch from one or more other representations to the representation can be made and at which the representation can be played out to any subsequent temporal exit point of the representation, wherein a temporal exit point indicates an exit frame and a corresponding byte offset within the representation at which a switch from the representation can be made to the one or more other representations, and wherein play out can start at any entry point of the representation previous to the temporal exit point and played out to the temporal exit point;program code for evaluating the initial segment index, the variable segment range, and the segment time length to determine a desired segment index;program code for generating a file request corresponding to the content request based on the desired segment index and the request format template;a network interface for sending messages to the network and receiving messages from the network; andprogram code for requesting at least one file using the file request. 15. The client device of claim 14, wherein the network interface is a wireless network interface. 16. The client device of claim 14, wherein the network interface is a wired network interface. 17. The client device of claim 14, wherein the file request is a URL and requests are HTTP requests using the URL. 18. The client device of claim 14, further comprising program code for repeating file requests until a segment is received that contains content with a temporal exit point corresponding to, or later than, an end of the presentation time range. 19. The client device of claim 14, wherein the variation being relative to the segment time length is a time range such that a segment presentation time is between the segment time length and the segment time length plus the time range of the variation, inclusive. 20. The client device of claim 14, wherein the variation being relative to the segment time length is a proportion, P, such that a segment presentation time is between 1.0 times the segment time length and 1+P times the segment time length, inclusive. 21. The client device of claim 14, wherein the variation being relative to the segment time length is a time range such that a segment presentation time can be greater than or less than the segment time length ranging over the time range of the variation.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (230)
Parry, William G.; Lee, Mingtzong; Lorton, Christopher W.; Raja, Jayachandran; Smirnov, Serge, Analyzing, indexing and seeking of streaming information.
Chang,Hoon; Lee,Hyun Seok; Kim,Dae Gyun; Koo,Chang Hoi, Apparatus and method for exchanging variable-length data according to radio link protocol in mobile communication system.
Chang,Hoon; Lee,Hyun Seok; Kim,Dae Gyun; Koo,Chang Hoi, Apparatus and method for exchanging variable-length data according to radio link protocol in mobile communication system.
Eberlein Ernst,DEX ; Breiling Marco,DEX ; Stoessel Jan,DEX ; Gerhauser Heinz,DEX, Apparatus and method for transmitting information and apparatus and method for receiving information.
Oh, Jong-Ee; Lee, Sok-Kyu; Cheong, Min-Ho; Choi, Jee-Yon; Park, Jae-Woo; Chung, Hyun-Kyu, Apparatus and method for transmitting/receiving data in communication system.
Dill,Jeffrey C.; Lopez Permouth,Sergio R.; Lindsey,Alan Ray; Lo,Yung Cheng; Alder,Frank A.; Song,Xiangyu, Apparatus and method of CTCM encoding and decoding for a digital communication system.
Watson, Mark; Luby, Michael G., Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems.
Gelman Alexander (Brooklyn NY) Kobrinski Haim (Colts Neck NJ) Smoot Lanny S. (Morris Township ; Morris County NJ) Weinstein Stephen B. (Summit NJ), Communications architecture and method for distributing information services.
Glover Willie T. (San Jose CA) Singh Gururaj (San Jose CA) Gupta Amar (Cupertino CA) Newman Peter (Mountain View CA), Concurrent multi-channel segmentation and reassembly processors for asynchronous transfer mode.
Bolosky William J. ; Douceur John R., Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates.
Witty Carl R. ; Birdwell Kenneth J. ; Sargent James Randall ; Moran Brian, Data delivery system and method for delivering data and redundant information over a unidirectional network.
Butterfield Lee A ; Giallorenzi Thomas R ; Gibson ; Jr. L Andrew ; Griffin Dan M ; Harris Johnny M ; Perkins Steven B ; Steagall R William, Data scrambling system and method and communications system incorporating same.
Shokrollahi,M. Amin, Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters.
Shokrollahi,M. Amin, Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters.
Schuster Guido M. ; Borella Michael ; Mahler Jerry ; Sidhu Ikhlaq, Forward error correction system for packet based data and real time media, using cross-wise parity calculation.
Luby Michael G. ; Shokrollahi Mohammad Amin,DEX ; Stemann Volker,DEX ; Mitzenmacher Michael D. ; Spielman Daniel A., Irregularly graphed encoding technique.
Wolfgang, H. Lewis, METHOD FOR PACKET-LEVEL FEC ENCODING, IN WHICH ON A SOURCE PACKET-BY-SOURCE PACKET BASIS, THE ERROR CORRECTION CONTRIBUTIONS OF A SOURCE PACKET TO A PLURALITY OF WILDCARD PACKETS ARE COMPUTED, AND TH.
Luby Michael G. ; Mitzenmacher Michael D. ; Shokrollahi Mohammad Amin,DEX ; Spielman Daniel A. ; Stemann Volker,DEX, Message encoding with irregular graphing.
Krause Edward A. ; Shen Paul ; Tom Adam S., Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping prese.
Kroeger, Brian William; Vojcic, Branimir; Pickholtz, Raymond L.; El-Dinary, Ashruf, Method and apparatus for forward error correction coding for an AM in-band on-channel digital audio broadcasting system.
Miura,Tsuyoshi; Ihara,Noriyuki; Fujita,Shin; Nakagawa,Akira; Ichiki,Atsushi, Method and apparatus for generating error correction data, and a computer-readable recording medium recording an error correction data generating program thereon.
Deck Bernhard,DEX ; Lehmann Josef,DEX ; Ramseier Stefan,CHX ; Westby Oddleif,NOX, Method and apparatus for information transmission via power supply lines.
Balicki Janusz K. ; Nouban Bezhad ; Kiani Khusrow, Method and apparatus for reducing the number of programmable architecture elements required for implementing a look-up t.
Cheng Mark W ; Honkasalo Zhi-Chun,FIX, Method and apparatus for segmentation and assembly of data frames for retransmission in a telecommunications system.
Park, Jaewoo; Oh, Jong-Ee; Lee, Il-Gu; Lee, Sok-Kyu; Cheong, Minho; Choi, Jeeyon; Lee, Jae-Seung; Kim, Yun-Joo, Method and apparatus for transceiving data in a MIMO system.
Baird Randall B. ; McFadden Martin J., Method for accessing one or more streams in a video storage system using multiple queues and maintaining continuity ther.
Danneels Gunner D. ; Cox Katherine ; Odell Robert M. ; Schlesinger Robert A. ; Gregory Leora J. ; Sampat Ketan R., Method for semi-reliable, unidirectional broadcast information services.
Kim, Jin Pil; Kim, Young In; Hong, Ho Taek; Choi, In Hwan; Kwak, Kook Yeon; Lee, Hyoung Gon; Kim, Byoung Gill; Kim, Jin Woo; Kim, Jong Moon; Song, Won Gyu, Method of processing traffic information and digital broadcast system.
Rachel E. Tillman ; Thomas R. Gardos ; John J. Kirby ; Jeff N. Kidder ; Rajeeb Hazra, Method of providing replay on demand for streaming digital multimedia.
Garudadri, Harinath; Srinivasamurthy, Naveen B.; Chung, Hyukjune; Ramachandran, Kannan; Majumdar, Abhik, Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques.
Shokrollahi, Mohammad Amin; Luby, Michael, Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes.
Parekh, Nileshkumar J.; Chandhok, Ravinder Paul (Rob); O'Keefe, Michael; Chen, An Mei; Walker, Gordon Kent, Methods and apparatus for providing content information to content servers.
Horn,Gavin; Luby,Michael G.; Rasmussen,Jens; Knudsgaard,Per; Lassen,Soren, Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources.
Asamizuya Noboru,JPX ; Ebihara Norio,JPX ; Karibe Haruyuki,JPX ; Kodama Yasumasa,JPX ; Kagawa Masaaki,JPX, On-demand data transmission by dividing input data into blocks and each block into sub-blocks such that the sub-blocks a.
Aggarwal Charu Chandra ; Wolf Joel Leonard ; Yu Philip Shi-Lung, Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems.
Lu,Ming; Zheng,Haitao, Radio link protocol (RLP)/point-to-point protocol (PPP) design that passes corrupted data and error location information among layers in a wireless data transmission protocol.
Srikantan,Geetha; Narasimhan,Aravind; Proctor,Seth; Brittenson,Jan; Shafer,Matthew; Sergent,Jonathan S., Streaming a single media track to multiple clients.
Castagna, Pete; Randall, Dave, System and method for interference mitigation using adaptive forward error correction in a wireless RF data transmission system.
Meulemans, Michael Edward; Averbuch, Aaron; Roberts, Jason; Showman, Ken; Mohammed, Mazhar; Dadzie, Joseph G., System and method for managing and communicating software updates.
Rasmussen,Jens; Shokrollahi,Amin; Lassen,Soren; Horn,Gavin; Goyal,Vivek; Dobyns,Barry; Luby,Michael, System and method for reliably communicating the content of a live data stream.
Brewer, Tony M.; Blackmon, Harry C.; Davies, Chris; Dozier, Harold W.; McDermott, III, Thomas C.; Wallach, Steven J.; Walker, Dean E.; Yeh, Lou, System and method for router data aggregation and delivery.
Haberman, Seth; Schuler, Chester L.; van der Burgh, Abeljan; Jansen, Alex; Niemeijer, Gerrit, System and method for simultaneous broadcast for personalized messages.
Albanese Andres (Berkeley CA) Luby Michael G. (Berkeley CA) Bloemer Johannes F. (Berkeley CA) Edmonds Jeffrey A. (Berkeley CA), System for packetizing data encoded corresponding to priority levels where reconstructed data corresponds to fractionali.
Campanella S. Joseph, System for time division multiplexing broadcast channels with R-1/2 or R-3/4 convolutional coding for satellite transmission via on-board baseband processing payload or transparent payload.
Chilvers, Henry C.; Olague, Craig Alan; Archer, Kuan Hidalgo, Systems and methods for providing remote program ordering on a user device via a web server.
McRae Daniel D. (West Melbourne FL) Clark George C. (Indialantic FL) Szuchy Nicholas C. (Melbourne Beach FL), Technique for high rate digital transmission over a dynamic dispersive channel.
Schreiber William F. (Cambridge MA) Polley Michael O. (Belmont MA), Television transmission system using spread spectrum and orthogonal frequency-division multiplex.
Hong, Hotaek; Kim, Jinpil; Lee, Joonhui; Lee, Hyeonjae; Kim, Kyungho; Huh, Kangsuk, Method for transmitting/receiving internet-based content and transmitter/receiver using same.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.