Claims
- 1. A method comprising:
partitioning an encoded video into a first part and a second part; transmitting the first part of the encoded video through a network using a first network protocol; and transmitting the second part of the encoded video through the network using a second network protocol different from the first network protocol.
- 2. The method of claim 1, further comprising:
pre-storing a prefix of the first part on a proxy server, and prefetching the remainder of the first part with the proxy server in response to a client request using the first network protocol.
- 3. The method of claim 1, wherein transmitting the first part comprises transmitting the first part of the encoded video using a reliable network protocol, and transmitting the second part comprises transmitting the second part of the encoded video using an unreliable network protocol.
- 4. The method of claim 1, wherein transmitting the first part comprises transmitting the first part of the encoded video using application-level rate control, and transmitting the second part comprises transmitting the second part of the encoded video using a rate controlled network protocol.
- 5. The method of claim 1, wherein transmitting the first part comprises prefetching at least a portion of the first part of the encoded video, and transmitting the second part comprises transmitting the second part of the encoded video in real-time.
- 6. The method of claim 5, further comprising staggering the transmission of the first and second parts, by prefetching a (K+1)th segment of the first part from a central server with a proxy server in parallel with transmitting a Kth second part to a client device.
- 7. The method of claim 1, wherein partitioning an encoded video comprises partitioning the encoded video based on priority structures of encoded frames of the encoded video.
- 8. The method of claim 7, wherein partitioning an encoded video comprises partitioning the encoded video into a first part that includes frames that are encoded independently from other frames of the video, and a second part that includes frames that are dependently encoded based on other frames of the video.
- 9. The method of claim 1, partitioning an encoded video comprises partitioning the encoded video into a first part that includes intracodced MPEG frames, and a second part that includes bidirectional frames and predicted frames.
- 10. The method of claim 1, further comprising:
receiving the first part and the second part with a proxy server via the first and second network protocols; merging the first part and the second part to form a merged video stream; and delivering the merged video stream to a client device.
- 11. A system comprising:
a server that partitions an encoded video into a first part and a second part; a proxy server coupled to the server via a network, wherein the server delivers the first part of the encoded video to the proxy server using a first network protocol and the second part of the encoded video using a second network protocol different from the first network protocol; and a client device coupled to the proxy server, wherein the proxy server merges the first part and the second part to form a merged video stream, and delivers the merged video stream to the client device.
- 12. The system of claim 11, wherein the proxy server pre-stores a prefix of the first part on a proxy server, and simultaneously delivers the prefix to the client device and prefetches the remainder of the first part from the server in response to a request from the client device.
- 13. The system of claim 11, wherein the central server transmits the first part of the encoded video using a reliable network protocol, and transmits the second part comprises of the encoded video using an unreliable network protocol.
- 14. The system of claim 11, wherein the central server transmits the first part of the encoded video using application-level rate control, and transmits the second part of the encoded video using a rate-controlled network protocol.
- 15. The system of claim 11, wherein the proxy server prefetches at least a portion of the first part of the encoded video from the server, and receives the second part of the encoded video from the server in real-time.
- 16. The system of claim 15, wherein the proxy server prefetches a (K+1)th segment of the first part from the server in parallel with transmitting a Kth second part to the client device.
- 17. The system of claim 11, wherein the server partitions the encoded video to include in the first part frames of the encoded video that are encoded independently from other frames of the encoded video, and to include in the second part frames that are dependently encoded based on other frames of the video.
- 18. The system of claim 17, wherein the server partitions the encoded video to include in the first part intracodced MPEG frames, and to include in the second part bi-directional frames and predicted frames.
- 19. The system of claim 11, wherein the server partitions the encoded video based on priority structures of encoded frames of the encoded video.
- 20. A computer-readable medium comprising instructions for causing a programmable processor to:
partition an encoded video into a first part and a second part; transmit the first part of the encoded video through a network using a first network protocol; and transmit the second part of the encoded video through the network using a second network protocol different from the first network protocol.
- 21. The computer-readable medium of claim 20, further comprising instructions to:
transmit the first part of the encoded video using a reliable network protocol; and transmit the second part comprises transmitting the second part of the encoded video using an unreliable network protocol.
- 22. A method comprising transmitting an encoded video using an application-level rate controlled reliable network protocol by controlling a transmission rate of the reliable network protocol based on settings received from application-level software.
Parent Case Info
[0001] This application claims priority from U.S. Provisional Application Serial No. 60/375,476, filed Apr. 23, 2002, the entire content of which is incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60375476 |
Apr 2002 |
US |