System and method for media stream indexing and synchronization
First Claim
Patent Images
1. A system for interactive delivery of program material to a viewer, comprising a processor coupled with a memory:
- formatting means operatively coupled with said processor for arranging media data representing program material intended for transmission to a viewer in an interactive and customized manner in accordance with a received format command, said formatting means for arranging media data arranges the media data without a need for modifying, changing, or duplicating the program material in a separate storage, wherein said media data is identified and arranged using an object hierarchy that comprises;
segments, wherein each of said segments is assigned a unique seqment ID when it is stored and references a correspondinq atom of media data and is defined by an offset from a beginning of said corresponding atom, and a duration;
series, wherein each of said series is assigned a unique series ID when the series is stored and comprises at least one segment, and when including a plurality of segments is formed by sequentially ordering the plurality of seqments joined or concatenated for sequential delivery of the corresponding data; and
groups, wherein each of said group is assigned a unique group ID when the group is stored and comprises at least one series, and when a group includes a plurality of series is formed by ioining the plurality of series in parallel for parallel simultaneous delivery of the corresponding data; and
each said group comprises at least one series, each said series comprises at least one segment, and each said segment references at least a portion of an atom of media data and said group defines a formula for arranging said program material to be delivered to a viewer.
5 Assignments
0 Petitions
Accused Products
Abstract
An indexing method for allowing a viewer to control the mode of delivery of program material. By mapping from time to data position, data delivery can begin at any selected time in the program material. The indexing method also provides for controlling data delivery to begin at the beginning of a frame of data. A synchronizing method is provided to minimize a time offset between audio and vide data, particularly in environments using groups of pictures.
66 Citations
22 Claims
-
1. A system for interactive delivery of program material to a viewer, comprising a processor coupled with a memory:
-
formatting means operatively coupled with said processor for arranging media data representing program material intended for transmission to a viewer in an interactive and customized manner in accordance with a received format command, said formatting means for arranging media data arranges the media data without a need for modifying, changing, or duplicating the program material in a separate storage, wherein said media data is identified and arranged using an object hierarchy that comprises; segments, wherein each of said segments is assigned a unique seqment ID when it is stored and references a correspondinq atom of media data and is defined by an offset from a beginning of said corresponding atom, and a duration; series, wherein each of said series is assigned a unique series ID when the series is stored and comprises at least one segment, and when including a plurality of segments is formed by sequentially ordering the plurality of seqments joined or concatenated for sequential delivery of the corresponding data; and groups, wherein each of said group is assigned a unique group ID when the group is stored and comprises at least one series, and when a group includes a plurality of series is formed by ioining the plurality of series in parallel for parallel simultaneous delivery of the corresponding data; and each said group comprises at least one series, each said series comprises at least one segment, and each said segment references at least a portion of an atom of media data and said group defines a formula for arranging said program material to be delivered to a viewer. - View Dependent Claims (2, 3)
-
-
4. A system for interactive delivery of program material to a viewer, comprising a processor coupled with a memory:
-
formatting means operatively coupled with said processor for arranging media data representing program material intended for transmission to a viewer in an interactive and customized manner in accordance with a received format command, wherein said media data is identified and arranged using an object hierarchy, the object hierarchy defining a plurality of series in a group that may be transmitted and delivered simultaneously to a viewer in parallel, and wherein any one of said plurality of series can be turned on or off at any specified time, the object hierarchy further comprises; segments, wherein each of said segments is assigned a unique segment ID when it is stored and references a corresponding atom of media data and is defined by an offset from a beginning of said corresponding atom, and a duration; series, wherein each of said series is assigned a unique series ID when the series is stored and comprises at least one segment, and when including a plurality of segments is formed by sequentially ordering the plurality of segments joined or concatenated for sequential delivery of the corresponding data; and groups, wherein each of said group is assigned a unique group ID when the group is stored and comprises at least one series, and when a group includes a plurality of series is formed by joining the plurality of series in parallel for parallel simultaneous delivery of the corresponding data; and each said group comprises at least one series, each said series comprises at least one segment, and each said segment references at least a portion of an atom of media data and said group defines a formula for arranging said program material to be delivered to a viewer.
-
-
5. A system for interactive delivery of program material to a viewer, comprising a processor coupled with a memory:
-
means operatively coupled with said processor for converting a program material time to a data location for media data; formatting means for arranging media data representing program material intended for transmission to a viewer in an interactive and customized manner in accordance with a received format command, wherein said media data is identified and arranged using an object hierarchy that comprises; segments, wherein each of said segments is assigned a unigue segment ID when it is stored and references a corresponding atom of media data and is defined by an offset from a beginning of said corresponding atom, and a duration; series, wherein each of said series is assigned a unigue series ID when the series is stored and comprises at least one segment, and when including a plurality of segments is formed by seguentially ordering the plurality of segments joined or concatenated for seguential delivery of the corresponding data; and groups, wherein each of said group is assigned a unigue group ID when the group is stored and comprises at least one series, and when a group includes a plurality of series is formed by joining the plurality of series in parallel for parallel simultaneous delivery of the corresponding data; and each said group comprises at least one series, each said series comprises at least one segment, and each said segment references at least a portion of an atom of media data and said group defines a formula for arranging said program material to be delivered to a viewer; and said means for converting a program material time to a data location for media data comprises means for converting from program material relative time to a media data atom-relative byte position;
wherein the atom-relative byte position corresponds to a beginning of a frame for the media data, an atom index file includes frame-partitioned data and includes byte offsets so that the atom relative byte position in the index file corresponds frame boundaries. - View Dependent Claims (6, 7)
-
-
8. A method for locating program material at a specified time T, comprising:
-
converting the specified time T to a time Trel, relative to media data representing the program material; determining an index number from said time Trel using an index duration; converting said index number to a data position, thereby locating media data representing the program material at the specified time T; converting Tseq to a data position relative to a specified atom, thereby locating media data representing the program material at the specified time T; and converting Tseg to a specified-atom relative time Tatom by adding the specified-segment offset to Tseg, and computing an index number from Tatom using an index duration. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A computer program product stored on a computer readable medium for use with a computer system and a content on demand media delivery system including a computer readable program code for enabling a computer system to carry out the locating of program material so that delivery of the program material to a viewer via media delivery on demand begins at the specified time T in the program material;
- the computer program product including instructions for;
converting the specified time T to a time Trel, relative to media data representing the program material; determining an index number from said time Trel using an index duration; and converting said index number to a data position, thereby locating media date representing the program material at the specified time T; converting Tseq to a data position relative to a specified atom, thereby locating media data representing the program material at the specified time T; and converting Tseg to a specified-atom relative time Tatom by adding the specified-segment offset to Tseg, and computing an index number from Tatom using an index duration.
- the computer program product including instructions for;
Specification