System and method for synchronization of selectably presentable media streams
DCFirst Claim
1. A system comprising:
- a memory for storing a plurality of multimedia content segments, each content segment defining a portion of one or more content paths, wherein a particular content segment comprises a decision period during which a subsequent content segment can be selected for playback as the particular content segment is playing;
an assembly engine for seamlessly assembling a subset of the content segments into a multimedia presentation comprising one of the content paths;
a configuration manager for determining an audio file and a video file to be played based on a selected subsequent content segment;
an audio engine for;
dividing the audio file into a plurality of audio samples, each audio sample comprising a timestamp indicating a time at which the audio sample should be played; and
upon causing one of the audio samples to be played, updating a current playback time based on the timestamp of the played audio sample, wherein the current playback time comprises a time that is maintained separately from timestamps of the audio samples and identifies a most recently played audio sample; and
a video engine for synchronizing playback of the video file with playback of the audio file based on the current playback time.
2 Assignments
Litigations
1 Petition
Accused Products
Abstract
A system for synchronizing audio and video of selectably presentable multimedia content includes a memory for storing a plurality of selectably presentable multimedia content segments. Each content segment defines a portion of one or more content paths and includes a decision period during which a user may select a subsequent content segment as the content segment is playing. An assembly engine seamlessly assembles a subset of the content segments into one of the content paths, ultimately forming a multimedia presentation. A configuration manager determines an audio file and a video file to be played based on a content segment that is selected to be played immediately following the currently playing content segment. An audio engine processes the audio file for playback, and a video engine synchronizes playback of the video file with the playback of the audio file.
325 Citations
20 Claims
-
1. A system comprising:
-
a memory for storing a plurality of multimedia content segments, each content segment defining a portion of one or more content paths, wherein a particular content segment comprises a decision period during which a subsequent content segment can be selected for playback as the particular content segment is playing; an assembly engine for seamlessly assembling a subset of the content segments into a multimedia presentation comprising one of the content paths; a configuration manager for determining an audio file and a video file to be played based on a selected subsequent content segment; an audio engine for; dividing the audio file into a plurality of audio samples, each audio sample comprising a timestamp indicating a time at which the audio sample should be played; and upon causing one of the audio samples to be played, updating a current playback time based on the timestamp of the played audio sample, wherein the current playback time comprises a time that is maintained separately from timestamps of the audio samples and identifies a most recently played audio sample; and a video engine for synchronizing playback of the video file with playback of the audio file based on the current playback time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method comprising:
- storing, in a memory, a plurality of multimedia content segments, each content segment defining a portion of one or more content paths, wherein a particular content segment comprises a decision period during which a subsequent content segment can be selected for playback as the particular content segment is playing;
determining, by a configuration manager, an audio file and a video file to be played based on a selected subsequent content segment;
dividing, by an audio engine, the audio file into a plurality of audio samples, each audio sample comprising a timestamp indicating a time at which the audio sample should be played;
seamlessly joining, by an assembly engine, the selected subsequent content segment to a currently playing content segment;
upon causing one of the audio samples to be played, updating, by the audio engine, a current playback time based on the timestamp of the played audio sample, wherein the current playback time comprises a time that is maintained separately from timestamps of the audio samples and identifies a most recently played audio sample; and
synchronizing, by a video engine, playback of the video file with the playback of the audio file based on the current playback time. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
- storing, in a memory, a plurality of multimedia content segments, each content segment defining a portion of one or more content paths, wherein a particular content segment comprises a decision period during which a subsequent content segment can be selected for playback as the particular content segment is playing;
Specification