Abstract: For correction coding of a source file for transmission, the source file is divided into a plurality of groups each having a plurality of source packets. Each group is arranged into a matrix format, and braided forward error correction (FEC) packets are generated for each column, row and diagonal of a respective group by XOR'ing the source packets from the corresponding column, row and diagonal. Then, low density parity check (LDPC) FEC packets are generated for the respective group of source packets and corresponding braided FEC packets. The FEC packets generated in this manner, which are referred to as continuous FEC packets, are transmitted to a receiver component, and upon reception, an iteration of braided FEC decoding and LDPC FEC decoding is applied to the received continuous FEC packets, until all the source packets are recovered and the source file is reconstructed or until there is no more incoming packets.
Abstract: For correction coding of a source file for transmission, the source file is divided into a plurality of groups each having a plurality of source packets. Each group is arranged into a matrix format, and braided forward error correction (FEC) packets are generated for each column, row and diagonal of a respective group by XOR'ing the source packets from the corresponding column, row and diagonal. Then, low density parity check (LDPC) FEC packets are generated for the respective group of source packets and corresponding braided FEC packets. The FEC packets generated in this manner, which are referred to as continuous FEC packets, are transmitted to a receiver component, and upon reception, an iteration of braided FEC decoding and LDPC FEC decoding is applied to the received continuous FEC packets, until all the source packets are recovered and the source file is reconstructed or until there is no more incoming packets.
Abstract: Systems, methods, apparatus and computer program products for providing forward error correction with low latency to live streams in networks are provided. Source data is output at a rate less than the rate of a source stream, a buffer is built, and an FEC decoder FEC decodes the source data. Decoded packets are output at a rate equal to the rate of the source stream.
Type:
Grant
Filed:
June 22, 2016
Date of Patent:
December 25, 2018
Assignee:
KENCAST, INC.
Inventors:
H. Lewis Wolfgang, Michael J. Fischer, Weimin Fang
Abstract: Systems, methods, apparatus, and computer program products for providing forward error correction with low latency to live streams in networks are provided. One example method includes receiving source data at a first rate, outputting the source data at a rate less than the first rate, collecting the source data in a buffer, FEC decoding the source data, thereby generating decoded data; and outputting the decoded data at a rate equal to the first rate, either after collecting the source data in the buffer for a predetermined time duration or after collecting a predetermined amount of the source data in the buffer.
Type:
Grant
Filed:
March 18, 2014
Date of Patent:
July 19, 2016
Assignee:
KENCAST, INC.
Inventors:
H. Lewis Wolfgang, Michael J. Fischer, Weimin Fang
Abstract: Systems, methods, apparatus and computer program products provide highly reliable file delivery using a combination of packet-level FEC on source data packets which are arranged in matrices, where encoding is performed on both rows and columns or on rows, columns and diagonals.
Abstract: Systems, methods, apparatus and computer program products provide highly reliable file delivery using a combination of packet-level FEC on source data packets which are arranged in matrices, where encoding is performed on both rows and columns or on rows, columns and diagonals.
Abstract: Systems, methods, apparatus, and computer program products for providing forward error correction with low latency to live streams in networks are provided. One example method includes receiving source data at a first rate, outputting the source data at a rate less than the first rate, collecting the source data in a buffer, FEC decoding the source data, thereby generating decoded data; and outputting the decoded data at a rate equal to the first rate, either after collecting the source data in the buffer for a predetermined time duration or after collecting a predetermined amount of the source data in the buffer.
Type:
Application
Filed:
March 18, 2014
Publication date:
July 17, 2014
Applicant:
KENCAST, INC.
Inventors:
H. Lewis Wolfgang, Michael J. Fischer, Weimin Fang
Abstract: Systems, methods, apparatus and computer program products provide highly reliable file delivery using a combination of packet-level FEC on source data packets which are arranged in matrices, where encoding is performed on both rows and columns or on rows, columns and diagonals.
Abstract: Systems, methods, apparatus and computer program products for providing forward error correction with low latency to live streams in networks are provided, including outputting source data at a rate less than the rate of a source stream, building a buffer, FEC decoding the source data; and outputting the packets at a rate equal to the rate of the source stream.
Type:
Grant
Filed:
October 18, 2007
Date of Patent:
April 22, 2014
Assignee:
Kencast, Inc.
Inventors:
H. Lewis Wolfgang, Michael J. Fischer, Weimin Fang
Abstract: Systems, methods, apparatus and computer program products provide highly reliable file delivery using a combination of packet-level FEC on source data packets which are arranged in matrices, where encoding is performed on both rows and columns or on rows, columns and diagonals.
Abstract: Systems, methods, apparatus and computer program products provide highly reliable file delivery using a combination of packet-level FEC on source data packets which are arranged in matrices, where encoding is performed on both rows and columns or on rows, columns and diagonals.
Abstract: System, apparatus and method are provided for transmitting and receiving packets over first and second channels. An FEC encoder generates forward error correction (FEC) packets corresponding to an original stream of packets. A packet transmitter transmits the original stream of packets over the first channel and transmits the FEC packets over the second channel. A packet receiver receives a stream of packets over the first channel, and receives the FEC packets corresponding to the stream of packets over the second channel. An FEC decoder uses information stored in the FEC packets to determine a correspondence between the FEC packets and the stream of packets, and recovers one or more lost packets of the stream of packets using the FEC packets.
Type:
Grant
Filed:
May 4, 2010
Date of Patent:
March 19, 2013
Assignee:
Kencast, Inc.
Inventors:
Weimin Fang, Michael J. Fischer, H. Lewis Wolfgang
Abstract: A system, method and apparatus are provided for encoding and decoding a source file. The source file is encoded by dividing it into a plurality of shares comprised of a plurality of packets. A bit vector is generated. For at least one share, an FEC packet is generated by XOR'ing a subset of packets from the plurality of packets in the share in accordance with the bit vector. The process of encoding continues until terminated. Once the FEC encoded packets are received, each of the plurality of packets which is not a linear combination of previously received packets is stored into a file. A sequence of XOR operations to perform in-place on the file to reconstruct the source file are generated and performed on the file.
Type:
Grant
Filed:
March 16, 2009
Date of Patent:
August 14, 2012
Assignee:
Kencast, Inc.
Inventors:
Michael J. Fischer, H. Lewis Wolfgang, Weimin Fang
Abstract: A method for transmitting interleaved shares of packet-level FEC encoded packets, in which a given time shift occurs between consecutive shares, includes determining a current state; associating a packet with a share based on the current state; and determining a position of the packet within the share. Each share includes source packets and error-correcting or wildcard packets. If the position of the packet corresponds to a source packet position, a contribution of the packet to the wildcard packets of the share is computed, and the packet is transmitted as a source packet. If the position of the packet corresponds to a wildcard packet position, the packet is transmitted as a wildcard packet.
Abstract: A method and system for data delivery from a server to a client is provided. The server maintains a session counter and transmits data to a client at a transmission speed. The server receives a message from the client indicating a percentage of packets lost in a current session and compares the percentage of packets lost to a predefined range of packet loss, and modifies the transmission speed based on the comparison. Forward Error Correction (FEC) may be used to reconstruct the lost packets.
Abstract: System, apparatus and method are provided for transmitting and receiving packets over first and second channels. An FEC encoder generates forward error correction (FEC) packets corresponding to an original stream of packets. A packet transmitter transmits the original stream of packets over the first channel and transmits the FEC packets over the second channel. A packet receiver receives a stream of packets over the first channel, and receives the FEC packets corresponding to the stream of packets over the second channel. An FEC decoder uses information stored in the FEC packets to determine a correspondence between the FEC packets and the stream of packets, and recovers one or more lost packets of the stream of packets using the FEC packets.
Type:
Application
Filed:
May 4, 2010
Publication date:
August 26, 2010
Applicant:
KENCAST, INC.
Inventors:
Weimin Fang, Michael J. Fischer, H. Lewis Wolfgang
Abstract: System, apparatus and method are provided for transmitting and receiving packets over first and second channels. An FEC encoder generates forward error correction (FEC) packets corresponding to an original stream of packets. A packet transmitter transmits the original stream of packets over the first channel and transmits the FEC packets over the second channel. A packet receiver receives a stream of packets over the first channel, and receives the FEC packets corresponding to the stream of packets over the second channel. An FEC decoder uses information stored in the FEC packets to determine a correspondence between the FEC packets and the stream of packets, and recovers one or more lost packets of the stream of packets using the FEC packets.
Type:
Grant
Filed:
February 17, 2006
Date of Patent:
June 15, 2010
Assignee:
Kencast, Inc.
Inventors:
Weimin Fang, Michael J. Fischer, H. Lewis Wolfgang
Abstract: Systems, methods, apparatus and computer program products provide highly reliable file delivery using a combination of packet-level FEC on source data packets which are arranged in matrices, where encoding is performed on both rows and columns or on rows, columns and diagonals.
Abstract: A system, method and apparatus are provided for encoding and decoding a source file. The source file is encoded by dividing it into a plurality of shares comprised of a plurality of packets. A bit vector is generated. For at least one share, an FEC packet is generated by XOR'ing a subset of packets from the plurality of packets in the share in accordance with the bit vector. The process of encoding continues until terminated. Once the FEC encoded packets are received, each of the plurality of packets which is not a linear combination of previously received packets is stored into a file. A sequence of XOR operations to perform in-place on the file to reconstruct the source file are generated and performed on the file.
Type:
Application
Filed:
March 16, 2009
Publication date:
July 9, 2009
Applicant:
KENCAST, INC.
Inventors:
Michael J. Fischer, H. Lewis Wolfgang, Weimin Fang
Abstract: A system, method and apparatus are provided for encoding and decoding a source file. The source file is encoded by dividing it into a plurality of shares comprised of a plurality of packets. A bit vector is generated. For at least one share, an FEC packet is generated by XOR'ing a subset of packets from the plurality of packets in the share in accordance with the bit vector. The process of encoding continues until terminated. Once the FEC encoded packets are received, each of the plurality of packets which is not a linear combination of previously received packets is stored into a file. A sequence of XOR operations to perform in-place on the file to reconstruct the source file are generated and performed on the file.
Type:
Grant
Filed:
September 22, 2005
Date of Patent:
May 12, 2009
Assignee:
Kencast, Inc.
Inventors:
Michael J. Fischer, H. Lewis Wolfgang, Weimin Fang