Patents by Inventor Gilles Khouzam

Gilles Khouzam 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: 10715877
    Abstract: A system for video playback switching in response to changing network conditions. The system includes streaming, from a distribution device such as a server, respective index files for a low bit rate version and a high bit rate version of the video file, to remotely executing instantiations of a low bit rate media player and a high bit rate media. Playback of the video file is begun by the high bit rate media player receiving and playing the high bit rate version from the server. Upon an indication of impeded network conditions, a transition point is selected, wherein the transition point indicates where downloading of the high bit rate version stops and where downloading of the low bit rate version begins. The low bit rate media player is then positioned to begin playback at the transition point. The stream of the video file is then switched to the low bit rate player upon encountering the transition point.
    Type: Grant
    Filed: August 16, 2016
    Date of Patent: July 14, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Gilles Khouzam, Donald Karlov, Wenbo Zhang, Federico Schliemann, Sam George, Mike Harsh
  • 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
  • Publication number: 20160360285
    Abstract: A system for video playback switching in response to changing network conditions. The system includes streaming, from a distribution device such as a server, respective index files for a low bit rate version and a high bit rate version of the video file, to remotely executing instantiations of a low bit rate media player and a high bit rate media. Playback of the video file is begun by the high bit rate media player receiving and playing the high bit rate version from the server. Upon an indication of impeded network conditions, a transition point is selected, wherein the transition point indicates where downloading of the high bit rate version stops and where downloading of the low bit rate version begins. The low bit rate media player is then positioned to begin playback at the transition point. The stream of the video file is then switched to the low bit rate player upon encountering the transition point.
    Type: Application
    Filed: August 16, 2016
    Publication date: December 8, 2016
    Inventors: Gilles KHOUZAM, Donald KARLOV, Wenbo ZHANG, Federico SCHLIEMANN, Sam GEORGE, Mike HARSH
  • Patent number: 9420347
    Abstract: A method for video playback switching in response to changing network conditions. The method includes accessing a server to retrieve respective index files for a low bit rate version and a high bit rate version of the video file, and instantiating a low bit rate media player and a high bit rate media. Playback of the video file is begun by the high bit rate media player streaming the high bit rate version from the server. Upon an indication of impeded network conditions, a transition point is selected, wherein the transition point indicates where downloading of the high bit rate version stops and where downloading of the low bit rate version begins. The low bit rate media player is then positioned to begin playback at the transition point. Playback of the video file is then switched to the low bit rate player upon encountering the transition point.
    Type: Grant
    Filed: December 26, 2012
    Date of Patent: August 16, 2016
    Assignee: Microsoft Corporation
    Inventors: Gilles Khouzam, Donald Karlov, Wenbo Zhang, Federico Schliemann, Sam George, Mike 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: 8869289
    Abstract: Various embodiments for software application verification are disclosed. Software application verification applies digital rights management to applications that run protected content on a playback device. In this way, protected content may be provided to approved applications and withheld from applications that have not been approved to run the protected content.
    Type: Grant
    Filed: January 28, 2009
    Date of Patent: October 21, 2014
    Assignee: Microsoft Corporation
    Inventors: Kedarnath A. Dubhashi, John Bocharov, Hany Farag, Gilles Khouzam, Kiran Kumar
  • 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: 8352996
    Abstract: A method for video playback switching in response to changing network conditions. The method includes accessing a server to retrieve respective index files for a low bit rate version and a high bit rate version of the video file, and instantiating a low bit rate media player and a high bit rate media. Playback of the video file is begun by the high bit rate media player streaming the high bit rate version from the server. Upon an indication of impeded network conditions, a transition point is selected, wherein the transition point indicates where downloading of the high bit rate version stops and where downloading of the low bit rate version begins. The low bit rate media player is then positioned to begin playback at the transition point. Playback of the video file is then switched to the low bit rate player upon encountering the transition point.
    Type: Grant
    Filed: June 27, 2008
    Date of Patent: January 8, 2013
    Assignee: Microsoft Corporation
    Inventors: Gilles Khouzam, Donald Karlov, Wenbo Zhang, Federico Schliemann, Sam George, Mike Harsh
  • Patent number: 7852342
    Abstract: A server computer hosts one or more application programs that are accessed by a client computer. Higher-level graphics commands describing graphics images are received from the application programs. The server computer determines whether the client computer is able to generate graphics using the higher-level graphics commands or generates graphics using relatively lower-level graphics commands. The server computer sends higher-level or relatively lower-level graphics commands depending on whether the client computer generates graphics using higher-level or relatively lower-level graphics commands.
    Type: Grant
    Filed: October 14, 2004
    Date of Patent: December 14, 2010
    Assignee: Microsoft Corporation
    Inventors: Ivan Leichtling, Chenyin Zhong, Joy Chik, Gilles Khouzam, Paul David, Oreste Dorin Ungureanu
  • 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: 20100191974
    Abstract: Various embodiments for software application verification are disclosed. Software application verification applies digital rights management to applications that run protected content on a playback device. In this way, protected content may be provided to approved applications and withheld from applications that have not been approved to run the protected content.
    Type: Application
    Filed: January 28, 2009
    Publication date: July 29, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Kedarnath A. Dubhashi, John Bocharov, Hany Farag, Gilles Khouzam, Kiran Kumar
  • Publication number: 20090328124
    Abstract: A method for video playback switching in response to changing network conditions. The method includes accessing a server to retrieve respective index files for a low bit rate version and a high bit rate version of the video file, and instantiating a low bit rate media player and a high bit rate media. Playback of the video file is begun by the high bit rate media player streaming the high bit rate version from the server. Upon an indication of impeded network conditions, a transition point is selected, wherein the transition point indicates where downloading of the high bit rate version stops and where downloading of the low bit rate version begins. The low bit rate media player is then positioned to begin playback at the transition point. Playback of the video file is then switched to the low bit rate player upon encountering the transition point.
    Type: Application
    Filed: June 27, 2008
    Publication date: December 31, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Gilles KHOUZAM, Donald KARLOV, Wenbo ZHANG, Federico SCHLIEMANN, Sam GEORGE, Mike HARSH
  • Patent number: 7639263
    Abstract: The values of each possible component output R, G, and B may be pre-computed for all values of each possible component input Y, U, and V. Each contribution of Y, U, and V input may then be loaded into a register and added in parallel, without overflow, resulting in a computationally inexpensive RGB output from a YUV input. In one embodiment, contributions of Y, U, and V to each of R, G, and B are retrieved from pre-computed tables. The YUV contributions for each value of R, G, and B are packed into three data elements and added together in parallel, resulting in a value for an RGB output.
    Type: Grant
    Filed: January 26, 2007
    Date of Patent: December 29, 2009
    Assignee: Microsoft Corporation
    Inventors: Donald Karlov, Gilles Khouzam
  • 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
  • Patent number: 7468733
    Abstract: A method and system for reducing or eliminating artifacts that may occur during color reduction of images. A bias is added to a data structure that is arranged to store counts of pixel colors of an image. Counts of pixel colors of the image are added to the data structure. Via the data structure, colors from the image are grouped into buckets until the number of buckets is less than or equal to a number of colors in a palette. Then, colors of pixels in the image are mapped to colors in the palette.
    Type: Grant
    Filed: October 6, 2004
    Date of Patent: December 23, 2008
    Assignee: Microsoft Corporation
    Inventors: Gilles A. Khouzam, Gilman K. Wong, Cyra S. Richardson, Donald B. Curtis
  • Publication number: 20080180456
    Abstract: The values of each possible component output R, G, and B may be pre-computed for all values of each possible component input Y, U, and V. Each contribution of Y, U, and V input may then be loaded into a register and added in parallel, without overflow, resulting in a computationally inexpensive RGB output from a YUV input. In one embodiment, contributions of Y, U, and V to each of R, G, and B are retrieved from pre-computed tables. The YUV contributions for each value of R, G, and B are packed into three data elements and added together in parallel, resulting in a value for an RGB output.
    Type: Application
    Filed: January 26, 2007
    Publication date: July 31, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Donald Karlov, Gilles Khouzam
  • Publication number: 20060129634
    Abstract: Described is the multiplexing and de-multiplexing of graphics streams, including by generating first higher-level graphics instructions from a first application program upon connecting to a client computer. A first identifier representing the first application program is associated with the first higher-level graphics instructions. Second higher-level graphics instructions are generated from a second application program, with a second identifier representing the second application program associated with the second higher-level graphics instructions. The first higher-level graphics instructions and the second higher-level graphics instructions are sent to the client computer. A server computer thus allows one or more application programs to be accessed by a client computer.
    Type: Application
    Filed: July 29, 2005
    Publication date: June 15, 2006
    Applicant: Microsoft Corporation
    Inventors: Gilles Khouzam, Paul David, Oreste Ungureanu, Adrian Secchia, Andrey Arsov
  • Publication number: 20060082583
    Abstract: A server computer hosts one or more application programs that are accessed by a client computer. Higher-level graphics commands describing graphics images are received from the application programs. The server computer determines whether the client computer is able to generate graphics using the higher-level graphics commands or generates graphics using relatively lower-level graphics commands. The server computer sends higher-level or relatively lower-level graphics commands depending on whether the client computer generates graphics using higher-level or relatively lower-level graphics commands.
    Type: Application
    Filed: October 14, 2004
    Publication date: April 20, 2006
    Applicant: Microsoft Corporation
    Inventors: Ivan Leichtling, Chenyin Zhong, Joy Chik, Gilles Khouzam, Paul David, Oreste Ungureanu
  • Publication number: 20060071939
    Abstract: A method and system for reducing or eliminating artifacts that may occur during color reduction of images. A bias is added to a data structure that is arranged to store counts of pixel colors of an image. Counts of pixel colors of the image are added to the data structure. Via the data structure, colors from the image are grouped into buckets until the number of buckets is less than or equal to a number of colors in a palette. Then, colors of pixels in the image are mapped to colors in the palette.
    Type: Application
    Filed: October 6, 2004
    Publication date: April 6, 2006
    Applicant: Microsoft Corporation
    Inventors: Gilles Khouzam, Gilman Wong, Cyra Richardson, Donald Curtis