Patents by Inventor Patrick N. Nelson

Patrick N. Nelson 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: 8745498
    Abstract: An exemplary system includes a media control operable to begin playing a media segment automatically after buffering the media segment, and a host application operable to receive a reference to the media segment, initialize the media control with the media segment, and cause the media control to postpone playing of the media segment after the media segment is buffered. An exemplary method includes receiving a playlist referencing a first media segment and a second media segment, the second media segment operable to play automatically without a prompt after being loaded, presenting the first media segment, and prerolling the second media segment.
    Type: Grant
    Filed: May 27, 2010
    Date of Patent: June 3, 2014
    Assignee: Microsoft Corporation
    Inventors: Shafiq Ur Rahman, Sohail Baig Mohammed, Khurshed Mazhar, Kevin P. Larkin, Patrick N. Nelson, Bret P. O'Rourke
  • Patent number: 7941739
    Abstract: A timeline source is described. In an implementation, a method includes examining a plurality of nodes within a media timeline, where at least two of the nodes reference respective media. The media timeline is for exposure over an API. The media timeline is divided into one or more presentations. Each presentation describes rendering of the media for a particular interval of time.
    Type: Grant
    Filed: February 19, 2004
    Date of Patent: May 10, 2011
    Assignee: Microsoft Corporation
    Inventors: Sohail Baig Mohammed, Shafiq Ur Rahman, Alexandre V. Grigorovitch, Xiqiang Zhi, Adil Sherwani, Geoffrey T. Dunbar, Rebecca C. Weiss, Kirt A. Debique, Patrick N. Nelson, Eric H. Rudolph
  • Patent number: 7900140
    Abstract: Media processing methods, systems and application program interfaces (APIs) are described. In but one embodiment, a media engine component, also referred to as a media engine, provides a simple and unified way of rendering media from an origin to a destination of choice without requiring intimate knowledge about the underlying components, their connectivity and management. Clients of the media engine need not worry about how to render the particular media, but rather can simply focus on what media to render and where to render the media. In at least one embodiment, a media session is provided and is used by the media engine and provides a mechanism by which additional components are made transparent to the application and, in at least some embodiment, the media engine. In some embodiments, the media engine and media session provide a simple API for building, configuring, and manipulating a pipeline of components (e.g.
    Type: Grant
    Filed: December 8, 2003
    Date of Patent: March 1, 2011
    Assignee: Microsoft Corporation
    Inventors: Sohail Baig Mohammed, Kirt A. Debique, Geoffrey T. Dunbar, Patrick N. Nelson, Rebecca C. Weiss, Sumedh N. Barde, Adil Sherwani, Robin C. B. Speed, Alexandre V. Grigorovitch
  • Publication number: 20100332568
    Abstract: Media playlist techniques are described. In an implementation, a communication is formed, for transmission via a network to a media provider, to request data that describes media that is available for streaming from the media provider. The playlist is created based at least in part on media that is available locally on the computer and the data received from the media provider such that the playlist references one or more of the media that are available for streaming from the media provider.
    Type: Application
    Filed: June 26, 2009
    Publication date: December 30, 2010
    Inventors: Andrew James Morrison, Rodrigo M. Bomfim, Joshuah Vincent, Patrick N. Nelson, Christopher B. Weare
  • Publication number: 20100325123
    Abstract: Media recommendation techniques are described. In an implementation, a similarity value is calculated for a plurality of media using a plurality of similarity functions. A vote is assigned for each similarity value that is above a threshold that is assigned for a respective similarity function and the plurality of media is ranked based at least in part on the assigned votes. A playlist is then created based at least in part on the ranking. Media seed techniques are also described. In an implementation, a set of dissimilar candidates are calculated for a plurality of media using a similarity function in which the set of dissimilar candidates describes the media that is dissimilar in comparison with other media included in the plurality of media. A seed is selected using the set of the dissimilar candidates to create a playlist that includes at least some of the plurality of media.
    Type: Application
    Filed: June 17, 2009
    Publication date: December 23, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Andrew J. Morrison, Rodrigo M. Bomfim, Joshuah Vincent, Patrick N. Nelson, Christopher B. Weare
  • Patent number: 7827554
    Abstract: Systems and/or methods are described that enable multi-threaded multimedia processing. These systems and/or methods may, in some embodiments, allocate threads for components of a multimedia pipeline based on input/output characteristics of the components. These systems and/or methods may also allocate threads and priorities for those threads based on a relative importance given components of two or more multimedia pipelines.
    Type: Grant
    Filed: June 20, 2005
    Date of Patent: November 2, 2010
    Assignee: Microsoft Corporation
    Inventors: Alexandre V. Grigorovitch, Gaurav Lochan, Patrick N. Nelson
  • Publication number: 20100235743
    Abstract: An exemplary system includes a media control operable to begin playing a media segment automatically after buffering the media segment, and a host application operable to receive a reference to the media segment, initialize the media control with the media segment, and cause the media control to postpone playing of the media segment after the media segment is buffered. An exemplary method includes receiving a playlist referencing a first media segment and a second media segment, the second media segment operable to play automatically without a prompt after being loaded, presenting the first media segment, and prerolling the second media segment.
    Type: Application
    Filed: May 27, 2010
    Publication date: September 16, 2010
    Applicant: Microsoft Corporation
    Inventors: Shafiq Ur Rahman, Sohail Baig Mohammed, Khurshed Mazhar, Kevin P. Larkin, Patrick N. Nelson, Bret P. O'Rourke
  • Patent number: 7743329
    Abstract: Incorporating interactive media into a playlist allows for media, operable to play automatically without a prompt after being loaded, to be loaded into a playlist and played from the playlist without overlapping playback with other media in the playlist. Incorporating interactive media into a playlist involves employing a playlist, a media wrapper, a media control, and a media player to preroll media, immediately stop playing the prerolled media while other media is playing, signal that media has finished playing in order to seamlessly begin playing the next media in the playlist.
    Type: Grant
    Filed: June 27, 2003
    Date of Patent: June 22, 2010
    Assignee: Microsoft Corporation
    Inventors: Shafiq Ur Rahman, Sohail Baig Mohammed, Khurshed Mazhar, Kevin P. Larkin, Patrick N. Nelson, Bret P. O'Rourke
  • Patent number: 7739715
    Abstract: Systems and methods are described that support variable play speed control for media streams. The variable play speed control for media streams discussed herein provides an end-to-end solution for media stream delivery, playback, and user interface that enables end users and software developers to dynamically control the playback speed of media streams without losing the ability to comprehend the media content.
    Type: Grant
    Filed: June 24, 2003
    Date of Patent: June 15, 2010
    Assignee: Microsoft Corporation
    Inventors: Li-Wei He, Adil Sherwani, Patrick N. Nelson, Richard William Saunders, Jonathan M. Cain, Anders E. Klemets
  • Patent number: 7712108
    Abstract: Media processing methods, systems and application program interfaces (APIs) are described. In but one embodiment, a media engine component, also referred to as a media engine, provides a simple and unified way of rendering media from an origin to a destination of choice without requiring intimate knowledge about the underlying components, their connectivity and management. Clients of the media engine need not worry about how to render the particular media, but rather can simply focus on what media to render and where to render the media. In at least one embodiment, a media session is provided and is encapsulated by the media engine and provides a mechanism by which additional components are made transparent to the application and, in at least some embodiment, the media engine. In some embodiments, the media engine and media session provide a simple API for building, configuring, and manipulating a pipeline of components (e.g.
    Type: Grant
    Filed: December 8, 2003
    Date of Patent: May 4, 2010
    Assignee: Microsoft Corporation
    Inventors: Sohail Baig Mohammed, Kirt A. Debique, Geoffrey T. Dunbar, Patrick N. Nelson, Rebecca C. Weiss, Sumedh N. Barde, Adil Sherwani, Robin C. B. Speed, Alexandre V. Grigorovitch
  • Patent number: 7669082
    Abstract: Techniques for playing a media file in a multimedia application include launching a multimedia application as one process and automatically launching a pipeline of one or more media processing components as one or more isolated processes. In this manner, any untrustworthy components can be executed in an isolated process that is separate from the execution process of the multimedia application, thereby improving fault tolerance and hang resistance.
    Type: Grant
    Filed: April 11, 2007
    Date of Patent: February 23, 2010
    Inventors: Sumedh N. Barde, Kirt A. Debique, Alexandre V. Grigorovitch, Sohail Baig Mohammed, Patrick N. Nelson, Gurpratap Virdi, Stephen C. Rowe
  • Patent number: 7441020
    Abstract: Systems and methods are described for registering a plug-in with a media player and for dynamically loading the plug-in into the media player. When a plug-in is installed for use in the media player, it calls a registration function of the media player. The registration function specifies registration parameters to be provided by the plug-in. The registration function receives the registration parameters passed from the plug-in and stores them in a registry of the operating system in a specified format in the registry that enables the media player to recognize and load the plug-in if called to do so. The media player dynamically loads plug-ins in a manner that provides a seamless media presentation experience for a user.
    Type: Grant
    Filed: June 27, 2003
    Date of Patent: October 21, 2008
    Assignee: Microsoft Corporation
    Inventors: Tedd Dideriksen, James M. Alkove, Patrick N. Nelson, Richard William Saunders
  • Publication number: 20080256539
    Abstract: Techniques for playing a media file in a multimedia application include launching a multimedia application as one process and automatically launching a pipeline of one or more media processing components as one or more isolated processes. In this manner, any untrustworthy components can be executed in an isolated process that is separate from the execution process of the multimedia application, thereby improving fault tolerance and hang resistance.
    Type: Application
    Filed: April 11, 2007
    Publication date: October 16, 2008
    Applicant: Microsoft Corporation
    Inventors: Sumedh N. Barde, Kirt A. Debique, Alexandre V. Grigorovitch, Sohail Baig Mohammed, Patrick N. Nelson, Gurpratap Virdi, Stephen C. Rowe
  • Patent number: 7219308
    Abstract: Methods and system for enhancing user experience when rendering digital media content. Defining a visible region of the window in which a media player user interface (UI) is presented to clip undesirable portions of the window provides an improved media player UI. Further aspects are directed to enhancing user experience when rendering digital media content in full screen presentation mode.
    Type: Grant
    Filed: June 21, 2002
    Date of Patent: May 15, 2007
    Assignee: Microsoft Corporation
    Inventors: Michael Novak, Jonathan M. Cain, Tedd K. Dideriksen, David M. Nadalin, Patrick N. Nelson
  • Publication number: 20040267899
    Abstract: An exemplary system includes a media control operable to begin playing a media segment automatically after buffering the media segment, and a host application operable to receive a reference to the media segment, initialize the media control with the media segment, and cause the media control to postpone playing of the media segment after the media segment is buffered. An exemplary method includes receiving a playlist referencing a first media segment and a second media segment, the second media segment operable to play automatically without a prompt after being loaded, presenting the first media segment, and prerolling the second media segment.
    Type: Application
    Filed: June 27, 2003
    Publication date: December 30, 2004
    Applicant: MICROSOFT CORPORATION
    Inventors: Shafiq Ur Rahman, Sohail Baig Mohammed, Khurshed Mazhar, Kevin P. Larkin, Patrick N. Nelson, Bret P. O'Rourke
  • Publication number: 20040267952
    Abstract: Systems and methods are described that support variable play speed control for media streams. The variable play speed control for media streams discussed herein provides an end-to-end solution for media stream delivery, playback, and user interface that enables end users and software developers to dynamically control the playback speed of media streams without losing the ability to comprehend the media content.
    Type: Application
    Filed: June 24, 2003
    Publication date: December 30, 2004
    Inventors: Li-Wei He, Adil Sherwani, Patrick N. Nelson, Richard William Saunders, Jonathan M. Cain, Anders E. Klemets
  • Publication number: 20040267940
    Abstract: Systems and methods are described for registering a plug-in with a media player and for dynamically loading the plug-in into the media player. When a plug-in is installed for use in the media player, it calls a registration function of the media player. The registration function specifies registration parameters to be provided by the plug-in. The registration function receives the registration parameters passed from the plug-in and stores them in a registry of the operating system in a specified format in the registry that enables the media player to recognize and load the plug-in if called to do so. The media player dynamically loads plug-ins in a manner that provides a seamless media presentation experience for a user.
    Type: Application
    Filed: June 27, 2003
    Publication date: December 30, 2004
    Applicant: MICROSOFT CORPORATION
    Inventors: Tedd Dideriksen, James M. Alkove, Patrick N. Nelson, Richard William Saunders
  • Publication number: 20030237043
    Abstract: Methods and system for enhancing user experience when rendering digital media content. Defining a visible region of the window in which a media player user interface (UI) is presented to clip undesirable portions of the window provides an improved media player UI. Further aspects are directed to enhancing user experience when rendering digital media content in full screen presentation mode.
    Type: Application
    Filed: June 21, 2002
    Publication date: December 25, 2003
    Applicant: Microsoft Corporation
    Inventors: Michael Novak, Jonathan M. Cain, Tedd K. Dideriksen, David M. Nadalin, Patrick N. Nelson