System and method for reliably communicating the content of a live data stream
First Claim
1. A method for communicating the content of a live data stream to a receiver using a plurality of channels comprising one or more main channels having at least two sub-channels, the method comprising:
- receiving a first segment of a live data stream, the first segment, S0, containing first segment data;
applying a forward error correction algorithm the first segment data to produce a corresponding transmit block, T0;
dividing the T0 block into two or more T0 sub-blocks, wherein each of the two or more T0 sub-blocks comprise substantially distinct FEC-encoded first segment data;
transmitting a first of the two or more T0 sub-blocks to a receiver on a first main sub-channel;
receiving a second segment of the live data stream, the second segment, S1, containing second segment data;
applying a forward error correction algorithm to the second segment data to produce a transmit block T1;
dividing the T1 block into two or more T1 sub-blocks, wherein each of the two or more T1 sub-blocks comprises substantially distinct FEC-encoded second segment data;
transmitting substantially concurrently, the second of the two or more T0 sub-blocks on the first main sub-channel and a first of the two or more T1 sub-blocks on a second main sub-channel.
3 Assignments
0 Petitions
Accused Products
Abstract
A method for communicating the content of a live data stream to a receiver using a plurality of channels comprising two encoder channels used to encode the live data content prior to transmission. Initially a plurality of segments of a live data stream are received, wherein each segment contains segment data. A forward error correction algorithm is applied to each segment'"'"'s data, thereby producing FEC-encoded segment data. The FEC-encoded segment data is contained within an FEC-encoded block, resulting in a corresponding plurality of FEC-encoded blocks being generated. Each FEC-encoded block is copied to a sub-channel on both a first encoder channel and a second encoder channel, resulting in a plurality of FEC-encoder blocks residing on the first and second encoder channels. The first and second encoder channels differ in the number of sub-channels they contain (interleaving depth), and accordingly the arrangement of the FEC-encoded blocks in the first and second encoder channels are different. A first cross-section of the FEC-encoded segment data contained within the FEC-encoded blocks resident in the first encoder channel is added to a first transmit block T0. Similarly, A first cross-section of the FEC-encoded segment data contained within the FEC-encoded blocks resident in the second encoder channel is added to a second transmit block T1. The first and second transmit blocks are then communicated to the receiver.
91 Citations
13 Claims
-
1. A method for communicating the content of a live data stream to a receiver using a plurality of channels comprising one or more main channels having at least two sub-channels, the method comprising:
-
receiving a first segment of a live data stream, the first segment, S0, containing first segment data; applying a forward error correction algorithm the first segment data to produce a corresponding transmit block, T0; dividing the T0 block into two or more T0 sub-blocks, wherein each of the two or more T0 sub-blocks comprise substantially distinct FEC-encoded first segment data; transmitting a first of the two or more T0 sub-blocks to a receiver on a first main sub-channel; receiving a second segment of the live data stream, the second segment, S1, containing second segment data; applying a forward error correction algorithm to the second segment data to produce a transmit block T1; dividing the T1 block into two or more T1 sub-blocks, wherein each of the two or more T1 sub-blocks comprises substantially distinct FEC-encoded second segment data; transmitting substantially concurrently, the second of the two or more T0 sub-blocks on the first main sub-channel and a first of the two or more T1 sub-blocks on a second main sub-channel. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system operable to communicate the content of a live data stream to a receiver via a plurality of channels, the system comprising:
-
a receiver operable to receive first and second segments of a live data stream, the first and second segments containing first and second segment data, respectively; an encoder operable to apply a forward error correction algorithm to the first segment data and to the second segment data to produce a corresponding first transmit block, T0, and a second transmit block, T1; a block partitioner operable to divide each of the first and second transmit blocks T0 and T1 into a plurality of sub-blocks; and a transmitter operable to transmit the T0 sub-blocks on a first channel and the plurality of T1 sub-blocks on a second channel; wherein the receiver is a switchable, single-channel receiver configured to switch reception between a first channel to receive one or more of the T0 sub-blocks and a second channel to receive one or more of the T1 sub-blocks. - View Dependent Claims (11, 12, 13)
-
Specification