Patents by Inventor Michael R. Harsh

Michael R. Harsh 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: 10244022
    Abstract: Described is a technology by which code, such as an untrusted web application hosted in a browser, provides content through an interface for playback by an application environment, such as an application environment running in a browser plug-in. Content may be in the form of elementary video, audio and/or script streams. The content is in a container that is unpackaged by the application code, whereby the content may be packaged in any format that the application understands, and/or or come from any source from which the application can download the container. An application environment component such as a platform-level media element receives information from an application that informs the application environment that the application is to provide media stream data for playback. The application environment requests media stream data (e.g., samples) from the application, receives them as processed by the application, and provides the requested media stream data for playback.
    Type: Grant
    Filed: July 22, 2014
    Date of Patent: March 26, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Sam J George, Gilles Khouzam, Michael R Harsh, Gurpratap Virdi, John Gossman, Michael John Hillberg, Greg D Schechler, Donald D Karlov, Eldar A Musayev, Wenbo Zhang, Serge Smimov, Federico Schliemann, Lawrence Wayne Olson, Akshay Johar
  • Patent number: 10242181
    Abstract: Described is a technology in which one application running in a browser can host another application (e.g., an advertisement) in an isolated manner that prevents the hosted application from accessing browser data, or data of any other hosted application (including the host). The host and/or hosted application may be a browser plug-in (e.g., Microsoft® Silverlight™) application. The host application privately instantiates a hidden plug-in, with that hidden plug-in's access to browser data disabled, and loads the hosted application in the hidden plug-in. A XAML tag element may be used to identify the hosted application, along with a rendering area for the hosted application. Content from the hosted application is composited with content from the host application when rendering. The host application may provide keywords to the hosted application, such as for selecting relevant advertisements, and/or may allow the hosted application to open a browser window to display associated website content.
    Type: Grant
    Filed: February 15, 2017
    Date of Patent: March 26, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Sam George, Akhilesh Kaza, Michael R. Harsh
  • Publication number: 20170185769
    Abstract: Described is a technology in which one application running in a browser can host another application (e.g., an advertisement) in an isolated manner that prevents the hosted application from accessing browser data, or data of any other hosted application (including the host). The host and/or hosted application may be a browser plug-in (e.g., Microsoft® Silverlight™) application. The host application privately instantiates a hidden plug-in, with that hidden plug-in's access to browser data disabled, and loads the hosted application in the hidden plug-in. A XAML tag element may be used to identify the hosted application, along with a rendering area for the hosted application. Content from the hosted application is composited with content from the host application when rendering. The host application may provide keywords to the hosted application, such as for selecting relevant advertisements, and/or may allow the hosted application to open a browser window to display associated website content.
    Type: Application
    Filed: February 15, 2017
    Publication date: June 29, 2017
    Inventors: Sam George, Akhilesh Kaza, Michael R. Harsh
  • Patent number: 9594900
    Abstract: Described is a technology in which one application running in a browser can host another application (e.g., an advertisement) in an isolated manner that prevents the hosted application from accessing browser data, or data of any other hosted application (including the host). The host and/or hosted application may be a browser plug-in (e.g., Microsoft® Silverlight™) application. The host application privately instantiates a hidden plug-in, with that hidden plug-in's access to browser data disabled, and loads the hosted application in the hidden plug-in. A XAML tag element may be used to identify the hosted application, along with a rendering area for the hosted application. Content from the hosted application is composited with content from the host application when rendering. The host application may provide keywords to the hosted application, such as for selecting relevant advertisements, and/or may allow the hosted application to open a browser window to display associated website content.
    Type: Grant
    Filed: December 9, 2008
    Date of Patent: March 14, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Sam George, Akhilesh Kaza, Michael R. Harsh
  • Publication number: 20140337433
    Abstract: Described is a technology by which code, such as an untrusted web application hosted in a browser, provides content through an interface for playback by an application environment, such as an application environment running in a browser plug-in. Content may be in the form of elementary video, audio and/or script streams. The content is in a container that is unpackaged by the application code, whereby the content may be packaged in any format that the application understands, and/or or come from any source from which the application can download the container. An application environment component such as a platform-level media element receives information from an application that informs the application environment that the application is to provide media stream data for playback. The application environment requests media stream data (e.g., samples) from the application, receives them as processed by the application, and provides the requested media stream data for playback.
    Type: Application
    Filed: July 22, 2014
    Publication date: November 13, 2014
    Applicant: Microsoft Corporation
    Inventors: Sam J. George, Gilles Khouzam, Michael R Harsh, Gurpratap Virdi, John Gossman, Michael John Hillberg, Greg D Schechler, Donald D Karlov, Eldar A Musayev, Wenbo Zhang, Serge Smimov, Federico Schliemann, Lawrence Wayne Olson, Akshay Johar
  • Patent number: 8789168
    Abstract: Described is a technology by which code, such as an untrusted web application hosted in a browser, provides content through an interface for playback by an application environment, such as an application environment running in a browser plug-in. Content may be in the form of elementary video, audio and/or script streams. The content is in a container that is unpackaged by the application code, whereby the content may be packaged in any format that the application understands, and/or or come from any source from which the application can download the container. An application environment component such as a platform-level media element receives information from an application that informs the application environment that the application is to provide media stream data for playback. The application environment requests media stream data (e.g., samples) from the application, receives them as processed by the application, and provides the requested media stream data for playback.
    Type: Grant
    Filed: May 12, 2008
    Date of Patent: July 22, 2014
    Assignee: Microsoft Corporation
    Inventors: Sam J George, Gilles Khouzam, Michael R Harsh, Gurpratap Virdi, John Gossman, Michael John Hillberg, Greg D Schechter, Donald D Karlov, Eldar A Musayev, Wenbo Zhang, Serge Smirnov, Federico Schliemann, Lawrence Wayne Olson, Akshay Johar, Weibing Zhan
  • Patent number: 8640097
    Abstract: A media interaction system is described herein that allows hosted applications to consume and/or produce rich media content independent of the format of the media content, while still maintaining the security of the host. The media interaction system accepts raw, uncompressed media data from a hosted application, and allows the hosted application to provide its own codec through a sandboxed API that restricts the actions the codec can perform to a set of trusted actions. Then, the application provides the uncompressed data to the system for playback. Thus, the media interaction system provides rich media content in any format that the application developer supports, and maintains the security of the user's computer system.
    Type: Grant
    Filed: March 16, 2009
    Date of Patent: January 28, 2014
    Assignee: Microsoft Corporation
    Inventors: Gilles Khouzam, Sam J. George, Brian J. Ewanchuk, Lawrence W. Olson, Michael R. Harsh
  • Patent number: 8589862
    Abstract: Extensions or additional software programs that are requested by a computer application running on an application platform are handled in an efficient manner by, among other things, regulating and tracking extensions that are downloaded. This allows the size of the application platform upon which the application is running to remain relatively small so as to mitigate strain on resources when the platform is initially deployed over a network (e.g., the Internet), thus making it easier and more likely for a user to install the application platform (and/or updates thereto). Requested extensions are subsequently added to and/or removed from the (already deployed) application platform based on, among other things, download metrics.
    Type: Grant
    Filed: June 2, 2008
    Date of Patent: November 19, 2013
    Assignee: Microsoft Corporation
    Inventors: Sam J. George, Akhilesh Kaza, Thomas D. Taylor, Michael R. Harsh
  • 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
  • Publication number: 20100235820
    Abstract: A media interaction system is described herein that allows hosted applications to consume and/or produce rich media content independent of the format of the media content, while still maintaining the security of the host. The media interaction system accepts raw, uncompressed media data from a hosted application, and allows the hosted application to provide its own codec through a sandboxed API that restricts the actions the codec can perform to a set of trusted actions. Then, the application provides the uncompressed data to the system for playback. Thus, the media interaction system provides rich media content in any format that the application developer supports, and maintains the security of the user's computer system.
    Type: Application
    Filed: March 16, 2009
    Publication date: September 16, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Gilles Khouzam, Sam J. George, Brian J. Ewanchuk, Lawrence W. Olson, Michael R. Harsh
  • Publication number: 20100146379
    Abstract: Described is a technology in which one application running in a browser can host another application (e.g., an advertisement) in an isolated manner that prevents the hosted application from accessing browser data, or data of any other hosted application (including the host). The host and/or hosted application may be a browser plug-in (e.g., Microsoft® Silverlight™) application. The host application privately instantiates a hidden plug-in, with that hidden plug-in's access to browser data disabled, and loads the hosted application in the hidden plug-in. A XAML tag element may be used to identify the hosted application, along with a rendering area for the hosted application. Content from the hosted application is composited with content from the host application when rendering. The host application may provide keywords to the hosted application, such as for selecting relevant advertisements, and/or may allow the hosted application to open a browser window to display associated website content.
    Type: Application
    Filed: December 9, 2008
    Publication date: June 10, 2010
    Applicant: Microsoft Corporation
    Inventors: Sam George, Akhilesh Kaza, Michael R. Harsh
  • Patent number: 7721219
    Abstract: The present invention relates to systems and methods that provide automatic generation of user interfaces via creation of a class-based model. A system is provided that facilitates generating a user interface. The system includes a class component to generally define properties and methods associated with one or more interface actions. A service component parses the class to automatically generate all or a portion of a user interface from the interface actions. Push and Pull-type models can be provided to facilitate merging of actions from various classes such as provided by third parties or from existing component developments.
    Type: Grant
    Filed: August 2, 2004
    Date of Patent: May 18, 2010
    Assignee: Microsoft Corporation
    Inventors: Michael R. Harsh, Brian K. Pepin, Nikhil Kothari, Andrew Cheng-min Lin, Julien Jacques Nicolas Ellie, Simon Calvert
  • 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: 20090300597
    Abstract: Extensions or additional software programs that are requested by a computer application running on an application platform are handled in an efficient manner by, among other things, regulating and tracking extensions that are downloaded. This allows the size of the application platform upon which the application is running to remain relatively small so as to mitigate strain on resources when the platform is initially deployed over a network (e.g., the Internet), thus making it easier and more likely for a user to install the application platform (and/or updates thereto). Requested extensions are subsequently added to and/or removed from the (already deployed) application platform based on, among other things, download metrics.
    Type: Application
    Filed: June 2, 2008
    Publication date: December 3, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Sam J. George, Akhilesh Kaza, Thomas D. Taylor, Michael R. Harsh
  • Publication number: 20090282475
    Abstract: Described is a technology by which code, such as an untrusted web application hosted in a browser, provides content through an interface for playback by an application environment, such as an application environment running in a browser plug-in. Content may be in the form of elementary video, audio and/or script streams. The content is in a container that is unpackaged by the application code, whereby the content may be packaged in any format that the application understands, and/or or come from any source from which the application can download the container. An application environment component such as a platform-level media element receives information from an application that informs the application environment that the application is to provide media stream data for playback. The application environment requests media stream data (e.g., samples) from the application, receives them as processed by the application, and provides the requested media stream data for playback.
    Type: Application
    Filed: May 12, 2008
    Publication date: November 12, 2009
    Applicant: Microsoft Corporation
    Inventors: Sam J. George, Gilles Khouzam, Michael R. Harsh, Gurpratap Virdi, John Gossman, Michael John Hillberg, Greg D. Schechter, Donald D. Karlov, Eldar A. Musayev, Wenbo Zhang, Serge Smirnov, Federico Schliemann, Lawrence Wayne Olson, Akshay Johar, Weibing Zhan