Patents by Inventor Gilles A. Khouzam
Gilles A. 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: 10715877Abstract: 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: GrantFiled: August 16, 2016Date of Patent: July 14, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Gilles Khouzam, Donald Karlov, Wenbo Zhang, Federico Schliemann, Sam George, Mike Harsh
-
Patent number: 10244022Abstract: 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: GrantFiled: July 22, 2014Date of Patent: March 26, 2019Assignee: Microsoft Technology Licensing, LLCInventors: 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: 20160360285Abstract: 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: ApplicationFiled: August 16, 2016Publication date: December 8, 2016Inventors: Gilles KHOUZAM, Donald KARLOV, Wenbo ZHANG, Federico SCHLIEMANN, Sam GEORGE, Mike HARSH
-
Patent number: 9420347Abstract: 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: GrantFiled: December 26, 2012Date of Patent: August 16, 2016Assignee: Microsoft CorporationInventors: Gilles Khouzam, Donald Karlov, Wenbo Zhang, Federico Schliemann, Sam George, Mike Harsh
-
Publication number: 20140337433Abstract: 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: ApplicationFiled: July 22, 2014Publication date: November 13, 2014Applicant: Microsoft CorporationInventors: 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: 8869289Abstract: 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: GrantFiled: January 28, 2009Date of Patent: October 21, 2014Assignee: Microsoft CorporationInventors: Kedarnath A. Dubhashi, John Bocharov, Hany Farag, Gilles Khouzam, Kiran Kumar
-
Patent number: 8789168Abstract: 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: GrantFiled: May 12, 2008Date of Patent: July 22, 2014Assignee: Microsoft CorporationInventors: 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: 8640097Abstract: 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: GrantFiled: March 16, 2009Date of Patent: January 28, 2014Assignee: Microsoft CorporationInventors: Gilles Khouzam, Sam J. George, Brian J. Ewanchuk, Lawrence W. Olson, Michael R. Harsh
-
Patent number: 8352996Abstract: 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: GrantFiled: June 27, 2008Date of Patent: January 8, 2013Assignee: Microsoft CorporationInventors: Gilles Khouzam, Donald Karlov, Wenbo Zhang, Federico Schliemann, Sam George, Mike Harsh
-
Patent number: 7852342Abstract: 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: GrantFiled: October 14, 2004Date of Patent: December 14, 2010Assignee: Microsoft CorporationInventors: Ivan Leichtling, Chenyin Zhong, Joy Chik, Gilles Khouzam, Paul David, Oreste Dorin Ungureanu
-
Publication number: 20100235820Abstract: 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: ApplicationFiled: March 16, 2009Publication date: September 16, 2010Applicant: MICROSOFT CORPORATIONInventors: Gilles Khouzam, Sam J. George, Brian J. Ewanchuk, Lawrence W. Olson, Michael R. Harsh
-
Publication number: 20100191974Abstract: 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: ApplicationFiled: January 28, 2009Publication date: July 29, 2010Applicant: MICROSOFT CORPORATIONInventors: Kedarnath A. Dubhashi, John Bocharov, Hany Farag, Gilles Khouzam, Kiran Kumar
-
Publication number: 20090328124Abstract: 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: ApplicationFiled: June 27, 2008Publication date: December 31, 2009Applicant: MICROSOFT CORPORATIONInventors: Gilles KHOUZAM, Donald KARLOV, Wenbo ZHANG, Federico SCHLIEMANN, Sam GEORGE, Mike HARSH
-
Patent number: 7639263Abstract: 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: GrantFiled: January 26, 2007Date of Patent: December 29, 2009Assignee: Microsoft CorporationInventors: Donald Karlov, Gilles Khouzam
-
Publication number: 20090282475Abstract: 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: ApplicationFiled: May 12, 2008Publication date: November 12, 2009Applicant: Microsoft CorporationInventors: 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: 7468733Abstract: 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: GrantFiled: October 6, 2004Date of Patent: December 23, 2008Assignee: Microsoft CorporationInventors: Gilles A. Khouzam, Gilman K. Wong, Cyra S. Richardson, Donald B. Curtis
-
Publication number: 20080180456Abstract: 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: ApplicationFiled: January 26, 2007Publication date: July 31, 2008Applicant: MICROSOFT CORPORATIONInventors: Donald Karlov, Gilles Khouzam
-
Publication number: 20060129634Abstract: 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: ApplicationFiled: July 29, 2005Publication date: June 15, 2006Applicant: Microsoft CorporationInventors: Gilles Khouzam, Paul David, Oreste Ungureanu, Adrian Secchia, Andrey Arsov
-
Publication number: 20060082583Abstract: 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: ApplicationFiled: October 14, 2004Publication date: April 20, 2006Applicant: Microsoft CorporationInventors: Ivan Leichtling, Chenyin Zhong, Joy Chik, Gilles Khouzam, Paul David, Oreste Ungureanu
-
Publication number: 20060071939Abstract: 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: ApplicationFiled: October 6, 2004Publication date: April 6, 2006Applicant: Microsoft CorporationInventors: Gilles Khouzam, Gilman Wong, Cyra Richardson, Donald Curtis