Efficient source blocking algorithm for FEC for MBMS streaming
First Claim
1. A method for arranging a plurality of variable size data packets for FEC encoding and decoding, the method comprising:
- Selecting a number of rows of an encoding block arranged in rows and columns;
Filling the plurality of data packets into the columns of a encoding block by;
if a data packet has a size smaller than the selected number of rows, entering the data packet into a column and padding the remaining rows with at least one padded symbol;
or if a data packet has size larger than the selected number of rows, allowing the data packet to span across multiple columns and padding a last column spanned by the data packet with at least one padded symbol;
Forming FEC data blocks; and
Appending the filled encoding block with the FEC data blocks.
1 Assignment
0 Petitions
Accused Products
Abstract
A hybrid-padding approach for arranging variable size data packets for error correction encoding and decoding is disclosed. The approach can involve arranging the data packets in columns and rows and selecting the row size to minimize the amount of padding required. If data packet is smaller than the number of rows the data packet is inserted into the column and the remaining rows are padded. If the data packet is larger than the number of rows, the data packet is allowed to span multiple columns with the last column being padded if necessary. The data packets can include parameters, such as a source block number, packet length, and starting column number, and the error correction packets can include parameters, such as, a source block number an N, a K, the starting column number, and the number of row, to signal the hybrid-padding message.
47 Citations
19 Claims
-
1. A method for arranging a plurality of variable size data packets for FEC encoding and decoding, the method comprising:
-
Selecting a number of rows of an encoding block arranged in rows and columns;
Filling the plurality of data packets into the columns of a encoding block by;
if a data packet has a size smaller than the selected number of rows, entering the data packet into a column and padding the remaining rows with at least one padded symbol;
orif a data packet has size larger than the selected number of rows, allowing the data packet to span across multiple columns and padding a last column spanned by the data packet with at least one padded symbol;
Forming FEC data blocks; and
Appending the filled encoding block with the FEC data blocks. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer code product for arranging a plurality of variable size data packets for FEC encoding and decoding, the computer code product comprising computer code configured to:
-
Select a number of rows of an encoding block arranged in rows and columns;
Fill the plurality of data packets into the columns of a encoding block by;
if a data packet has a size smaller than the selected number of rows, entering the data packet into a column and padding the remaining rows with at least one padding symbol;
orif a data packet has size larger than the selected number of rows, allowing the data packet to span across multiple columns and -padding a last column spanned by the data packet with at least one padding symbol;
Append the filled encoding block with the FEC data blocks. - View Dependent Claims (7, 8, 9, 10)
-
-
11. An encoder configured for encoding a plurality of variable size data packets for FEC, the encoder comprising:
-
A processor;
Memory;
Wherein the processor is configured to Select a number of rows of an encoding block arranged in rows and columns;
Fill the plurality of data packets into the columns of a encoding block by;
if a data packet has a size smaller than the selected number of rows, entering the data packet into a column and padding the remaining rows with at least one padding symbol;
orif a data packet has size larger than the selected number of rows, allowing the data packet to span across multiple columns and padding a last column spanned by the data packet with at least one padding symbol;
Form FEC data blocks; and
Append the filled encoding block with the FEC data blocks. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A system for signaling a hybrid-padding method of encoding data packets, the system comprising:
-
A data packet including;
A source block number; and
A starting column number of the data packet; and
An error correction packet including;
A source block number;
A starting column number of the error correction packet;
A number of rows parameter;
An N RS-code parameter; and
A K RS-code parameter. - View Dependent Claims (17, 18, 19)
-
Specification