Method and system for reliable broadcasting of data files and streams
First Claim
Patent Images
1. A method comprising the steps of:
- inputting a data stream into a first computer;
creating on-the-fly a virtual file of information packets from the data stream; and
packet-level error correction encoding the virtual file.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for transmitting information between a host computer and one or more subscriber computers via a satellite is provided. One or more live streams of data representing the information are inputted in the host computer. The respective pacing factors are measured from the live data streams. The respective virtual files are created from the live data streams. The virtual files are packet-encoded to generate respective streams of encoded packets. The streams of encoded packets and pacing factors are transmitted to the subscriber computers via satellite.
1422 Citations
31 Claims
-
1. A method comprising the steps of:
-
inputting a data stream into a first computer;
creating on-the-fly a virtual file of information packets from the data stream; and
packet-level error correction encoding the virtual file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
converting the encoded virtual file into an encoded packet stream.
-
-
3. A method according to claim 2, further comprising the step of:
transmitting the encoded packet stream to a second computer.
-
4. A method according to claim 2, further comprising the step of:
adding one or more control and/or authorization packets to the encoded packet stream.
-
5. A method according to claim 4, further comprising the step of:
error-correction encoding the one or more control and/or authorization packets.
-
6. A method according to claim 1, further comprising the steps of:
-
inputting a file of information packets into the first computer; and
packet-level error correction encoding the file.
-
-
7. A method according to claim 6, further comprising the step of:
converting the encoded virtual file into an encoded packet stream.
-
8. A method according to claim 7, further comprising the step of:
multiplexing the encoded file and the encoded packet stream into a pipe stream.
-
9. A method according to claim 8, further comprising the step of:
transmitting the pipe stream.
-
10. A method according to claim 1, further comprising the steps of:
-
inputting another data stream into the first computer;
capturing the other data stream as a file of information packets; and
packet-level error correction encoding the file.
-
-
11. A method according to claim 10, further comprising the step of:
converting the encoded file and encoded virtual file into respective encoded packet streams.
-
12. A method according to claim 11, further comprising the step of:
multiplexing the respective encoded packet streams into a pipe stream.
-
13. A method according to claim 12, further comprising the step of:
transmitting the pipe stream.
-
14. A method comprising the steps of:
-
in a first computer, packet-level error correction encoding a plurality of sources of packets, the sources including data files and/or data streams;
multiplexing the encoded plurality of sources into a plurality of pipe streams;
multiplexing the plurality of pipe streams into an encoded packet stream;
transmitting the encoded packet stream to a second computer. - View Dependent Claims (15)
prior to the step of multiplexing the plurality of pipe streams, packet-level error correction encoding the pipe streams.
-
-
16. A method comprising the steps of:
-
in a second computer, receiving from a first computer a packet-level error correction encoded packet stream;
converting the received encoded packet stream into a file; and
packet-level error correction decoding the file to recover corresponding information packets. - View Dependent Claims (17, 18)
converting the decoded information packets into a data stream.
-
-
18. A method according to claim 17, further comprising the step of:
outputting the data stream to an application of the second computer.
-
19. A method comprising the steps of:
-
in a second computer, receiving from a first computer a packet-level error correction encoded stream;
demultiplexing the received encoded stream into a plurality of encoded pipe streams;
packet-level error correction decoding the encoded pipe streams; and
demultiplexing the decoded pipe streams into a plurality of sources of packets, the sources including data files and/or data streams. - View Dependent Claims (20)
packet-level error correction decoding the demultiplexed sources of packets.
-
-
21. A computer-readable medium storing a computer-executable program comprising code which when executed implements a method comprising the steps of:
-
inputting a data stream into a first computer;
creating on-the-fly a virtual file of information packets from the data stream; and
packet-level error correction encoding the virtual file.
-
-
22. A computer-readable medium storing a computer-executable program comprising code which when executed implements a method comprising the steps of:
-
in a first computer, packet-level error correction encoding a plurality of sources of packets, the sources including data files and/or data streams;
multiplexing the encoded plurality of sources into a plurality of pipe streams;
multiplexing the plurality of pipe streams into an encoded packet stream;
transmitting the encoded packet stream to a second computer.
-
-
23. A computer-readable medium storing a computer-executable program comprising code which when executed implements a method comprising the steps of:
-
in a second computer, receiving from a first computer a packet-level error correction encoded packet stream;
converting the received encoded packet stream into a file; and
packet-level error correction decoding the file to recover corresponding information packets.
-
-
24. A computer-readable medium storing a computer-executable program comprising code which when executed implements a method comprising the steps of:
-
in a second computer, receiving from a first computer a packet-level error correction encoded stream;
demultiplexing the received encoded stream into a plurality of encoded pipe streams;
packet-level error correction decoding the encoded pipe streams; and
demultiplexing the decoded pipe streams into a plurality of sources of packets, the sources including data files and/or data streams.
-
-
25. A computer system comprising:
-
means inputting a data stream into a first computer;
means for creating on-the-fly a virtual file of information packets from the data stream; and
means for packet-level error correction encoding the virtual file.
-
-
26. A computer system comprising:
-
means for packet-level error correction encoding a plurality of sources of packets, the sources including data files and/or data streams;
means for multiplexing the encoded plurality of sources into a plurality of pipe streams;
means for multiplexing the plurality of pipe streams into an encoded packet stream;
means for transmitting the encoded packet stream to another computer system.
-
-
27. A computer system comprising:
-
means for receiving from another computer system a packet-level error correction encoded packet stream;
means for converting the received encoded packet stream into a file; and
means for packet-level error correction decoding the file to recover corresponding information packets.
-
-
28. A computer system comprising:
-
means for receiving from another computer system a packet-level error correction encoded stream;
means for demultiplexing the received encoded stream into a plurality of encoded pipe streams;
means for packet-level error correction decoding the encoded pipe streams; and
means for demultiplexing the decoded pipe streams into a plurality of sources of packets, the sources including data files and/or data streams.
-
-
29. A method comprising the steps of:
-
in a transmitting computer, determining a maximum number of packets lost by one or more receiving computers during a transmission of a plurality of packets;
generating one or more wildcard packets, equal in number to the determined maximum number of lost packets; and
transmitting the generated wildcard packets to the one or more receiving computers.
-
-
30. A computer-readable medium storing a computer-executable program comprising code which when executed implements a method comprising the steps of:
-
in a transmitting computer, determining a maximum number of packets lost by one or more receiving computers during a transmission of a plurality of packets;
generating one or more wildcard packets, equal in number to the determined maximum number of lost packets; and
transmitting the generated wildcard packets to the one or more receiving computers.
-
-
31. A transmitting computer system comprising:
-
means for determining a maximum number of packets lost by one or more receiving computers during a transmission of a plurality of packets;
means for generating one or more wildcard packets, equal in number to the determined maximum number of lost packets; and
means for transmitting the generated wildcard packets to the one or more receiving computers.
-
Specification