Patents by Inventor Michael Luby
Michael Luby has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20210211483Abstract: A block-request streaming system provides for improvements in the user experience and bandwidth efficiency of such systems, typically using an ingestion system that generates data in a form to be served by a conventional file server (HTTP, FTP, or the like), wherein the ingestion system intakes content and prepares it as files or data elements to be served by the file server. A client device can be adapted to take advantage of the ingestion process. The client device might be configured to optimize use of resources, given the information available to it from the ingestion system. This may include configurations to determine the sequence, timing and construction of block requests based on monitoring buffer size and rate of change of buffer size, use of variable sized requests, mapping of block requests to underlying transport connections, flexible pipelining of requests, and/or use of whole file requests based on statistical considerations.Type: ApplicationFiled: March 17, 2021Publication date: July 8, 2021Inventors: Michael LUBY, Mark WATSON, Lorenzo VICISANO, Payam PAKZAD, Bin WANG
-
Patent number: 9628536Abstract: A block-request streaming system provides for improvements in the user experience and bandwidth efficiency of such systems, typically using an ingestion system that generates data in a form to be served by a conventional file server (HTTP, FTP, or the like), wherein the ingestion system intakes content and prepares it as files or data elements to be served by the file server, which might or might not include a cache. A client device can be adapted to take advantage of the ingestion process as well as including improvements that make for a better presentation independent of the ingestion process. In the block-request streaming system, the an ingestion system generates data according to erasure codes and the client device, through various selection and timing of requests for media data and redundant data, can efficiently decode media to provide for presentations.Type: GrantFiled: October 8, 2015Date of Patent: April 18, 2017Assignee: QUALCOMM IncorporatedInventors: Michael Luby, Bin Wang, Mark Watson, Lorenzo Vicisano, Payam Pakzad
-
Publication number: 20160065640Abstract: A block-request streaming system provides for improvements in the user experience and bandwidth efficiency of such systems, typically using an ingestion system that generates data in a form to be served by a conventional file server (HTTP, FTP, or the like), wherein the ingestion system intakes content and prepares it as files or data elements to be served by the file server, which might or might not include a cache. A client device can be adapted to take advantage of the ingestion process as well as including improvements that make for a better presentation independent of the ingestion process. In the block-request streaming system, the an ingestion system generates data according to erasure codes and the client device, through various selection and timing of requests for media data and redundant data, can efficiently decode media to provide for presentations.Type: ApplicationFiled: October 8, 2015Publication date: March 3, 2016Inventors: Michael Luby, Bin Wang, Mark Watson, Lorenzo Vicisano, Payam Pakzad
-
Patent number: 8671163Abstract: A method of serving content to multiple clients via a network is provided. Independent sessions with each of a plurality of clients are maintained, wherein the number of clients in the plurality of clients can vary over time, and wherein the start of each session and the end of each session can be independent of the start and end of other sessions. A stream of packet payloads is received, each packet payload of the stream of packet payloads including data generated from the content, wherein each packet payload in at least a subset of the stream of packet payloads includes a different set of data. Each packet payload in the stream of packet payloads is transmitted to each client of the plurality of clients in corresponding packets, wherein the packet payload transmitted to a client at any particular time is independent of the state of the corresponding session.Type: GrantFiled: April 18, 2012Date of Patent: March 11, 2014Assignee: Digital Fountain, Inc.Inventors: Michael Luby, Ronen Vainish, Lars Rasmussen, David Kushi, Serban Simu, Adrian Perrig, Roberto Attias, Michael Walfish, Diane Hernek, John Byers
-
Patent number: 8458567Abstract: In a transport system, data is reliably transported from a sender to a receiver by organizing the data to be transported into data blocks, wherein each data block comprises a plurality of encoding units, transmitting encoding units of a first data block from the sender to the receiver, and detecting, at the sender, acknowledgments of receipt of encoding units by the receiver. At the sender, a probability that the receiver received sufficient encoding units of the first data block to recover the first data block at the receiver is detected and the probability is tested against a threshold probability to determine whether a predetermined test is met. Following the step of testing and prior to the sender receiving confirmation of recovery of the first data block at the receiver, when the predetermined test is met, transmitting encoding units of a second data block from the sender.Type: GrantFiled: October 31, 2008Date of Patent: June 4, 2013Assignee: Digital Fountain, Inc.Inventors: Michael Luby, Matt Doucleff, Avi Wigderson, Soren Lassen
-
Patent number: 8279755Abstract: In a packet communications system stream data is transported over a channel over which packet loss or corruption is possible, with forward error correction (“FEC”) information. A transmitter receives source packets comprising source data, generates FEC source packets formatted to allow for identification of lost or corrupted source packets at a receiver, arranges source data from the source packets into a plurality of source symbols wherein at least one source packet is arranged into more than one source symbol, associates a plurality of source symbols with a source block, generates a plurality of repair symbols from the source block according to a predetermined FEC encoding process and groups the plurality of repair symbols into one or more FEC repair packets associated with the source block. A receiver can use the FEC repair symbols from the FEC repair packets to recover source symbols, as needed.Type: GrantFiled: October 27, 2009Date of Patent: October 2, 2012Assignee: Digital Fountain, Inc.Inventor: Michael Luby
-
Publication number: 20120203872Abstract: A method of serving content to multiple clients via a network is provided. Independent sessions with each of a plurality of clients are maintained, wherein the number of clients in the plurality of clients can vary over time, and wherein the start of each session and the end of each session can be independent of the start and end of other sessions. A stream of packet payloads is received, each packet payload of the stream of packet payloads including data generated from the content, wherein each packet payload in at least a subset of the stream of packet payloads includes a different set of data. Each packet payload in the stream of packet payloads is transmitted to each client of the plurality of clients in corresponding packets, wherein the packet payload transmitted to a client at any particular time is independent of the state of the corresponding session.Type: ApplicationFiled: April 18, 2012Publication date: August 9, 2012Applicant: DIGITAL FOUNTAIN, INC.Inventors: Michael Luby, Ronen Vainish, Lars Rasmussen, David Kushi, Serban Simu, Adrian Perrig, Roberto Attias, Michael Walfish, Diane Hernek, John Byers
-
Patent number: 8185809Abstract: A method of serving content to multiple clients via a network is provided. Independent sessions with each of a plurality of clients are maintained, wherein the number of clients in the plurality of clients can vary over time, and wherein the start of each session and the end of each session can be independent of the start and end of other sessions. A stream of packet payloads is received, each packet payload of the stream of packet payloads including data generated from the content, wherein each packet payload in at least a subset of the stream of packet payloads includes a different set of data. Each packet payload in the stream of packet payloads is transmitted to each client of the plurality of clients in corresponding packets, wherein the packet payload transmitted to a client at any particular time is independent of the state of the corresponding session.Type: GrantFiled: February 26, 2007Date of Patent: May 22, 2012Assignee: Digital Fountain, Inc.Inventors: Michael Luby, Ronen Vainish, Lars Rasmussen, David Kushi, Serban Simu, Adrian Perrig, Roberto Attias, Michael Walfish, Diane Hernek, John Byers
-
Patent number: 7956772Abstract: A method of encoding data for transmission from a source to a destination over a communications channel is provided. A plurality of encoded symbols are generated from a set of input symbols including source symbols and redundant symbols, wherein the input symbols are organized such that at least one of the input symbols is not used for a first encoding process, so that it is permanently inactivated for the purposes of scheduling a decoding process. A method of decoding data is also provided, wherein encoded symbols generated from a set of input symbols are used to recover source symbols, wherein the input symbols are organized such that at least one of the input symbols is not used for a first decoding process, so that it is permanently inactivated for the purpose of scheduling the decoding process.Type: GrantFiled: October 23, 2009Date of Patent: June 7, 2011Assignee: QUALCOMM IncorporatedInventors: Mohammad Amin Shokrollahi, Michael Luby
-
Patent number: 7721184Abstract: Efficient methods for encoding and decoding Half-Weight codes are disclosed and similar high density codes are disclosed. The efficient methods require at most 3·(k?1)+h/2+1 XORs of symbols to calculate h Half-Weight symbols from k source symbols, where h is of the order of log(k).Type: GrantFiled: August 11, 2005Date of Patent: May 18, 2010Assignee: Digital Fountain, Inc.Inventors: Michael Luby, M. Amin Shokrollahi
-
Patent number: 7720174Abstract: A method of encoding data for transmission from a source to a destination over a communications channel is provided. A plurality of redundant symbols are generated from an ordered set of input symbols to be transmitted. A plurality of output symbols are generated from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of symbols in the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols, and such that the ordered set of input symbols can be regenerated to a desired degree of accuracy from any predetermined number, N, of the output symbols.Type: GrantFiled: February 13, 2006Date of Patent: May 18, 2010Assignee: Digital Fountain, Inc.Inventors: M. Amin Shokrollahi, Soren Lassen, Michael Luby
-
Patent number: 7711068Abstract: A method of encoding data for transmission from a source to a destination over a communications channel is provided. A plurality of redundant symbols are generated from an ordered set of input symbols to be transmitted. A plurality of output symbols are generated from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of symbols in the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols, and such that the ordered set of input symbols can be regenerated to a desired degree of accuracy from any predetermined number, N, of the output symbols.Type: GrantFiled: August 20, 2007Date of Patent: May 4, 2010Assignee: Digital Fountain, Inc.Inventors: M. Amin Shokrollahi, Soren Lassen, Michael Luby
-
Publication number: 20100103001Abstract: A method of encoding data for transmission from a source to a destination over a communications channel is provided. A plurality of encoded symbols are generated from a set of input symbols including source symbols and redundant symbols, wherein the input symbols are organized such that at least one of the input symbols is not used for a first encoding process, so that it is permanently inactivated for the purposes of scheduling a decoding process. A method of decoding data is also provided, wherein encoded symbols generated from a set of input symbols are used to recover source symbols, wherein the input symbols are organized such that at least one of the input symbols is not used for a first decoding process, so that it is permanently inactivated for the purpose of scheduling the decoding process.Type: ApplicationFiled: October 23, 2009Publication date: April 29, 2010Applicant: QUALCOMM IncorporatedInventors: Mohammad Amin Shokrollahi, Michael Luby
-
Patent number: 7660245Abstract: In a packet communications system stream data is transported over a channel over which packet loss or corruption is possible, with forward error correction (“FEC”) information. A transmitter receives source packets comprising source data, generates FEC source packets formatted to allow for identification of lost or corrupted source packets at a receiver, arranges source data from the source packets into a plurality of source symbols wherein at least one source packet is arranged into more than one source symbol, associates a plurality of source symbols with a source block, generates a plurality of repair symbols from the source block according to a predetermined FEC encoding process and groups the plurality of repair symbols into one or more FEC repair packets associated with the source block. A receiver can use the FEC repair symbols from the FEC repair packets to recover source symbols, as needed.Type: GrantFiled: September 16, 2005Date of Patent: February 9, 2010Assignee: QUALCOMM IncorporatedInventor: Michael Luby
-
Publication number: 20100017686Abstract: Signaling the sending of source blocks within multiple physical layer blocks is done for both streaming and object delivery applications, using minimal additional overhead, and in some cases no overhead, to signal interleaved source blocks within a physical layer block, signaling how symbols are related to the source blocks from which they are generated, and signaled sending and indications of prioritized data for source blocks. Organizing and sending streams over one more channels can be done to improve the quality of delivered streams, while minimizing or improving the needed amount of channel resources and receiver power resources needed.Type: ApplicationFiled: May 7, 2009Publication date: January 21, 2010Inventors: Michael Luby, Thomas Stockhammer, Mohammad Amin Shokrollahi
-
Publication number: 20090307565Abstract: Efficient methods for encoding and decoding Half-Weight codes are disclosed and similar high density codes are disclosed. The efficient methods require at most 3·(k?1)+h/2+1 XORs of symbols to calculate h Half-Weight symbols from k source symbols, where h is of the order of log(k).Type: ApplicationFiled: December 9, 2008Publication date: December 10, 2009Applicant: Digital Fountain, Inc.Inventors: Michael Luby, M. Amin Shokrollahi
-
Publication number: 20090144601Abstract: In a transport system, data is reliably transported from a sender to a receiver by organizing the data to be transported into data blocks, wherein each data block comprises a plurality of encoding units, transmitting encoding units of a first data block from the sender to the receiver, and detecting, at the sender, acknowledgments of receipt of encoding units by the receiver. At the sender, a probability that the receiver received sufficient encoding units of the first data block to recover the first data block at the receiver is detected and the probability is tested against a threshold probability to determine whether a predetermined test is met. Following the step of testing and prior to the sender receiving confirmation of recovery of the first data block at the receiver, when the predetermined test is met, transmitting encoding units of a second data block from the sender.Type: ApplicationFiled: October 31, 2008Publication date: June 4, 2009Applicant: Digital Fountain, Inc.Inventors: Michael Luby, Matt Doucleff, Avi Wigderson, Soren Lassen
-
Publication number: 20080309525Abstract: A method of encoding data for transmission from a source to a destination over a communications channel is provided. A plurality of redundant symbols are generated from an ordered set of input symbols to be transmitted. A plurality of output symbols are generated from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of symbols in the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols, and such that the ordered set of input symbols can be regenerated to a desired degree of accuracy from any predetermined number, N, of the output symbols.Type: ApplicationFiled: August 20, 2007Publication date: December 18, 2008Applicant: Digital Fountain, Inc.Inventors: M. Amin Shokrollahi, Soren Lassen, Michael Luby
-
Patent number: 7447235Abstract: In a transport system, data is reliably transported from a sender to a receiver by organizing the data to be transported into data blocks, wherein each data block comprises a plurality of encoding units, transmitting encoding units of a first data block from the sender to the receiver, and detecting, at the sender, acknowledgments of receipt of encoding units by the receiver. At the sender, a probability that the receiver received sufficient encoding units of the first data block to recover the first data block at the receiver is detected and the probability is tested against a threshold probability to determine whether a predetermined test is met. Following the step of testing and prior to the sender receiving confirmation of recovery of the first data block at the receiver, when the predetermined test is met, transmitting encoding units of a second data block from the sender.Type: GrantFiled: October 8, 2004Date of Patent: November 4, 2008Assignee: Digital Fountain, Inc.Inventors: Michael Luby, Matt Doucleff, Avi Wigderson, Soren Lassen
-
Publication number: 20080086751Abstract: A media object is scheduled for transmission between a server and a client. The media object is partitioned into segments of blocks, wherein each block is a unit of media for which a client will wait to receive an entire block before playing out the block, and wherein each segment includes an integer number of blocks. One or more channels on which to serve each segment are determined, and a rate at which to serve each segment is determined. Additionally, a schedule pair for each channel is determined. The schedule pair includes a time at which the client may start receiving on the channel and a time at which the client may stop receiving on the channel.Type: ApplicationFiled: June 1, 2007Publication date: April 10, 2008Applicant: Digital Fountain, Inc.Inventors: Gavin Horn, Michael Luby, Jens Rasmussen, Per Knudsgaard, Soren Lassen