Patents by Inventor James Finger

James Finger has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20070006080
    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.
    Type: Application
    Filed: February 16, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: James Finger, John Yovin, Olivier Colle
  • Publication number: 20070005757
    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.
    Type: Application
    Filed: February 10, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: James Finger, John Yovin, Khurshed Mazhar, Olivier Colle, Arthur Freeman
  • Publication number: 20070006064
    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.
    Type: Application
    Filed: April 18, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Olivier Colle, James Finger, Khurshed Mazhar, Mark VanAntwerp
  • Publication number: 20070006065
    Abstract: An interactive multimedia presentation has an interactive content component that includes an application, which has instructions for rendering a media object. By nesting a declarative language event instruction inside of a declarative language timing instruction, a particular event can arise and/or be handled (for example, a media object is rendered) only within a time interval specified by the timing instruction. The event instruction specifies when a particular event (such as a user event, a system event, a document object event, or another type of event) arises. When the event arises during the time interval, the event may be handled. Outside of the time interval, even if the event arises, the event is not handled. In this manner, responses to the event are constrained to happen in the time interval, and events that are not handled within a certain time may be ignored.
    Type: Application
    Filed: April 18, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Andrew Jewsbury, Sean Hayes, Olivier Colle, James Finger
  • Publication number: 20070006233
    Abstract: An arrangement is provided where all applications in an interactive media environment run on a single application thread in a media player. Event queues are utilized to schedule the application thread's processing of workitems corresponding to events that occur in the environment. Workitems include methods to be invoked when the workitem is processed and arguments for the method. Workitems further include a begin time and an end time and are ordered in the event queue first by begin time followed by the order in which they were inserted into the queue. The application thread marks workitems whose begin times corresponds to the current or previous time and then processes marked workitems from the queue in order. Such processing is committed so that once the application thread begins processing of a workitem it does not stop. Workitems are dropped from the event queue if their end times have been passed.
    Type: Application
    Filed: February 9, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: James Finger, John Yovin, Khurshed Mazhar, Olivier Colle, Arthur Freeman
  • Publication number: 20070006079
    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.
    Type: Application
    Filed: April 18, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Andrew Jewsbury, Sean Hayes, Olivier Colle, James Finger
  • Publication number: 20070006063
    Abstract: An interactive multimedia presentation has a predetermined presentation play duration, a video content component (which may include video, audio, data, or any combination thereof), and an interactive content component. Methods and systems for playing the presentation include specifying a time when a particular media object is renderable. The time is specifiable using an application instruction that references either a first timing signal having a rate that is based on the play speed of the presentation, or a second timing signal having a continuous rate. One example of an application instruction usable as described above is an element associated with an XML data structure. An attribute of the element, such as the clock attribute, may be used to provide time values for the element that reference either timing signal. The attribute is used to maintain frame-accurate synchronization between the video and the interactive content components of the presentation.
    Type: Application
    Filed: February 15, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Andrew Jewsbury, James Finger, Olivier Colle, Robert Hughes
  • Publication number: 20070006078
    Abstract: Using declarative language application instructions, actions associated with playing interactive content of an interactive multimedia presentation are triggered based on a state change 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 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 such as a document object model, 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 to thereby declaratively respond to the state change.
    Type: Application
    Filed: April 18, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Andrew Jewsbury, James Finger, Sean Hayes, Jeffrey Davis
  • Publication number: 20070002045
    Abstract: In an interactive media environment, a model is provided where applications, each comprising zero or more script components and zero or more markup components, are themselves handled as visual elements having a Z order. A resource-efficient rendering order is provided where the application that has focus in an interactive media environment (by virtue of its receipt of user events) is rendered first. The remaining applications are rendered in top down order, i.e., in reverse Z order. Rendering is performed by drawing into one or more graphics buffers associated with respective applications. Frames for applications are composited from the graphics buffers bottoms up, in Z order, to provide the display with the correct appearance.
    Type: Application
    Filed: February 13, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: James Finger, John Yovin, Khurshed Mazhar, Olivier Colle, Arthur Freeman
  • Publication number: 20070006238
    Abstract: Applications are managed in an interactive media environment by the creation of a logical model for the lifetime of an application. The model is applicable to concurrently and/or consecutively running applications and governs the creation of applications, manipulation of applications by other applications, resource consumption, visibility of an application to a user, and application shutdown in the interactive media environment using the construct of application “state.
    Type: Application
    Filed: February 13, 2006
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: James Finger, John Yovin, Khurshed Mazhar, Olivier Colle, Arthur William Freeman
  • Publication number: 20060149723
    Abstract: A system and method for scoring documents in a search, wherein the scoring algorithm may be reconfigured dynamically. When a query is submitted, a score data structure is created for each document to be scored, which contains fields of information about how a given document compares to a query. A ranker object embodies a formula that derives a scalar score from the information contained in a score data structure. Scoring software is configured to apply the formula embodied in a ranker object to the values in the score data structure. Thus, the scoring formula can be dynamically changed without recompiling the scoring software by providing a new ranker object. Preferably, ranker objects are organized into rank sets, where each rank set contains a different ranker object for each class of document to be scored.
    Type: Application
    Filed: March 6, 2006
    Publication date: July 6, 2006
    Applicant: Microsoft Corporation
    Inventor: James Finger
  • Publication number: 20060122991
    Abstract: Refining a user query is disclosed. In one method, a query is received from a user, and then mapped to one or more search concepts. A list of search concepts associated associated with the query is then displayed. Alternatively or additionally, the search concepts associated with the query are used to provide a set of improved search results. In another method, a number of queries from a number of users are analyzed to identify two or more search concepts, and a popularity value is assigned to them based on the queries. Thus, the relative popularity of the respective search concepts can be determined. Alternatively or additionally, a preferred search query for the search concepts can be determined. The popularity and preferred queries can be used to allow automatic or user-initiated refinement.
    Type: Application
    Filed: January 26, 2006
    Publication date: June 8, 2006
    Applicant: Microsoft Corporation
    Inventors: Raman Chandrasekar, James Finger, Eric Watson
  • Publication number: 20060085401
    Abstract: A system analyzes data from a search engine. A User Search Bundler analyzes User Searches groups similar User Searches into User Search Bundles, and an Intent Processor produces Intents based on the User Search Bundles. A Factor Generator considers User Searches and related information to produce Factors, where each Factor is with regard to a particular Result from a set of Search Results. A Relevance Classifier receives the Factors and operates based thereon to produce a Judgment for each Result. A Metric Generator produces Metrics based on the Factors and the Judgments, and, a data synthesizer formats extracted data into databases.
    Type: Application
    Filed: October 20, 2004
    Publication date: April 20, 2006
    Applicant: Microsoft Corporation
    Inventors: Blake Anderson, Frederic Behr, James Finger, Jennifer Marsman, Kuldeep Karnawat, Mark Mydland, Paul Malolepsy, Takeshi Shimizu, Thomas White, Ying Zhang
  • Publication number: 20060074902
    Abstract: A method is provided for analyzing a plurality of search sessions to identify intent-based clusters therein. Each session comprises at least one received query from a user and a corresponding set of returned search results, and each set of search results includes or refers to at least one piece of content. Each cluster represents a group of similar search sessions that are perceived as representing a common purpose and that can be mapped to a common set of search results. In the method, for each search session, each received query thereof, the corresponding set of search results, and whether any particular piece of content of the search results was acceptable to the user as responsive to the corresponding search session are identified. Thereafter, search sessions are grouped into clusters.
    Type: Application
    Filed: September 30, 2004
    Publication date: April 6, 2006
    Applicant: Microsoft Corporation
    Inventors: Blake Anderson, James Finger, Jennifer Marsman, Kuldeep Karnawat, Mark Mydland, Paul Malolepsy, Thomas White
  • Publication number: 20060074891
    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.
    Type: Application
    Filed: November 14, 2005
    Publication date: April 6, 2006
    Applicant: Microsoft Corporation
    Inventors: Raman Chandrasekar, James Finger, Sally Salas, Eric Watson