Virtual format for the storage of streaming data
First Claim
Patent Images
1. A computer-readable storage device, comprising:
- a computer program that, when executed on a computing device, is configured to store a data stream in memory of the computing device in a virtual file format, the virtual file format including a timeline of events, wherein the event type is selected from the group consisting of media sample, seekpoint, and state table, and wherein events of the seekpoint and state table type are spanning events, the events in the timeline including a plurality of spanning events, each spanning event containing respective state information representing a state of the data stream across an interval in the timeline, and being linked to at least one other spanning event;
wherein each of the spanning events is configured to contain a pointer that refers to a byte offset of a previous spanning event in the timeline, if present;
wherein the computer program is configured to recover an attribute of a state of the data stream at a target position within the data stream, by accessing a spanning event with current state information for the attribute, and reading the state information from the spanning event; and
wherein the computer program is configured to access a spanning event with current state information for the attribute by identifying a seekpoint spanning event associated with the target position, identifying a pointer in the seekpoint spanning event to a previous spanning event in the timeline, accessing the previous spanning event via the pointer, and reading state information from the previous event.
4 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for storing streaming data are provided. A system is disclosed that includes a computer program which, when executed on a computing device, is configured to store a data stream in memory of the computing device in a virtual file format. The virtual file format may include a timeline of events. The events in the timeline may include a plurality of spanning events. Each spanning event may contain respective state information representing a state of the data stream across an interval in the timeline, and may be linked to at least one other spanning event.
15 Citations
14 Claims
-
1. A computer-readable storage device, comprising:
- a computer program that, when executed on a computing device, is configured to store a data stream in memory of the computing device in a virtual file format, the virtual file format including a timeline of events, wherein the event type is selected from the group consisting of media sample, seekpoint, and state table, and wherein events of the seekpoint and state table type are spanning events, the events in the timeline including a plurality of spanning events, each spanning event containing respective state information representing a state of the data stream across an interval in the timeline, and being linked to at least one other spanning event;
wherein each of the spanning events is configured to contain a pointer that refers to a byte offset of a previous spanning event in the timeline, if present; wherein the computer program is configured to recover an attribute of a state of the data stream at a target position within the data stream, by accessing a spanning event with current state information for the attribute, and reading the state information from the spanning event; and wherein the computer program is configured to access a spanning event with current state information for the attribute by identifying a seekpoint spanning event associated with the target position, identifying a pointer in the seekpoint spanning event to a previous spanning event in the timeline, accessing the previous spanning event via the pointer, and reading state information from the previous event. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
- a computer program that, when executed on a computing device, is configured to store a data stream in memory of the computing device in a virtual file format, the virtual file format including a timeline of events, wherein the event type is selected from the group consisting of media sample, seekpoint, and state table, and wherein events of the seekpoint and state table type are spanning events, the events in the timeline including a plurality of spanning events, each spanning event containing respective state information representing a state of the data stream across an interval in the timeline, and being linked to at least one other spanning event;
-
10. A computing device, comprising:
-
a processor; memory; and a mass storage device containing programming stored thereon that is executable by the processor to perform a method for storing streaming data, the method comprising, accessing a virtual file format for a data stream stored in the memory of the computing device, the virtual file format including a timeline of events, to recover an attribute of a state of the data stream at a target position within the data stream, wherein the event type is selected from the group consisting of media sample, seekpoint, and state table, and wherein events of the seekpoint and state table type are spanning events, accessing a spanning event with current state information for the attribute, the spanning event being linked to at least one other spanning event; and reading state information from the spanning event; wherein accessing a spanning event with current state information for the attribute includes; identifying a seekpoint spanning event associated with the target position; identifying a pointer to a previous spanning event in the timeline, within the seekpoint spanning event; accessing the previous spanning event via the pointer; and if the previous spanning event is a state table, reading state information from the state table, and if the previous spanning event is not a state table, backwardly traversing one or more spanning events in the timeline via respective spanning event pointers contained in the one or more spanning events, until a state table spanning event is reached. - View Dependent Claims (11, 12)
-
-
13. A computing device, comprising:
-
a processor; memory; and a mass storage device containing a computer program thereon that when executed on the computing device is configured to store a data stream in the memory of the computing device in a virtual file format; wherein the virtual file format includes a timeline of events, wherein the event type is selected from the group consisting of media sample, seekpoint, and state table, and wherein events of the seekpoint and state table type are spanning events; wherein the timeline further includes a plurality of spanning events containing respective state information about the data stream; wherein each spanning event is configured to reference a previous spanning event in the timeline, if present, by inclusion within each spanning event of a byte offset in the timeline of the respective previous spanning event; wherein the computer program is configured to recover an attribute of a state of the data stream at a target position within the data stream, by accessing a spanning event with current state information for the attribute, and reading the state information from the spanning event; and wherein the computer program is configured to access a spanning event with current state information for the attribute by identifying a seekpoint spanning event associated with the target position, identifying a pointer in the seekpoint spanning event to a previous spanning event in the timeline, accessing the previous spanning event via the pointer, and reading state information from the previous event. - View Dependent Claims (14)
-
Specification