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: 8745498Abstract: 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: GrantFiled: May 27, 2010Date of Patent: June 3, 2014Assignee: Microsoft CorporationInventors: Shafiq Ur Rahman, Sohail Baig Mohammed, Khurshed Mazhar, Kevin P. Larkin, Patrick N. Nelson, Bret P. O'Rourke
-
Patent number: 7941739Abstract: 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: GrantFiled: February 19, 2004Date of Patent: May 10, 2011Assignee: Microsoft CorporationInventors: 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: 7900140Abstract: 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: GrantFiled: December 8, 2003Date of Patent: March 1, 2011Assignee: Microsoft CorporationInventors: 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: 20100332568Abstract: 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: ApplicationFiled: June 26, 2009Publication date: December 30, 2010Inventors: Andrew James Morrison, Rodrigo M. Bomfim, Joshuah Vincent, Patrick N. Nelson, Christopher B. Weare
-
Publication number: 20100325123Abstract: 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: ApplicationFiled: June 17, 2009Publication date: December 23, 2010Applicant: MICROSOFT CORPORATIONInventors: Andrew J. Morrison, Rodrigo M. Bomfim, Joshuah Vincent, Patrick N. Nelson, Christopher B. Weare
-
Patent number: 7827554Abstract: 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: GrantFiled: June 20, 2005Date of Patent: November 2, 2010Assignee: Microsoft CorporationInventors: Alexandre V. Grigorovitch, Gaurav Lochan, Patrick N. Nelson
-
Publication number: 20100235743Abstract: 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: ApplicationFiled: May 27, 2010Publication date: September 16, 2010Applicant: Microsoft CorporationInventors: Shafiq Ur Rahman, Sohail Baig Mohammed, Khurshed Mazhar, Kevin P. Larkin, Patrick N. Nelson, Bret P. O'Rourke
-
Patent number: 7743329Abstract: 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: GrantFiled: June 27, 2003Date of Patent: June 22, 2010Assignee: Microsoft CorporationInventors: Shafiq Ur Rahman, Sohail Baig Mohammed, Khurshed Mazhar, Kevin P. Larkin, Patrick N. Nelson, Bret P. O'Rourke
-
Patent number: 7739715Abstract: 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: GrantFiled: June 24, 2003Date of Patent: June 15, 2010Assignee: Microsoft CorporationInventors: Li-Wei He, Adil Sherwani, Patrick N. Nelson, Richard William Saunders, Jonathan M. Cain, Anders E. Klemets
-
Patent number: 7712108Abstract: 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: GrantFiled: December 8, 2003Date of Patent: May 4, 2010Assignee: Microsoft CorporationInventors: 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: 7669082Abstract: 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: GrantFiled: April 11, 2007Date of Patent: February 23, 2010Inventors: Sumedh N. Barde, Kirt A. Debique, Alexandre V. Grigorovitch, Sohail Baig Mohammed, Patrick N. Nelson, Gurpratap Virdi, Stephen C. Rowe
-
Patent number: 7441020Abstract: 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: GrantFiled: June 27, 2003Date of Patent: October 21, 2008Assignee: Microsoft CorporationInventors: Tedd Dideriksen, James M. Alkove, Patrick N. Nelson, Richard William Saunders
-
Publication number: 20080256539Abstract: 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: ApplicationFiled: April 11, 2007Publication date: October 16, 2008Applicant: Microsoft CorporationInventors: Sumedh N. Barde, Kirt A. Debique, Alexandre V. Grigorovitch, Sohail Baig Mohammed, Patrick N. Nelson, Gurpratap Virdi, Stephen C. Rowe
-
Patent number: 7219308Abstract: 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: GrantFiled: June 21, 2002Date of Patent: May 15, 2007Assignee: Microsoft CorporationInventors: Michael Novak, Jonathan M. Cain, Tedd K. Dideriksen, David M. Nadalin, Patrick N. Nelson
-
Publication number: 20040267899Abstract: 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: ApplicationFiled: June 27, 2003Publication date: December 30, 2004Applicant: MICROSOFT CORPORATIONInventors: Shafiq Ur Rahman, Sohail Baig Mohammed, Khurshed Mazhar, Kevin P. Larkin, Patrick N. Nelson, Bret P. O'Rourke
-
Publication number: 20040267952Abstract: 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: ApplicationFiled: June 24, 2003Publication date: December 30, 2004Inventors: Li-Wei He, Adil Sherwani, Patrick N. Nelson, Richard William Saunders, Jonathan M. Cain, Anders E. Klemets
-
Publication number: 20040267940Abstract: 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: ApplicationFiled: June 27, 2003Publication date: December 30, 2004Applicant: MICROSOFT CORPORATIONInventors: Tedd Dideriksen, James M. Alkove, Patrick N. Nelson, Richard William Saunders
-
Publication number: 20030237043Abstract: 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: ApplicationFiled: June 21, 2002Publication date: December 25, 2003Applicant: Microsoft CorporationInventors: Michael Novak, Jonathan M. Cain, Tedd K. Dideriksen, David M. Nadalin, Patrick N. Nelson