Patents by Inventor Gurpratap Virdi

Gurpratap Virdi 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: 8996547
    Abstract: Media fragmentation may be provided. First, a request for a manifest may be received from a client. Then, in response to the received request for the manifest, the manifest may be sent to the client. Next, a request may be received from the client for a file fragment. The request may indicate a start time and an end time corresponding to the file fragment. The request may be in a format defined by the manifest. Then a lookup table may be queried for a first byte location in a media file corresponding to the start time and a second byte location in the media file corresponding to the end time. Next, a portion of the media file between the first byte location and the second byte location may be extracted from the media file. The portion may comprise the file fragment. The file fragment may be sent to the client.
    Type: Grant
    Filed: October 31, 2008
    Date of Patent: March 31, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: John A. Bocharov, Geqiang Zhang, Gurpratap Virdi, Vishal Sood
  • Patent number: 8930566
    Abstract: Program code enabling the streaming of HD content in real-time to a game console is stored on a storage medium remote from the game console. The game console executes software that facilitates transfer of the program code from the remote storage medium to the game console. The program code ensures that sufficient bandwidth exists on a network between the game console and a HD tuner, and enables the streaming of HD content in real-time to the game console.
    Type: Grant
    Filed: December 31, 2012
    Date of Patent: January 6, 2015
    Assignee: Microsoft Corporation
    Inventors: Jeffrey Davis, Ashley Speicher, Gurpratap Virdi, Vu Nguyen, Todd Bowra
  • 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: 8819754
    Abstract: The present disclosure relates to playback of video/audio streaming media data. The media stream is available from the network at multiple bit rates. When a seek operation is performed, a playback device requests a lower bit rate media stream in order to quickly fill a playback buffer so that playback can commence more readily. After a seek start-up period is complete, the playback device can return to downloading the media stream associated with higher bit rates in order to increase the quality of the playback.
    Type: Grant
    Filed: January 10, 2013
    Date of Patent: August 26, 2014
    Assignee: Microsoft Corporation
    Inventors: Gurpratap Virdi, Eldar Musayev, Wenbo Zhang, Andres Vega-Garcia
  • 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: 8781305
    Abstract: Media streaming with smooth fast-forward and rewind is disclosed. One embodiment receives a media stream encoded at a first bit rate over a network connection, and in response to an input to fast-forward or rewind the media stream, the media stream may be retrieved at a second bit rate, and rendered at the second bit rate for fast-forward or rewind playback. By receiving the media stream at multiple bit rates, a media stream may be rendered at increased forward or reverse speeds without dropping frames in the media stream.
    Type: Grant
    Filed: December 2, 2008
    Date of Patent: July 15, 2014
    Assignee: Microsoft Corporation
    Inventors: Wenbo Zhang, Gurpratap Virdi
  • Patent number: 8752102
    Abstract: An intelligent retransmission of data stream segments is disclosed. One embodiment comprises detecting a missing media data segment at a media receiver, assigning a value to the missing media data segment based upon media playback consequences of not utilizing the missing media data segment, comparing the value with a threshold, and requesting retransmission of the missing media data segment from a media server if the value meets a predetermined condition relative to the threshold. In this manner, retransmission is requested when it is determined that retransmission will improve playback performance relative to non-retransmission.
    Type: Grant
    Filed: January 3, 2008
    Date of Patent: June 10, 2014
    Assignee: Microsoft Corporation
    Inventors: Valerian Menn, Nicholas Fang, Gurpratap Virdi, Todd Bowra
  • Patent number: 8386592
    Abstract: Program code enabling the streaming of HD content in real-time to a game console is stored on a storage medium remote from the game console. The game console executes software that facilitates transfer of the program code from the remote storage medium to the game console. The program code ensures that sufficient bandwidth exists on a network between the game console and a HD tuner, and enables the streaming of HD content in real-time to the game console.
    Type: Grant
    Filed: September 9, 2008
    Date of Patent: February 26, 2013
    Assignee: Microsoft Corporation
    Inventors: Jeffrey Davis, Todd Bowra, Ashley Speicher, Gurpratap Virdi, Vu Nguyen
  • Patent number: 8370887
    Abstract: The present disclosure relates to playback of video/audio streaming media data. The media stream is available from the network at multiple bit rates. When a seek operation is performed, a playback device requests a lower bit rate media stream in order to quickly fill a playback buffer so that playback can commence more readily. After a seek start-up period is complete, the playback device can return to downloading the media stream associated with higher bit rates in order to increase the quality of the playback.
    Type: Grant
    Filed: August 7, 2008
    Date of Patent: February 5, 2013
    Assignee: Microsoft Corporation
    Inventors: Gurpratap Virdi, Andres Vega-Garcia, Wenbo Zhang, Eldar Musayev
  • Patent number: 8266311
    Abstract: Strategies are described for transmitting control information from a host module to a client module. The host module transmits the control information in-band along with a stream of media content information packets. The control information can be used to govern the operation of the client module. In one case, the control information alerts the client module to a discontinuity in streams, which may be the result of the user changing channels via the host or client module, etc., issuing a seek instruction, and so forth. Transmitting the control information in in-band fashion is advantageous because it reduces the need for complex linking between the control information and the associated content information.
    Type: Grant
    Filed: July 29, 2004
    Date of Patent: September 11, 2012
    Assignee: Microsoft Corporation
    Inventors: Gurpratap Virdi, Jeffrey A. Davis
  • Patent number: 8248423
    Abstract: A media processing framework includes multiple media processing paths. At least one of the media processing paths includes a media processing pipeline which is in-process with respect to an application which interacts with the media processing pipeline. At least one other of the media processing paths includes a media processing pipeline which is out-of-process with respect to the application. The application can specify a custom plug-in presenter module to be set in either the in-process media processing pipeline or the out-of-process media processing pipeline. The application need not be “aware” of the pipeline that is being used, whether the pipeline is in-process or out-of-process, or the security level that is applied to the media processing pipeline. Both the in-process and the out-of-process media processing pipelines can supply media information to a presentation processor, such as a compositing engine.
    Type: Grant
    Filed: January 28, 2011
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventors: Gareth Howell, Thobias M. Jones, Nishad Mulye, Gurpratap Virdi
  • Publication number: 20110128290
    Abstract: A media processing framework includes multiple media processing paths. At least one of the media processing paths includes a media processing pipeline which is in-process with respect to an application which interacts with the media processing pipeline. At least one other of the media processing paths includes a media processing pipeline which is out-of-process with respect to the application. The application can specify a custom plug-in presenter module to be set in either the in-process media processing pipeline or the out-of-process media processing pipeline. The application need not be “aware” of the pipeline that is being used, whether the pipeline is in-process or out-of-process, or the security level that is applied to the media processing pipeline. Both the in-process and the out-of-process media processing pipelines can supply media information to a presentation processor, such as a compositing engine.
    Type: Application
    Filed: January 28, 2011
    Publication date: June 2, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Gareth Howell, Thobias M. Jones, Nishad Mulye, Gurpratap Virdi
  • Patent number: 7949775
    Abstract: The present disclosure relates to playback of video/audio streaming media data to provide a glitch-free experience. The system adapts the media stream to the user connection in order to provide the glitch-free experience. Stream selection can be made using a heuristics module located on the playback device that analyzes various aspects of the playback to make intelligent decisions about which media stream to download from a network.
    Type: Grant
    Filed: August 7, 2008
    Date of Patent: May 24, 2011
    Assignee: Microsoft Corporation
    Inventors: Gurpratap Virdi, Andres Vega-Garcia, Serge Smirnov, Wenbo Zhang, Eldar Musayev
  • Patent number: 7925774
    Abstract: The present disclosure relates to playback of video/audio streaming media data to provide a substantially glitch-free experience. The system adapts the media stream to the user connection in order to choose the most desirable stream to avoid glitches. For example, in the case where there is interference (e.g., a microwave being used near a wireless device), the quality of the media stream is lowered. In one embodiment, an index file is used to make logical decisions about which media stream to choose in order to minimize glitches. The index file can take different forms, but, generally, includes characteristics about the available media streams. Example characteristics include the bit rates of the media streams and quality information about the media streams.
    Type: Grant
    Filed: August 7, 2008
    Date of Patent: April 12, 2011
    Assignee: Microsoft Corporation
    Inventors: Wenbo Zhang, Serge Smirnov, Kishore Kotteri, Gurpratap Virdi, Eldar Musayev, Florin Folta
  • Patent number: 7903117
    Abstract: A media processing framework includes multiple media processing paths. At least one of the media processing paths includes a media processing pipeline which is in-process with respect to an application which interacts with the media processing pipeline. At least one other of the media processing paths includes a media processing pipeline which is out-of-process with respect to the application. The application can specify a custom plug-in presenter module to be set in either the in-process media processing pipeline or the out-of-process media processing pipeline. The application need not be “aware” of the pipeline that is being used, whether the pipeline is in-process or out-of-process, or the security level that is applied to the media processing pipeline. Both the in-process and the out-of-process media processing pipelines can supply media information to a presentation processor, such as a compositing engine.
    Type: Grant
    Filed: July 11, 2005
    Date of Patent: March 8, 2011
    Assignee: Microsoft Corporation
    Inventors: Gareth Howell, Thobias M. Jones, Nishad Mulye, Gurpratap Virdi
  • Patent number: 7878907
    Abstract: Program code enabling the streaming of HD content in real-time to a game console is stored on a storage medium remote from the game console. The game console executes software that facilitates transfer of the program code from the remote storage medium to the game console. The program code ensures that sufficient bandwidth exists on a network between the game console and a HD tuner, and enables the streaming of HD content in real-time to the game console.
    Type: Grant
    Filed: May 13, 2005
    Date of Patent: February 1, 2011
    Assignee: Microsoft Corporation
    Inventors: Jeffrey Davis, Todd Bowra, Ashley Speicher, Gurpratap Virdi, Vu Nguyen
  • Patent number: 7860996
    Abstract: The present disclosure relates to playback of video/audio streaming media data with seamless advertisement insertion. A content player monitors playback of the media stream and determines a location to insert an advertisement. The content player pauses downloads of the media stream and begins downloading the advertisement while the media stream continues to be rendered. The advertisement is, consequently, loaded prior to a start time and allows for an instantaneous rendering at an advertisement insertion point in the media stream.
    Type: Grant
    Filed: August 7, 2008
    Date of Patent: December 28, 2010
    Assignee: Microsoft Corporation
    Inventors: Eldar Musayev, Gurpratap Virdi
  • Patent number: 7743183
    Abstract: A client device receives streaming content from a host device. The streaming content is placed in one or more buffers prior to processing. Monitoring as to the capacity and fullness of the buffers is performed at the client device and information is sent to the host device. The host device adjusts the rate or flow of the streaming content based on the information provided by the client device.
    Type: Grant
    Filed: May 23, 2005
    Date of Patent: June 22, 2010
    Assignee: Microsoft Corporation
    Inventors: Gurpratap Virdi, Anders E. Klemets
  • Publication number: 20100135636
    Abstract: Media streaming with smooth fast-forward and rewind is disclosed. One embodiment receives a media stream encoded at a first bit rate over a network connection, and in response to an input to fast-forward or rewind the media stream, the media stream may be retrieved at a second bit rate, and rendered at the second bit rate for fast-forward or rewind playback. By receiving the media stream at multiple bit rates, a media stream may be rendered at increased forward or reverse speeds without dropping frames in the media stream.
    Type: Application
    Filed: December 2, 2008
    Publication date: June 3, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Wenbo Zhang, Gurpratap Virdi