Patents by Inventor Arthur William James Freeman

Arthur William James Freeman 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).

  • Patent number: 8832708
    Abstract: Various embodiments enable a device to create a pool of at least one empty application. An empty application can be configured to contain resources that are common across one or more other applications and initialize the resources for the one or more other applications effective to reduce startup time of the other applications. In one or more embodiments, an empty application can further be populated with the one or more other applications effective to cause the one or more other applications to execute. Alternately or additionally, a device can be monitored for an idle state, and, upon determining the device is in the idle state, at least one empty application can be created.
    Type: Grant
    Filed: October 12, 2010
    Date of Patent: September 9, 2014
    Assignee: Microsoft Corporation
    Inventors: Bharath Siravara, Neil A. Brench, Arthur William James Freeman, Mark H. Krueger, David R. Anderson, Joerg Raymond Brown
  • Publication number: 20140237332
    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: April 28, 2014
    Publication date: August 21, 2014
    Applicant: Microsoft Corporation
    Inventors: James C. Finger, John Andre Yovin, Khurshed Mazhar, Olivier Colle, Arthur William James Freeman
  • Patent number: 8656268
    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: Grant
    Filed: February 9, 2006
    Date of Patent: February 18, 2014
    Assignee: Microsoft Corporation
    Inventors: James C. Finger, John Andre Yovin, Khurshed Mazhar, Olivier Colle, Arthur William James Freeman
  • Patent number: 8305398
    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: Grant
    Filed: February 13, 2006
    Date of Patent: November 6, 2012
    Assignee: Microsoft Corporation
    Inventors: James C. Finger, John Andre Yovin, Khurshed Mazhar, Olivier Colle, Arthur William James Freeman
  • Publication number: 20120089986
    Abstract: Various embodiments enable a device to create a pool of at least one empty application. An empty application can be configured to contain resources that are common across one or more other applications and initialize the resources for the one or more other applications effective to reduce startup time of the other applications. In one or more embodiments, an empty application can further be populated with the one or more other applications effective to cause the one or more other applications to execute. Alternately or additionally, a device can be monitored for an idle state, and, upon determining the device is in the idle state, at least one empty application can be created.
    Type: Application
    Filed: October 12, 2010
    Publication date: April 12, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Bharath Siravara, Neil A. Brench, Arthur William James Freeman, Mark H. Krueger, David R. Anderson, Joerg Raymond Brown
  • Patent number: 8108787
    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: Grant
    Filed: February 10, 2006
    Date of Patent: January 31, 2012
    Assignee: Microsoft Corporation
    Inventors: James C. Finger, John Andre Yovin, Khurshed Mazhar, Olivier Colle, Arthur William James Freeman
  • Patent number: 7698528
    Abstract: Memory management techniques involve establishing a memory pool having an amount of sharable memory, and dynamically allocating the sharable memory to concurrently manage multiple sets of sequenced units of digital data. In an exemplary scenario, the sets of sequenced units of digital data are sets of time-ordered media samples forming clips of media content, and the techniques are applied when media samples from two or more clips are simultaneously presentable to a user as independently-controlled streams. Variable amounts of sharable memory are dynamically allocated for preparing upcoming media samples for presentation to the user. In one possible implementation, a ratio of average data rates of individual streams is calculated, and amounts of sharable memory are allocated to rendering each stream based on the ratio. Then, the sharable memory allocated to rendering individual streams is reserved as needed to prepare particular upcoming media samples for presentation to the user.
    Type: Grant
    Filed: June 28, 2007
    Date of Patent: April 13, 2010
    Assignee: Microsoft Corporation
    Inventors: Arthur William James Freeman, Olivier Colle, James C. Finger
  • Publication number: 20090006771
    Abstract: Memory management techniques involve establishing a memory pool having an amount of sharable memory, and dynamically allocating the sharable memory to concurrently manage multiple sets of sequenced units of digital data. In an exemplary scenario, the sets of sequenced units of digital data are sets of time-ordered media samples forming clips of media content, and the techniques are applied when media samples from two or more clips are simultaneously presentable to a user as independently-controlled streams. Variable amounts of sharable memory are dynamically allocated for preparing upcoming media samples for presentation to the user. In one possible implementation, a ratio of average data rates of individual streams is calculated, and amounts of sharable memory are allocated to rendering each stream based on the ratio. Then, the sharable memory allocated to rendering individual streams is reserved as needed to prepare particular upcoming media samples for presentation to the user.
    Type: Application
    Filed: June 28, 2007
    Publication date: January 1, 2009
    Applicant: Microsoft Corporation
    Inventors: Arthur William James Freeman, Olivier Colle, James C. Finger