Abstract:
Playing an interactive multimedia presentation involves pre-rendering a media object at certain times based on a frame rate of the interactive content, a frame rate of the video content (which may include video, audio, data, or any combination thereof), and a play speed of the presentation. Certain actions taken include calculating a current elapsed play time representing an amount of the presentation's play duration that has passed. Based on the calculated time, a current interactive content presentation time is ascertained from an interactive content timeline. The interactive content timeline represents times at which the media object is presentable. A subsequent interactive content presentation time is selected from the interactive content timeline. The presentation state of the media object is predicted for the subsequent interactive content presentation time. The media object is pre-rendered within a time offset period before the subsequent interactive content presentation time occurs.
Abstract:
Using declarative language application instructions, one or more actions associated with playing interactive content of an interactive multimedia presentation are conditionally triggered based on a state change of a style or non-style characteristic of a particular media object. Certain application instructions specify the characteristic of the media object, while other application instructions specify the actions associated with playing the interactive content (for example, when one or more media objects are renderable, event generation, script execution, or changes in variables) based on a state change of the characteristic. The state change is detected by querying a structured representation of the application, which includes nodes associated with the application instructions, the media object, and/or the characteristic. When state changes are detected, one or more of the specified actions are triggered.
Abstract:
Media content is arranged into a number of sets of video, audio, or data samples, referred to as clips, which are rendered by a media content manager. A playlist, which is handled by a presentation manager, specifies the time-ordered sequence of clips playable to a user. Certain actions are taken during media content play to minimize glitches perceived by the user, including determining a time offset value that is used to decide how far in advance of a scheduled play time to begin pre-rendering an upcoming clip. The time offset value is determined using one or more static characteristics associated with a media source for the upcoming clip, such as the location of the media source, codec parameters, or encryption complexity, and one or more dynamic characteristics of the presentation system, such as retrieval states, (including play speeds) of media clips, processing loads, or clock frequencies.
Abstract:
In an interactive media environment, input events are distributed to a plurality of applications where each application includes zero or more script components and zero or more markup files and has a Z order which corresponds to the position of the applications' visual elements on a display. An input event processing order is utilized where the application that has focus in an interactive media environment (by virtue of its receipt of user events) is provided with the first opportunity to consume the input event. If the focused application does not consume the input event, it is then delivered to the remaining applications in top down, inverse Z order. Each application is enabled with the ability to consume an input event, pass it on to lower Z ordered applications, hide it from lower Z ordered applications, or otherwise handle it. Input event processing stops when an application consumes the input event.
Abstract:
A search and a browse on a single user query is performed. A refined query is selected from the results of the first user query. Thereafter, a list of concepts from a first directory associated with the refined query is obtained. The concepts are defined in a hierarchical relationship with concepts having broader scope being higher in the hierarchy and concepts having a narrower scope being lower in the hierarchy. Additionally, a list of web sites associated with the search concept is obtained from a second directory.