Patents by Inventor Kevin T. Gallo

Kevin T. Gallo 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: 8510753
    Abstract: In a computing environment, one may wish to have interoperability between trusted and untrusted controls/plug-ins allowing for richer expression of content and control within a platform. This can be accomplished by allowing an untrusted plug-in to communicate with a trusted plug-in, while having the trusted plug-in exercise control over the platform. This allows for the creation of a layered secure approach of communication with a platform, thus allowing for increased application richness in untrusted third party applications.
    Type: Grant
    Filed: June 27, 2008
    Date of Patent: August 13, 2013
    Assignee: Microsoft Corporation
    Inventors: Ashraf A. Michail, Akhilesh Kaza, Kevin T. Gallo, Sam J. George, Joseph P. Stegman, Michael R. Harsh, Mark Alcazar
  • Patent number: 8397266
    Abstract: A software framework that allows seamless integration of generic media players into a web browser. A media player is a software module that implements specific interfaces; defines a playing state, such as playing, paused, or stopped; and associates with the playing state a current playback time. A generic media player implements interfaces, including timing interfaces and playback synchronization interfaces for exchanging timing and synchronization information with a web browser. A player-hosting peer, which is a software component built into the browser, manages generic player hosting by a web browser. The player-hosting peer negotiates playback state and rendering status between the browser and the media player. Both the media player and the player-hosting peer maintain playing state and current playback time. The relationship between the peer and the player is a master slave relationship, with the peer being the master.
    Type: Grant
    Filed: January 11, 2010
    Date of Patent: March 12, 2013
    Assignee: Microsoft Corporation
    Inventors: Kevin T. Gallo, Paul C. David, Dorin O. Ungureanu, Debbie A. Newman
  • Patent number: 7808506
    Abstract: An intelligent caching data structure and mechanisms for storing visual information via objects and data representing graphics information. The data structure is generally associated with mechanisms that intelligently control how the visual information therein is populated and used. The cache data structure can be traversed for direct rendering, or traversed for pre-processing the visual information into an instruction stream for another entity. Much of the data typically has no external reference to it, thereby enabling more of the information stored in the data structure to be processed to conserve resources. A transaction/batching-like model for updating the data structure enables external modifications to the data structure without interrupting reading from the data structure, and such that changes received are atomically implemented. A method and mechanism are provided to call back to an application program in order to create or re-create portions of the data structure as needed, to conserve resources.
    Type: Grant
    Filed: August 27, 2009
    Date of Patent: October 5, 2010
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Adam M. Smith, Gerhard A. Schneider, Kevin T. Gallo, Ashraf A. Michail
  • Publication number: 20100115119
    Abstract: A software framework that allows seamless integration of generic media players into a web browser. A media player is a software module that implements specific interfaces; defines a playing state, such as playing, paused, or stopped; and associates with the playing state a current playback time. A generic media player implements interfaces, including timing interfaces and playback synchronization interfaces for exchanging timing and synchronization information with a web browser. A player-hosting peer, which is a software component built into the browser, manages generic player hosting by a web browser. The player-hosting peer negotiates playback state and rendering status between the browser and the media player. Both the media player and the player-hosting peer maintain playing state and current playback time. The relationship between the peer and the player is a master slave relationship, with the peer being the master.
    Type: Application
    Filed: January 11, 2010
    Publication date: May 6, 2010
    Inventors: Kevin T. Gallo, Paul C. David, Dorin O. Ungureanu, Debbie A. Newman
  • Patent number: 7705851
    Abstract: A multiple-level graphics processing system and method (e.g., of an operating system) for providing improved graphics output including, for example, smooth animation. One such multiple-level graphics processing system comprises two components, including a tick-on-demand or slow-tick high-level component, and a fast-tick (e.g., at the graphics hardware frame refresh rate) low-level component. In general, the high-level, less frequent component performs computationally intensive aspects of updating animation parameters and traversing scene data structures, in order to pass simplified data structures to the low-level component. The low-level component operates at a higher frequency, such as the frame refresh rate of the graphics subsystem, to process the data structures into constant output data for the graphics subsystem. The low-level processing includes interpolating any parameter intervals as necessary to obtain instantaneous values to render the scene for each frame of animation.
    Type: Grant
    Filed: October 31, 2006
    Date of Patent: April 27, 2010
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Gregory D. Swedberg, Oreste Dorin Ungureanu, Kevin T. Gallo, Paul C. David, Matthew W. Calkins
  • Patent number: 7665115
    Abstract: A software framework that allows seamless integration of generic media players into a web browser. A media player is a software module that implements specific interfaces; defines a playing state, such as playing, paused, or stopped; and associates with the playing state a current playback time. A generic media player implements interfaces, including timing interfaces and playback synchronization interfaces for exchanging timing and synchronization information with a web browser. A player-hosting peer, which is a software component built into the browser, manages generic player hosting by a web browser. The player-hosting peer negotiates playback state and rendering status between the browser and the media player. Both the media player and the player-hosting peer maintain playing state and current playback time. The relationship between the peer and the player is a master slave relationship, with the peer being the master.
    Type: Grant
    Filed: February 2, 2001
    Date of Patent: February 16, 2010
    Assignee: Microsoft Corporation
    Inventors: Kevin T. Gallo, Paul C. David, Dorin O. Ungureanu, Debbie A. Newman
  • Publication number: 20090328066
    Abstract: In a computing environment, one may wish to have interoperability between trusted and untrusted controls/plug-ins allowing for richer expression of content and control within a platform. This can be accomplished by allowing an untrusted plug-in to communicate with a trusted plug-in, while having the trusted plug-in exercise control over the platform. This allows for the creation of a layered secure approach of communication with a platform, thus allowing for increased application richness in untrusted third party applications.
    Type: Application
    Filed: June 27, 2008
    Publication date: December 31, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Ashraf A. Michail, Akhilesh Kaza, Kevin T. Gallo, Sam J. George, Joseph P. Stegman, Michael R. Harsh, Mark Alcazar
  • Publication number: 20090315902
    Abstract: An intelligent caching data structure and mechanisms for storing visual information via objects and data representing graphics information. The data structure is generally associated with mechanisms that intelligently control how the visual information therein is populated and used. The cache data structure can be traversed for direct rendering, or traversed for pre-processing the visual information into an instruction stream for another entity. Much of the data typically has no external reference to it, thereby enabling more of the information stored in the data structure to be processed to conserve resources. A transaction/batching-like model for updating the data structure enables external modifications to the data structure without interrupting reading from the data structure, and such that changes received are atomically implemented. A method and mechanism are provided to call back to an application program in order to create or re-create portions of the data structure as needed, to conserve resources.
    Type: Application
    Filed: August 27, 2009
    Publication date: December 24, 2009
    Applicant: MICROSOFT CORPORTAION
    Inventors: Joseph S. Beda, Adam M. Smith, Gerhard A. Schneider, Kevin T. Gallo, Ashraf A. Michail
  • Patent number: 7619633
    Abstract: An intelligent caching data structure and mechanisms for storing visual information via objects and data representing graphics information. The data structure is generally associated with mechanisms that intelligently control how the visual information therein is populated and used. The cache data structure can be traversed for direct rendering, or traversed for pre-processing the visual information into an instruction stream for another entity. Much of the data typically has no external reference to it, thereby enabling more of the information stored in the data structure to be processed to conserve resources. A transaction/batching-like model for updating the data structure enables external modifications to the data structure without interrupting reading from the data structure, and such that changes received are atomically implemented. A method and mechanism are provided to call back to an application program in order to create or re-create portions of the data structure as needed, to conserve resources.
    Type: Grant
    Filed: June 16, 2006
    Date of Patent: November 17, 2009
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Adam M. Smith, Gerhard A. Schneider, Kevin T. Gallo, Ashraf A. Michail
  • Patent number: 7511718
    Abstract: A media integration layer including an application programming interface (API) and an object model allows program code developers to interface in a consistent manner with a scene graph data structure in order to output graphics. Via the interfaces, program code adds child visuals to other visuals to build up a hierarchical scene graph, writes Instruction Lists such as geometry data, image data, animation data and other data for output, and may specify transform, clipping and opacity properties on visuals. The media integration layer and API enable programmers to accomplish composition effects within their applications in a straightforward manner, while leveraging the graphics processing unit in a manner that does not adversely impact normal application performance. A multiple-level system includes the ability to combine different media types (such as 2D, 3D, Video, Audio, text and imaging) and animate them smoothly and seamlessly.
    Type: Grant
    Filed: October 23, 2003
    Date of Patent: March 31, 2009
    Assignee: Microsoft Corporation
    Inventors: Sriram Subramanian, Leonardo E. Blanco, Donald B. Curtis, Joseph S. Beda, Gerhard A. Schneider, Greg D. Schechter, Adam M. Smith, Eric S. Vandenberg, Matthew W. Calkins, Kevin T. Gallo, Michael Stokes, Rajat Goel
  • Patent number: 7486294
    Abstract: An element object model and a vector graphics markup language for using that element object model in a manner that allows program code developers to consistently interface with a scene graph data structure to produce graphics. The vector graphics element object model generally corresponds to shape elements and other elements including image and video elements that correlate with a scene graph object model of the scene graph. Markup may be parsed into data including elements in an element tree that is translated into the objects of a scene graph data structure. Other markup may be translated directly into data and calls that create the scene graph objects. The markup language provides distinct ways to describe an element, including a simple string format or complex property syntax, which may be named, enabling reuse in other locations in the markup.
    Type: Grant
    Filed: March 27, 2003
    Date of Patent: February 3, 2009
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Kevin T. Gallo, Adam M. Smith, Gilman K. Wong, Sriram Subramanian
  • Patent number: 7477259
    Abstract: An intelligent caching data structure and mechanisms for storing visual information via objects and data representing graphics information. The data structure is generally associated with mechanisms that intelligently control how the visual information therein is populated and used. The cache data structure can be traversed for direct rendering, or traversed for pre-processing the visual information into an instruction stream for another entity. Much of the data typically has no external reference to it, thereby enabling more of the information stored in the data structure to be processed to conserve resources. A transaction/batching-like model for updating the data structure enables external modifications to the data structure without interrupting reading from the data structure, and such that changes received are atomically implemented. A method and mechanism are provided to call back to an application program in order to create or re-create portions of the data structure as needed, to conserve resources.
    Type: Grant
    Filed: June 16, 2006
    Date of Patent: January 13, 2009
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Adam M. Smith, Gerhard A. Schneider, Kevin T. Gallo, Ashraf A. Michail
  • Patent number: 7466315
    Abstract: A method and system implemented in an application programming interface (API) and an object model allows program code developers to interface in a consistent manner with a scene graph data structure to output graphics. Via the interfaces, program code writes drawing primitives such as geometry data, image data, animation data and other data to visuals that represent a drawing surface, including validation visual objects, drawing visual objects and surface visual objects. The code can also specify transform, clipping and opacity properties on visuals, and add child visuals to other visuals to build up a hierarchical scene graph. A visual manager traverses the scene graph to provide rich graphics data to lower-level graphics components.
    Type: Grant
    Filed: October 23, 2003
    Date of Patent: December 16, 2008
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Gerhard A. Schneider, Kevin T. Gallo, Adam M. Smith, Eric Vandenberg, Donald B. Curtis
  • Patent number: 7417645
    Abstract: An element object model and a vector graphics markup language for using that element object model in a manner that allows program code developers to consistently interface with a scene graph data structure to produce graphics. The vector graphics element object model generally corresponds to shape elements and other elements including image and video elements that correlate with a scene graph object model of the scene graph. Markup may be parsed into data including elements in an element tree that is translated into the objects of a scene graph data structure. Other markup may be translated directly into data and calls that create the scene graph objects. The markup language provides distinct ways to describe an element, including a simple string format or complex property syntax, which may be named, enabling reuse in other locations in the markup.
    Type: Grant
    Filed: October 23, 2003
    Date of Patent: August 26, 2008
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Kevin T. Gallo, Adam M. Smith, Gilman K. Wong, Sriram Subramanian
  • Patent number: 7265756
    Abstract: A parameterized scene graph provides mutable (animated) values and parameterized graph containers such that an application program or the like can selectively change certain aspects of the scene graph description while leaving other aspects intact, and also reuse portions of the scene graph with different parameters. To this end, mutable values are provided, which provide the higher level code with hooks into the scene graph enabling the scene description to be changed. The mutable values may be varied over time to provide animation. A parameterized graph container is also described that enables a scene graph portion to be templatized for reuse throughout a scene in a generic way. In this manner, a single parameterized graph container may be efficiently reused in a scene graph, with different values for its parameters.
    Type: Grant
    Filed: June 23, 2005
    Date of Patent: September 4, 2007
    Assignee: Microsoft Corporation
    Inventors: Gerhard A. Schneider, Joseph S. Beda, Adam M. Smith, Kevin T. Gallo, Ashraf A. Michail
  • Patent number: 7161599
    Abstract: A multiple-level graphics processing system and method (e.g., of an operating system) for providing improved graphics output including, for example, smooth animation. One such multiple-level graphics processing system comprises two components, including a tick-on-demand or slow-tick high-level component, and a fast-tick (e.g., at the graphics hardware frame refresh rate) low-level component. In general, the high-level, less frequent component performs computationally intensive aspects of updating animation parameters and traversing scene data structures, in order to pass simplified data structures to the low-level component. The low-level component operates at a higher frequency, such as the frame refresh rate of the graphics subsystem, to process the data structures into constant output data for the graphics subsystem. The low-level processing includes interpolating any parameter intervals as necessary to obtain instantaneous values to render the scene for each frame of animation.
    Type: Grant
    Filed: June 27, 2002
    Date of Patent: January 9, 2007
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Gregory D. Swedberg, Oreste Dorin Ungureanu, Kevin T. Gallo, Paul C. David, Matthew W. Calkins
  • Patent number: 7126606
    Abstract: A method and system implemented in an application programming interface (API) and an object model allows program code developers to interface in a consistent manner with a scene graph data structure to output graphics. Via the interfaces, program code writes drawing primitives such as geometry data, image data, animation data and other data to visuals that represent a drawing surface, including validation visual objects, drawing visual objects and surface visual objects. The code can also specify transform, clipping and opacity properties on visuals, and add child visuals to other visuals to build up a hierarchical scene graph. A visual manager traverses the scene graph to provide rich graphics data to lower-level graphics components.
    Type: Grant
    Filed: March 27, 2003
    Date of Patent: October 24, 2006
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Gerhard A. Schneider, Kevin T. Gallo, Adam M. Smith, Eric Vandenberg, Don Curtis
  • Patent number: 7064766
    Abstract: An intelligent caching data structure and mechanisms for storing visual information via objects and data representing graphics information. The data structure is generally associated with mechanisms that intelligently control how the visual information therein is populated and used. The cache data structure can be traversed for direct rendering, or traversed for pre-processing the visual information into an instruction stream for another entity. Much of the data typically has no external reference to it, thereby enabling more of the information stored in the data structure to be processed to conserve resources. A transaction/batching-like model for updating the data structure enables external modifications to the data structure without interrupting reading from the data structure, and such that changes received are atomically implemented. A method and mechanism are provided to call back to an application program in order to create or re-create portions of the data structure as needed, to conserve resources.
    Type: Grant
    Filed: June 27, 2002
    Date of Patent: June 20, 2006
    Assignee: Microsoft Corporation
    Inventors: Joseph S. Beda, Adam M. Smith, Gerhard A. Schneider, Kevin T. Gallo, Ashraf A. Michail
  • Patent number: 6919891
    Abstract: A parameterized scene graph provides mutable (animated) values and parameterized graph containers such that an application program or the like can selectively change certain aspects of the scene graph description while leaving other aspects intact, and also reuse portions of the scene graph with different parameters. To this end, mutable values are provided, which provide the higher level code with hooks into the scene graph enabling the scene description to be changed. The mutable values may be varied over time to provide animation. A parameterized graph container is also described that enables a scene graph portion to be templatized for reuse throughout a scene in a generic way. In this manner, a single parameterized graph container may be efficiently reused in a scene graph, with different values for its parameters.
    Type: Grant
    Filed: June 27, 2002
    Date of Patent: July 19, 2005
    Assignee: Microsoft Corporation
    Inventors: Gerhard A. Schneider, Joseph S. Beda, Adam M. Smith, Kevin T. Gallo, Ashraf A. Michail
  • Publication number: 20040189645
    Abstract: A method and system implemented in an application programming interface (API) and an object model allows program code developers to interface in a consistent manner with a scene graph data structure to output graphics. Via the interfaces, program code writes drawing primitives such as geometry data, image data, animation data and other data to visuals that represent a drawing surface, including validation visual objects, drawing visual objects and surface visual objects. The code can also specify transform, clipping and opacity properties on visuals, and add child visuals to other visuals to build up a hierarchical scene graph. A visual manager traverses the scene graph to provide rich graphics data to lower-level graphics components.
    Type: Application
    Filed: October 23, 2003
    Publication date: September 30, 2004
    Inventors: Joseph S. Beda, Gerhard A. Schneider, Kevin T. Gallo, Adam M. Smith, Eric S. Vandenberg, Donald B. Curtis