Claims
- 1. A method for streaming data in a network, comprising:
determining if the network is experiencing a high packet loss; if the network is experiencing the high packet loss, then encoding the data into multiple streams by using temporal domain partitioning; if the network is not experiencing the high packet loss, then encoding the data into multiple streams by using frequency domain partitioning; applying unequal error protection to each of the multiple encoded streams; transmitting the multiple encoded streams, respectively, along independent paths to a decoder; decoding the multiple transmitted encoded streams, respectively, into decoded streams; correcting an error or errors incurred during transmission in at least one of the decoded streams by using information from another one or more of the decoded streams; and using the decoded corrected streams to reconstruct the data.
- 2. The method of claim 1, wherein a stream comprises bits;
wherein a bit comprises at least an important bit plane and comprises other bit planes; and wherein applying the unequal error protection to each of the multiple encoded streams comprises applying more error protection to the important bit plane than the other bit planes.
- 3. The method of claim 1, wherein a stream comprises bits;
wherein a bit comprises bit planes; wherein the bit planes of a bit are organized in a hierarchy of importance with respect to the bit; and wherein applying the unequal error protection to each of the multiple encoded streams comprises applying error protection to the bit planes of the bit in a hierarchical manner corresponding to the hierarchy of importance of the bit planes of the bit.
- 4. A method for streaming data in a network, comprising:
encoding the data into two or more streams; transmitting the two or more encoded streams, respectively, along paths to a decoder; decoding the two or more transmitted, encoded streams, respectively, into decoded streams; correcting an error incurred during transmission in at least one of the decoded streams; and using the decoded streams to reconstruct the data.
- 5. The method of claim 4, wherein encoding each of the streams comprises applying error protection, respectively, to each of the streams.
- 6. The method of claim 4, wherein encoding each of the streams comprises encoding each of the streams, respectively, with unequal error protection.
- 7. The method of claim 6, wherein a stream comprises bits;
wherein a bit comprises at least an important bit plane and comprises other bit planes; and wherein encoding each of the streams, respectively, with the unequal error protection comprises encoding the important bit plane with more error protection than the other bit planes.
- 8. The method of claim 4, wherein the error incurred during transmission comprises missing information from one of the decoded streams; and
wherein correcting the error comprises using information from another of the decoded streams to supply the missing information to the one of the decoded streams.
- 9. The method of claim 4, wherein correcting the error incurred during transmission in the at least one of the decoded streams comprises correcting the error with information obtained from another of the decoded streams.
- 10. The method of claim 4, wherein each of the paths comprises a path independent of other paths of the paths.
- 11. The method of claim 4, further comprising:
prior to encoding the data into two or more streams, determining if the network is experiencing high packet loss.
- 12. The method of claim 11, wherein encoding the data into the two or more streams comprises encoding the data into the two or more streams by using temporal domain partitioning if the network is experiencing the high packet loss.
- 13. The method of claim 11, wherein encoding the data into the two or more streams comprises encoding the data into the two or more streams by using frequency domain partitioning if the network is not experiencing the high packet loss.
- 4. A method for streaming data in a network, comprising:
encoding the data into two or more streams; transmitting the two or more encoded streams, respectively, along paths to a decoder; decoding the two or more transmitted, encoded streams, respectively, into decoded streams; correcting an error incurred during transmission in at least one of the decoded streams; and using the decoded streams to reconstruct the data.
- 5. The method of claim 4, wherein encoding each of the streams comprises applying error protection, respectively, to each of the streams.
- 6. The method of claim 4, wherein encoding each of the streams comprises encoding each of the streams, respectively, with unequal error protection.
- 7. The method of claim 6, wherein a stream comprises bits;
wherein a bit comprises at least an important bit plane and comprises other bit planes; and wherein encoding each of the streams, respectively, with the unequal error protection comprises encoding the important bit plane with more error protection than the other bit planes.
- 8. The method of claim 4, wherein the error incurred during transmission comprises missing information from one of the decoded streams; and
wherein correcting the error comprises using information from another of the decoded streams to supply the missing information to the one of the decoded streams.
- 9. The method of claim 4, wherein correcting the error incurred during transmission in the at least one of the decoded streams comprises correcting the error with information obtained from another of the decoded streams.
- 10. The method of claim 4, wherein each of the paths comprises a path independent of other paths of the paths.
- 11. The method of claim 4, further comprising:
prior to encoding the data into two or more streams, determining if the network is experiencing high packet loss.
- 12. The method of claim 11, wherein encoding the data into the two or more streams comprises encoding the data into the two or more streams by using temporal domain partitioning if the network is experiencing the high packet loss.
- 13. The method of claim 11, wherein encoding the data into the two or more streams comprises encoding the data into the two or more streams by using frequency domain partitioning if the network is not experiencing the high packet loss.
- 14. A system for streaming data in a network, comprising:
a coder for encoding the data into two or more streams; an unequal error protection module for applying unequal error protection to each of the encoded streams; the network including paths for transmitting, respectively, the two or more encoded streams; a decoder for decoding the two or more transmitted encoded streams, respectively, into decoded streams; and an error module for correcting an error incurred during transmission in at least one of the decoded streams.
- 15. The system of claim 14, wherein an encoded stream comprises bits;
wherein a bit comprises at least an important bit plane and comprises other bit planes; and wherein the unequal error protection module applies unequal error protection to each of the encoded streams by applying more error protection to the important bit plane than the other bit planes.
- 16. The system of claim 14, wherein the error module corrects the error incurred during transmission in the at least one of the decoded streams by correcting the error with information obtained from another of the decoded streams.
- 17. The system of claim 14, wherein each of the paths comprises a path independent of other paths of the paths.
- 18. The system of claim 14, further comprising:
a rate control module for determining if the network is experiencing high packet loss.
- 19. The system of claim 18, wherein the coder encodes the data into the two or more streams by using temporal domain partitioning if the network is experiencing the high packet loss.
- 20. The system of claim 17, wherein the coder encodes the data into the two or more streams by using frequency domain partitioning if the network is not experiencing the high packet loss.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] The present application claims priority to and benefit of the prior filed co-pending and commonly owned provisional application, filed in the United States Patent and Trademark Office on Apr. 24, 2002, assigned Application No. 60/375,235, and incorporated herein by reference.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60375235 |
Apr 2002 |
US |
|
60375887 |
Apr 2002 |
US |