Claims
- 1. A method for transmitting a work to a client which comprises steps of:
saving at least a portion of the work for a first period of time; receiving a request for the work from the client; transmitting a time-scale modified version of the saved portion of the work for a second period of time, wherein the second period of time is substantially equal to a time it takes for the time-scale modified version to synchronize with the work, had the work been transmitted from a start of the first period; and transmitting the work starting at the synchronized point.
- 2. The method of claim 1 wherein the work comprises a multiplicity of works.
- 3. A method of presenting a work that comprises steps of:
receiving and saving at least a portion of a work; receiving a request to present the work from a user; presenting a time-scale modified version of the saved portion of the work for a period of time, wherein the period of time is substantially equal to a time it takes for the time-scale modified version to synchronize with the work, had the work been presented at a received presentation rate from a start of the time that saving began; and presenting the work at the received presentation rate.
- 4. The method of claim 3 wherein the step of presenting a time-scale modified version comprises generating a time-scale modified version, and presenting the version.
- 5. A method for transmitting information to a client which comprises the steps of:
receiving a request for information from a client after a predetermined starting time; transmitting a first time-scale modified version of a first portion of the information for a first period of time; transmitting a second time-scale modified version of a second portion of the information for a second period of time; and transmitting a third portion of the information.
- 6. The method of claim 5 wherein a presentation rate of the first time-scale modified version is different from a presentation rate of the second time-scale modified version.
- 7. A method for broadcasting information to a client which comprises steps of:
generating a time-scale modified version of at least a portion of a second work; broadcasting a first work to the client, which first work ends at an ending time; broadcasting the second work starting at a predetermined time, wherein the ending time is at, before, or after the predetermined time; broadcasting the time-scale modified version of the at least a portion of the second work for predetermined periods of time at further predetermined starting times; and broadcasting the time-scale modified version at one of the further predetermined starting times to the client for one of the predetermined periods of time and thereafter, broadcasting the second work to the client.
- 8. The method of claim 7 wherein the predetermined periods of time are substantially equal to time intervals for the time-scale modified version broadcast at the further predetermined starting times to synchronize with the second work being broadcast.
- 9. An apparatus which broadcasts information comprises:
a re-broadcast interval determiner, in response to: (a) information representing a duration of a work being re-broadcast, and (b) information representing a number of re-broadcast offset channels, generates information representing a duration of a re-broadcast interval (“RBI”); a work streamer, in response to: (a) the information representing a duration of a work being re-broadcast, (b) the information representing a number of re-broadcast offset channels, and (c) the RBI, accesses a storage device, and applies: (a) a time-division multiplexed composite signal of a work and (b) a stream of information that provides a playback position and time offset of each time-offset re-broadcast stream of the work as input to a multicaster; wherein the multicaster, in response to the time-division multiplexed composite signal and client control and destination information, broadcasts the work; a time-scaled leader duration determiner, in response to: (a) the RBI, (b) information representing a time-scale expansion rate, and (c) information representing a time-scale compression rate, outputs: (a) maximum time intervals of the work used to create time-scale compressed leaders and time-scale expanded leaders, and (b) speedfactors used to create time-scale compressed and time-scale expanded leaders, and applies the maximum time intervals and the speedfactors as input to a time-scale modification system; wherein the time-scale modification system, in response to the maximum time intervals, the speedfactors, and the work, produces a time-scale compressed leader or a time-scale expanded leader and stores the time-scale compressed leader or the time-scale expanded leader on the storage device; a request processor, in response to requests for the work from clients, outputs information identifying clients and re-broadcast control information to a stream assignment system; a time-scale expanded leader streamer, in response to (a) information representing a duration of a leader re-broadcast interval (“LRBI”) from a leader re-broadcast interval determiner; (b) information representing a number of time-division multiplexed (“TDM”) channels for a time-scale expanded leader from the leader re-broadcast interval determiner; (c) information representing a duration of the time-scale expanded leader being re-broadcast from the leader re-broadcast interval determiner or the time-scaled leader duration determiner; (d) start times of re-broadcast offset streams of the work from the leader re-broadcast interval determiner; and (e) data for the work from the storage device, and outputs: (a) a time-division multiplexed composite signal of time-scale expanded leader segments, and (b) leader-offset-stream information giving a playback position and time-offset for each time-offset re-broadcast stream of the time-scale expanded leader to the stream assignment system; a time-scale compressed leader streamer, in response to: (a) the LRBI from the leader re-broadcast interval determiner; (b) information representing a number of TDM channels for a time-scale compressed leader from the leader re-broadcast interval determiner; (c) information representing a duration of the time-scale compressed leader being re-broadcast from the leader re-broadcast interval determiner or the time-scaled leader duration determiner; (d) start times of re-broadcast offset streams of the work from the leader re-broadcast interval determiner; and (e) data for the work from the storage device, and outputs: (a) a time-division multiplexed composite signal of time-scale compressed leader segments, and (b) leader-offset-stream information giving a playback position and time-offset for each time-offset re-broadcast stream of the time-scale compressed leader to the stream assignment system; wherein the leader re-broadcast interval determiner, in response to: (a) information representing the duration of the time-scale compressed and time-scale expanded leaders from the time-scaled leader duration determiner; (b) information representing a number of leader re-broadcast offset channels from the re-broadcast interval determiner, and (c) the RBI from the re-broadcast interval determiner, generates: (a) the LRBI, (b) information representing the number of TDM channels for a time-scale expanded leader and a time-scale compressed leader, (c) information representing the duration of the time-scale expanded leader and the time-scale compressed leader being re-broadcast; and (d) start times of re-broadcast offset streams of the work; a time-scale compressed leader multicaster, in response to: (a) the composite signal of time-scale compressed leader segments from the time-scale compressed leader streamer and (b) client control and destination from the stream assignment system, multicast the time-scale compressed leader segments; a time-scale expanded leader multicaster, in response to: (a) the composite signal of time-scale expanded leader segments from the time-scale expanded leader streamer and (b) client control and destination information from the stream assignment system, multicast the time-scale compressed leader segments; wherein the stream assignment system, in response to: (a) the information identifying clients and re-broadcast control information, and (b) the leader-offset-stream information from the time-scale expanded leader streamer and the time-scale compressed leader streamer or from the leader re-broadcast interval determiner, determines a temporally closest leader-offset-stream for the appropriate time-scale modified leader offset stream, and outputs: (a) control information to the time-scale compressed leader multicaster or the time-scale expanded leader multicaster which information directs the time-scale compressed leader multicaster or the time-scale expanded leader multicaster to add the requesting client to the list of destinations for the appropriate time-scale modified leader offset stream segments being re-broadcast, and (b) intercept information to the multicaster and the time-scale compressed leader multicaster or the time-scale expanded leader multicaster which intercept information conveys client identification and control information and an intercept-time for a corresponding time-scale modified leader offset stream to an offset stream of the work; in response to the intercept information, the time-scale compressed leader multicaster and the time-scale expanded leader multicaster note the intercept-time and schedule deletion of the requesting client from a list of multicast recipients of the time-scale modified leader offset stream after the intercept-time, and the multicaster notes the intercept-time and schedules an addition of the requesting client to the list of multicast recipients of that offset stream of the work after the intercept-time.
- 10. The apparatus of claim 9 wherein the re-broadcast interval determiner determines the RBI as equal to the duration of the work divided by the number of re-broadcast offset channels.
- 11. The apparatus of claim 9 wherein the maximum time interval of the work that will be required for time-compressed leaders is given by
- 12. The apparatus of claim 9 wherein the maximum time interval of the work that will be required for time-expansion leaders is given by
- 13. The apparatus of claim 9 wherein LRBI=RBI/No. of leader re-broadcast offset channels.
- 14. The apparatus of claim 9 wherein the stream assignment system determines a temporally closest leader-offset-stream by computing distances, forward and backward, in time from an arrival time of a client's request to view the work, to a previous time-scale modified leader-offset-stream start time and a next time-scale modified leader-offset-stream start time, and choosing a smaller of the two as a temporally closest leader-offset-stream.
Parent Case Info
[0001] This is a continuation of a patent application entitled “Method and Apparatus for Server Broadcast of Time-Converging Multi-Media Streams” having Ser. No. 09/320,008 which was filed on May 26, 1999.
Continuations (1)
|
Number |
Date |
Country |
| Parent |
09320008 |
May 1999 |
US |
| Child |
10082622 |
Feb 2002 |
US |