Data streaming
First Claim
1. A method of transmitting a data file over a communication medium, comprising:
- determining relative desired reconstruction time frames for different parts of the file;
allocating different transmission rates for the different parts of the file responsive to said determining;
dividing said file into sections;
encoding said sections using a FEC (forward error correction) code having the property that a file section can be reconstructed once a sufficient amount of encoded data relating to that data section is received; and
transmitting the encoded sections to have effective retransmission rates matching said different retransmission rates, such that said parts can be reconstructed in their respective desired time frame.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of transmitting a data file over a communication medium (100), comprising determining relative desired reconstruction time frames for different parts of the file, allocating different transmission rates for the different parts of the file responsive to said determining, dividing the file into sections, encoding the sections using a FEC (forward error correction) code having the property that a file section can be reconstructed once a sufficient amount of encoded data relating to that data section is received (104), and transmitting the encoded sections to have effective retransmission rates matching said different retransmission rates (102), such that the parts can be reconstructed in their respective desired time frame.
-
Citations
52 Claims
-
1. A method of transmitting a data file over a communication medium, comprising:
-
determining relative desired reconstruction time frames for different parts of the file;
allocating different transmission rates for the different parts of the file responsive to said determining;
dividing said file into sections;
encoding said sections using a FEC (forward error correction) code having the property that a file section can be reconstructed once a sufficient amount of encoded data relating to that data section is received; and
transmitting the encoded sections to have effective retransmission rates matching said different retransmission rates, such that said parts can be reconstructed in their respective desired time frame. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 18, 19, 20, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52)
-
-
15. A method of transmitting a data file over a communication medium, comprising:
-
determining relative desired reconstruction time frames for different parts of the file;
allocating different retransmission rates for the different parts of the file responsive to said determining so that an effective retransmission rate varies on a bit by bit basis; and
transmitting the file so that said different parts have effective retransmission rates matching said different retransmission rates, such that said parts can be reconstructed in their respective desired time frame.
-
-
16. A method of transmitting a data file over a communication medium, comprising:
-
determining relative desired reconstruction time frames for different parts of the file;
allocating different retransmission rates for the different parts of the file responsive to said determining so that retransmission rate varies continuously on a data block by data block basis; and
transmitting the file so that said different parts have effective retransmission rates matching said different retransmission rates, such that said parts can be reconstructed in their respective desired time frame.
-
-
17. A method of transmitting a data file over a communication medium, comprising:
-
determining relative desired reconstruction times for different parts of the file;
differentially allocating different retransmission rates for the different parts of the file responsive to said determining;
dividing the file into sections; and
transmitting the file so that said different parts have effective retransmission rates matching said different retransmission rates, said retransmission using a multi-layer retransmission scheme, such that said parts can be reconstructed in their respective desired time frame.
-
-
21. A method of transmitting a data file over a communication medium, comprising:
-
determining relative desired reconstruction time frames for different parts of the file;
differentially allocating different retransmission rates for the different parts of the file responsive to said determining;
dividing the file into sections having different sizes; and
transmitting the sections to have effective retransmission rates matching said different retransmission rates.
-
-
28. A method of transmitting and receiving a data file in a manner oblivious to a time of commencement of reception by a receiver, comprising:
-
transmitting a file, using a retransmission bandwidth, such that different parts of the file are retransmitted at different rates; and
receiving said file using an effective reception bandwidth, smaller than said retransmission bandwidth, said transmitting being oblivious to a time of commencement of said receiving; and
commencing continuous playback of said file, at a delay from said retransmission, wherein said reception bandwidth is less than 80% of said retransmission bandwidth and wherein a ratio between said delay and a playback time of said file is smaller than 80% of a ratio between said reception bandwidth and said retransmission bandwidth.
-
-
37. A method of streaming real-time data, as it is being provided, comprising:
-
providing an input stream of real-time data;
generating packets based on said real-time data; and
transmitting, in parallel, packets relating to a time frame of said stream and to a previous time-frame of said stream, such that packets are transmitted at an effective bit retransmission rate depending on a relative time frame of data in said packets.
-
-
45. A method of transmitting a data file over a communication medium, comprising:
-
determining relative desired reconstruction time frames for different parts of the file;
differentially allocating different retransmission rates for the different parts of the file responsive to said determining; and
transmitting the file so that said different parts have effective retransmission rates matching said different retransmission rates, over a channel with a varying bandwidth.
-
Specification