Claims
- 1. A method for inserting asynchronous data into a synchronous data stream comprising:
receiving information including a first time value when said asynchronous data may be used; determining a transfer interval for said asynchronous data; inserting said asynchronous data into said synchronous data stream at a time prior to said first time value by an amount that is greater than or equal to said transfer interval.
- 2. The method of claim 1 wherein said step of determining a transfer interval further comprises:
determining the file size of said asynchronous data; determining a data transfer rate for said asynchronous data; and dividing said file size by said data transfer rate to calculate a duration.
- 3. The method of claim 2 wherein said step of determining a transfer interval further comprises:
determining the ratio of data stream bandwidth available for transfer of said asynchronous data; and modifying said duration by multiplying said duration by the inverse of said ratio.
- 4. The method of claim 3 wherein said step of modifying said duration further comprises:
obtaining a connect time; and adding said connect time to said duration.
- 5. A method for inserting first asynchronous data and second asynchronous data into a synchronous data stream comprising:
receiving information comprising a first time value when said first asynchronous data may be used and a second value time when said second asynchronous information may be used; determining a first transfer interval for said first asynchronous data; determining a second transfer interval for said second asynchronous data; and commencing insertion of said first asynchronous data into said synchronous stream at a time prior to said second time value by a period of time greater than or equal to the sum of said first transfer interval and said second transfer interval.
- 6. A method for inserting first asynchronous data and second asynchronous data into a synchronous television broadcast stream comprising:
receiving information comprising a first time value when said first asynchronous data may be used and a second value time when said second asynchronous information may be used; determining a first transfer interval for said first asynchronous data; determining a second transfer interval for said second asynchronous data; and commencing insertion of said first asynchronous data into said synchronous television broadcast stream at a time prior to said second time value by a period of time greater than or equal to the sum of said first transfer interval and said second transfer interval.
- 7. A method for inserting asynchronous data into a synchronous television broadcast stream comprising:
receiving information including a first time value when said asynchronous data may be used; determining a transfer interval for said asynchronous data; inserting said asynchronous data into said synchronous television broadcast stream at a time prior to said first time value by an amount that is greater than or equal to said transfer interval.
- 8. The method of claim 7 wherein said step of determining a transfer interval further comprises:
determining the file size of said asynchronous data; determining a data transfer rate for said asynchronous data; and dividing said file size by said data transfer rate to calculate a duration.
- 9. The method of claim 7 wherein said step of determining a transfer interval further comprises:
determining the ratio of data stream bandwidth available for transfer of said asynchronous data; and modifying said duration by multiplying said duration by the inverse of said ratio.
- 10. The method of claim 7 wherein said step of modifying said duration further comprises:
obtaining a connect time; and adding said connect time to said duration.
- 11. A system for inserting asynchronous data into a synchronous television broadcast stream comprising:
a database containing asynchronous data; an insertion controller containing a processor and program memory; and a software program operating on said insertion controller operable to determine a transfer interval for said asynchronous data and to commence insertion of said asynchronous data into said synchronous television broadcast stream at a time greater than or equal to the duration of said transfer interval prior to a time when said asynchronous data may be utilized.
- 12. The system of claim 11 wherein said software program further comprises:
a first software routine operable to determine a transfer rate based on total data stream bandwidth and bandwidth utilized by non-metadata transfers.
- 13. The system of claim 11 wherein said software program further comprises:
a second software routine operable to advance in time said commencement of said insertion of said asynchronous data by a period of time greater than or equal to a data access latency value.
- 14. A system for inserting asynchronous data into a synchronous television broadcast stream comprising:
a server containing asynchronous data; an insertion controller; and a software program operating on said server operable to determine a transfer interval for said asynchronous data and to commence insertion of said asynchronous data into said synchronous television broadcast stream at a time greater than or equal to the duration of said transfer interval prior to a time when said asynchronous data may be utilized.
- 15. The system of claim 14 wherein said software program further comprises:
a first software routine operable to determine a transfer rate based on total data stream bandwidth and bandwidth utilized by non-metadata transfers.
- 16. The system of claim 14 wherein said software program further comprises:
a second software routine operable to advance in time said commencement of said insertion of said asynchronous data by a period of time greater than or equal to a data access latency value.
- 17. A system for inserting asynchronous data into a synchronous television broadcast stream comprising:
a database containing first asynchronous data and second asynchronous data; an insertion controller containing a processor and program memory; and a software program operating in said insertion controller operable to determine a first transfer interval for said first asynchronous data and a second transfer interval for said second asynchronous data and to commence insertion of said first asynchronous data into said synchronous television broadcast stream at a time, greater than or equal to the duration of the sum of said first transfer interval and said second transfer interval, prior to a time when said second asynchronous data may be utilized.
- 18. The system of claim 17 wherein said synchronous data stream is an audio/video stream.
- 19. The system of claim 17 wherein said software program further comprises:
a first software routine operable to determine a first transfer rate and a second transfer rate based on total data stream bandwidth and bandwidth utilized by non-metadata transfers.
- 20. The system of claim 17 wherein said software program further comprises:
a second software routine operable to advance in time said commencement of said insertion of said first asynchronous data by a period of time greater than or equal to the sum of a first data access latency value for said first asynchronous data and a second data access latency value for said second asynchronous data.
- 21. A system for inserting asynchronous data into a synchronous television broadcast stream comprising:
a server containing first asynchronous data and second asynchronous data; an insertion controller; and a software program operating in said server operable to determine a first transfer interval for said first asynchronous data and a second transfer interval for said second asynchronous data and to commence insertion of said first asynchronous data into said synchronous television broadcast stream at a time, greater than or equal to the duration of the sum of said first transfer interval and said second transfer interval, prior to a time when said second asynchronous data may be utilized.
- 22. The system of claim 21 wherein said software program further comprises:
a first software routine operable to determine a first transfer rate and a second transfer rate based on total data stream bandwidth and bandwidth utilized by non-metadata transfers.
- 23. The system of claim 21 wherein said software program further comprises:
a second software routine operable to advance in time said commencement of said insertion of said first asynchronous data by a period of time greater than or equal to the sum of a first data access latency value for said first asynchronous data and a second data access latency value for said second asynchronous data.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. provisional application Ser. No. 60/193,405 filed Mar. 29, 2000 entitled “Rate Controlled Insertion of Asynchronous into a Synchronous Stream.”
Provisional Applications (1)
|
Number |
Date |
Country |
|
60193405 |
Mar 2000 |
US |