Claims
- 1. A method for locating program material at a specified time T, comprising:
accessing a group, wherein said group comprises at least one series and said at least one series comprises at least on segment, wherein said at least one segment references a corresponding atom containing media data representing the program material; determining a specified segment during which the specified time T occurs within one of said at least one series; converting the specified time T to a time Tseg relative to said specified segment; converting said time Tseg to a data position relative to a specified atom corresponding to said specified segment, thereby locating media data representing the program material at the specified time T.
- 2. The method of claim 1, wherein the act of converting said time Tseg to a data position comprises converting said time Tseg to a time Tatom relative to said specified atom.
- 3. The method of claim 2, wherein the act of converting said time Tseg to a data position comprises:
determining an index number from said time Tatom using an index duration; and converting said index number to said data position.
- 4. The method of claim 2, wherein said specified segment is defined by an offset from a beginning of said specified atom, and a duration, wherein said time Tseg is determined by calculating an elapsed time into said specified segment at which the specified time T occurs.
- 5. The method of claim 4, wherein said time Tatom is determined by adding said offset to said time Tseg.
- 6. The method of claim 3, wherein the act of converting said index number to said data position comprises:
looking up said index number in an index file, wherein said index file correlates said index number with a corresponding data position.
- 7. The method of claim 3, wherein said index duration is a duration of one frame of media data.
- 8. The method of claim 6, wherein the act of converting said index number to said data position further comprises:
constructing said index file so that said corresponding data position is a beginning of a frame of media data.
- 9. The method of claim 7, further comprising:
constructing an index file, wherein the act of converting said index number to said data position is performed by looking up said index number in said index file, wherein said data position corresponds to a beginning of a frame of media data.
- 10. The method of claim 6, wherein the act of converting said index number to said data position further comprises:
constructing said index file so that said corresponding data position is a beginning of a group of pictures of media data, said group of pictures including at least one frame of media data.
- 11. The method of claim 10, wherein said corresponding data position in said index file is the same for each of said at least one frame of media data in said group of pictures.
- 12. The method of claim 1, wherein one of said at least one series is an ordered sequence of a plurality of segments.
- 13. The method of claim 1, wherein said group is a parallel arrangement of a plurality of series.
- 14. An apparatus for locating program material at a specified time T, comprising:
means for accessing a group, wherein said group comprises at least one series and said at least one series comprises at least one segment, wherein said at least one segment references a corresponding atom containing media data representing the program material; means for determining a specified segment during which the specified time T occurs within one of said at least one series; means for converting the specified time T to a time Tseg relative to said specified segment; and means for converting said time Tseg to a data position relative to a specified atom corresponding to said specified segment, thereby locating media data representing the program material at the specified time T.
- 15. A computer program product comprising a computer usable medium having computer readable program code embodied in said medium for enabling a processor in a computer system to locate program material at a specified time T, said computer readable program code comprising instructions for:
accessing a group, wherein said group comprises at least one series and said at least one series comprises at least one segment, wherein said at least one segment references a corresponding atom containing media data representing the program material; determining a specified segment during which the specified time T occurs within said at least one series; converting the specified time T to a time Tseg relative to said specified segment; and converting said time Tseg to a data position relative to a specified atom corresponding to said specified segment to thereby locate media data representing the program material at time T.
- 16. The computer program product of claim 15, wherein the computer readable program code further comprises instructions for:
converting said time Tseg to a time Tatom relative to said specified atom.
- 17. The computer program product of claim 16, wherein said computer readable program code further comprises instructions for:
determining an index number from said time Tatom using an index duration; and converting said index number to said data position.
- 18. The method of claim 1, further comprising performing the act of determining a specified segment, the act of converting the specified time T to a time Tseg relative to said specified segment, and the act of converting said time Tseg to a data position relative to a specified atom corresponding to said specified segment for each of said at least one series in said group.
- 19. The method of claim 3, further comprising rounding said index number to locate an index boundary.
- 20. The method of claim 19, wherein said index boundary is a beginning of a frame of media data.
- 21. The method of claim 19, wherein said index boundary is a beginning of a group of pictures of media data.
- 22. The method of claim 11, further comprising rounding said index number to locate an index boundary.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a divisional application of pending U.S. application Ser. No. 09/399,777 filed Sep. 21, 1999, which is a continuing application of U.S. application Ser. No. 08/829,283, filed Mar. 31, 1997, now U.S. Pat. No. 5,973,679 issued Oct. 26, 1999.
Divisions (1)
|
Number |
Date |
Country |
| Parent |
09399777 |
Sep 1999 |
US |
| Child |
10677581 |
Oct 2003 |
US |
Continuations (1)
|
Number |
Date |
Country |
| Parent |
08829283 |
Mar 1997 |
US |
| Child |
09399777 |
Sep 1999 |
US |