Patents by Inventor Geoffrey Dunbar
Geoffrey Dunbar 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: 8325916Abstract: A stream of content has multiple sub-streams, where each sub-stream comprises a part of the content and is divisible into logical blocks bounded by intrinsic partitions. For each sub-stream, a specification of the logical blocks bounded by the intrinsic partitions is defined and the sub-stream is divided into the logical blocks bounded by the intrinsic partitions. Each divided logical block is encrypted and then divided into one or more portions to produce corresponding pieces of data, and each piece of data is placed into a data packet as a payload thereof. Each data packet is transmitted to a recipient thereof, and the recipient can retrieve the pieces of data from the payloads of the packets, reconstruct the encrypted logical blocks, and manipulate the sub-stream on a per-logical block basis without necessarily decrypting each encrypted logical block.Type: GrantFiled: February 8, 2010Date of Patent: December 4, 2012Assignee: Microsoft CorporationInventors: Eduardo P. Oliveira, Geoffrey Dunbar, James M. Alkove
-
Patent number: 8095985Abstract: In a protected media path for delivering content from a source to a sink, a source authority (SOTA) on behalf of the source decides with regard to a policy corresponding to the content that a particular type of action with the content is to be refused, and provides a particular enabler to an application. The provided enabler includes information and methods necessary for the application to obtain data necessary to respond to the refusal. The application receives the enabler at an interface thereof and the interface applies a common interaction procedure to run the enabler to obtain the data necessary to respond to the refusal.Type: GrantFiled: October 11, 2007Date of Patent: January 10, 2012Assignee: Microsoft CorporationInventors: Geoffrey Dunbar, Chengyun Chu, James M. Alkove
-
Patent number: 7856404Abstract: A method is provided for a computing device to copy (burn) a playlist of tracks to a portable medium, where each track corresponds to a piece of digital content. At least one of the pieces of content is rights-management (RM) protected and accordingly is burned to the portable medium only in accordance with a corresponding digital license.Type: GrantFiled: April 14, 2005Date of Patent: December 21, 2010Assignee: Microsoft CorporationInventors: Brian P. Evans, Clifford P. Strom, Geoffrey Dunbar, Richard D. Prologo
-
Publication number: 20100138647Abstract: A stream of content has multiple sub-streams, where each sub-stream comprises a part of the content and is divisible into logical blocks bounded by intrinsic partitions. For each sub-stream, a specification of the logical blocks bounded by the intrinsic partitions is defined and the sub-stream is divided into the logical blocks bounded by the intrinsic partitions. Each divided logical block is encrypted and then divided into one or more portions to produce corresponding pieces of data, and each piece of data is placed into a data packet as a payload thereof. Each data packet is transmitted to a recipient thereof, and the recipient can retrieve the pieces of data from the payloads of the packets, reconstruct the encrypted logical blocks, and manipulate the sub-stream on a per-logical block basis without necessarily decrypting each encrypted logical block.Type: ApplicationFiled: February 8, 2010Publication date: June 3, 2010Applicant: Microsoft CorporationInventors: Eduardo P. Oliveira, Geoffrey Dunbar, James M. Alkove
-
Patent number: 7684566Abstract: A stream of content has multiple sub-streams, where each sub-stream comprises a part of the content and is divisible into logical blocks bounded by intrinsic partitions. For each sub-stream, a specification of the logical blocks bounded by the intrinsic partitions is defined and the sub-stream is divided into the logical blocks bounded by the intrinsic partitions. Each divided logical block is encrypted and then divided into one or more portions to produce corresponding pieces of data, and each piece of data is placed into a data packet as a payload thereof. Each data packet is transmitted to a recipient thereof, and the recipient can retrieve the pieces of data from the payloads of the packets, reconstruct the encrypted logical blocks, and manipulate the sub-stream on a per-logical block basis without necessarily decrypting each encrypted logical block.Type: GrantFiled: May 27, 2005Date of Patent: March 23, 2010Assignee: Microsoft CorporationInventors: Eduardo P. Oliveira, Geoffrey Dunbar, James M. Alkove
-
Patent number: 7600233Abstract: A flexible interface that enables an application to communicate directly with processing modules to easily control the processing of streaming data. The interface provides basic commands for applications to use to communicate with processing modules and provides the flexibility to adapt to changing standards. The interface enables an application to set the type of input and output data formats of a processing module and control when the processing module processes input data and generates output data. The processing modules enumerate its capabilities by category, by media type, or by both category and media type. Processing modules are registered by class ID, category, whether the application needs a key, the number and types of input data types, and the number and type of output data types to register.Type: GrantFiled: July 22, 2004Date of Patent: October 6, 2009Assignee: Microsoft CorporationInventors: Brian D. Crites, Robin Speed, Geoffrey Dunbar, Serge Smirnov
-
Publication number: 20080092238Abstract: In a protected media path for delivering content from a source to a sink, a source authority (SOTA) on behalf of the source decides with regard to a policy corresponding to the content that a particular type of action with the content is to be refused, and provides a particular enabler to an application. The provided enabler includes information and methods necessary for the application to obtain data necessary to respond to the refusal. The application receives the enabler at an interface thereof and the interface applies a common interaction procedure to run the enabler to obtain the data necessary to respond to the refusal.Type: ApplicationFiled: October 11, 2007Publication date: April 17, 2008Applicant: Microsoft CorporationInventors: Geoffrey Dunbar, Chengyun Chu, James Alkove
-
Patent number: 7296296Abstract: In a protected media path for delivering content from a source to a sink, a source authority (SOTA) on behalf of the source decides with regard to a policy corresponding to the content that a particular type of action with the content is to be refused, and provides a particular enabler to an application. The provided enabler includes information and methods necessary for the application to obtain data necessary to respond to the refusal. The application receives the enabler at an interface thereof and the interface applies a common interaction procedure to run the enabler to obtain the data necessary to respond to the refusal.Type: GrantFiled: April 8, 2004Date of Patent: November 13, 2007Assignee: Microsoft CorporationInventors: Geoffrey Dunbar, Chengyun Chu, James M. Alkove
-
Publication number: 20070185878Abstract: Technology for protecting a digital content including a first content protection system capable of decrypting the digital content, the digital content including an inclusion list; a linkable library providing access for an application to the functionality of the first content protection system, the application including a second content protection system; and a means for evaluating the second content protection system to determine if the second content protection system is on the inclusion list.Type: ApplicationFiled: March 2, 2006Publication date: August 9, 2007Applicant: Microsoft CorporationInventors: Scott Fierstein, Brian Evans, Geoffrey Dunbar, James Alkove, Daniel Rosenstein, Matthew Howard, Ming Ma, Alexandre Grigorovitch
-
Patent number: 7254836Abstract: A computing device has instantiated thereon a protected media path for delivering content from a source to a sink. In the protected media path, a media base provides a protected environment in the computing device and includes a common infrastructure of core components effectuating processing of content from any particular source and delivering the processed content to any particular sink, and also includes a policy engine enforcing policy on behalf of the source. The policy corresponds to the content from the source and includes rules and requirements for accessing and rendering the content, whereby the media base allows content to flow through the computing device in a protected fashion, and allows for arbitrary processing of the protected content in the computing device.Type: GrantFiled: April 8, 2004Date of Patent: August 7, 2007Assignee: Microsoft CorporationInventors: James M. Alkove, Chadd Knowlton, Geoffrey Dunbar
-
Publication number: 20070033420Abstract: The present automatic update mechanism provides a method for determining whether computer-readable components loaded within a memory device are at a level of protection specified for protected content that a media application is attempting to process. If a current level of protection provides lower protection that the level specified, a file is updated to achieve at least the level of protection specified by the protected content. Updating the file to achieve the level of protection is performed in a manner that minimizes rebooting of a computing device.Type: ApplicationFiled: July 19, 2005Publication date: February 8, 2007Applicant: Microsoft CorporationInventors: Adil Sherwani, Pranavakumar Punniamoorthy, Rajesh Deshpande, Sumedh Barde, Geoffrey Dunbar, Reid Kuhn, Clifford Van Dyke
-
Publication number: 20060280301Abstract: A stream of content has multiple sub-streams, where each sub-stream comprises a part of the content and is divisible into logical blocks bounded by intrinsic partitions. For each sub-stream, a specification of the logical blocks bounded by the intrinsic partitions is defined and the sub-stream is divided into the logical blocks bounded by the intrinsic partitions. Each divided logical block is encrypted and then divided into one or more portions to produce corresponding pieces of data, and each piece of data is placed into a data packet as a payload thereof. Each data packet is transmitted to a recipient thereof, and the recipient can retrieve the pieces of data from the payloads of the packets, reconstruct the encrypted logical blocks, and manipulate the sub-stream on a per-logical block basis without necessarily decrypting each encrypted logical block.Type: ApplicationFiled: May 27, 2005Publication date: December 14, 2006Applicant: Microsoft CorporationInventors: Eduardo Oliveira, Geoffrey Dunbar, James Alkove
-
Publication number: 20060248594Abstract: A system for processing a media content comprising an application space, a media control mechanism operating in the application space, the media control mechanism controlling the operation of the system, a user interface adapted to provide input to the media control mechanism, a protected space distinct from the application space, and a protected media pipeline operating in the protected space, the protected media pipeline coupled to the media control mechanism, the protected media pipeline adapted to access the media content, process the media content, and output the media content.Type: ApplicationFiled: April 27, 2005Publication date: November 2, 2006Applicant: Microsoft CorporationInventors: Alexandre Grigorovitch, Chadd Knowlton, Kirt Debique, James Alkove, Geoffrey Dunbar, Sumedh Barde
-
Publication number: 20060242406Abstract: A method of establishing a protected environment within a computing device including validating a kernel component loaded into a kernel of the computing device, establishing a security state for the kernel based on the validation, creating a secure process and loading a software component into the secure process, periodically checking the security state of the kernel, and notifying the secure process when the security state of the kernel has changed.Type: ApplicationFiled: April 27, 2005Publication date: October 26, 2006Applicant: Microsoft CorporationInventors: Sumedh Barde, Jonathan Schwartz, Reid Kuhn, Alexandre Grigorovitch, Kirt Debique, Chadd Knowlton, James Alkove, Geoffrey Dunbar, Michael Grier, Ming Ma, Chaitanya Upadhyay, Adil Sherwani, Arun Kishan
-
Publication number: 20060236219Abstract: A media timeline processing infrastructure is described. In an implementation, one or more computer readable media include computer executable instructs that, when executed, provide an infrastructure having an application programming interface that is configured to accept a plurality of segments from an application for sequential rendering. Each of the segments reference at least one media item for rendering by the infrastructure and each segment is taken from a media timeline by an application.Type: ApplicationFiled: April 19, 2005Publication date: October 19, 2006Applicant: Microsoft CorporationInventors: Alexandre Grigorovitch, Shafiq Rahman, Sohail Mohammed, Geoffrey Dunbar
-
Publication number: 20060235799Abstract: A method is provided for a computing device to copy (burn) a playlist of tracks to a portable medium, where each track corresponds to a piece of digital content. At least one of the pieces of content is rights-management (RM) protected and accordingly is burned to the portable medium only in accordance with a corresponding digital license.Type: ApplicationFiled: April 14, 2005Publication date: October 19, 2006Applicant: Microsoft CorporationInventors: Brian Evans, Clifford Strom, Geoffrey Dunbar, Richard Prologo
-
Publication number: 20060184684Abstract: Systems and methods for processing input media in a computing device are described. In one aspect, a reconstructed frame is cached according to a set of criteria. A request to scrub to a predictive frame of input media is received. Responsive to receiving the request, the predictive frame is decoded starting with the reconstructed frame.Type: ApplicationFiled: December 8, 2003Publication date: August 17, 2006Inventors: Rebecca Weiss, Geoffrey Dunbar, Niranjan Nayak, Sohail Mohammed, Thomas Holcomb, Chih-lung Lin, Olivier Colle, Gareth Howell
-
Publication number: 20050204289Abstract: 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: ApplicationFiled: December 8, 2003Publication date: September 15, 2005Inventors: Sohail Mohammed, Kirt Debique, Geoffrey Dunbar, Patrick Nelson, Rebecca Weiss, Sumedh Barde, Adil Sherwani, Robin Speed, Alexandre Grigorovitch
-
Patent number: 6934954Abstract: A flexible interface that enables an application to communicate directly with processing modules to easily control the processing of streaming data. The interface provides basic commands for applications to use to communicate with processing modules and provides the flexibility to adapt to changing standards. The interface enable an application to set the type of input and output data formats of a processing module and control when the processing module processes input data and generates output data. The processing modules enurmerate its capabilities by category, by media type, or by both category and media type. Processing modules are registered by class ID, category, whether the application needs a key, the number and types of input data types, and the number and type of output data types to register.Type: GrantFiled: July 31, 2000Date of Patent: August 23, 2005Assignee: Microsoft CorporationInventors: Brian D. Crites, Robin Speed, Geoffrey Dunbar, Serge Smirnov
-
Publication number: 20050141861Abstract: A request is received to play compressed video data in a reverse direction. A process identifies a most recent key frame received and decodes the most recent key frame. The process then identifies delta frames received after the most recent key frame and decodes these identified delta frames. The decoded delta frames are then played in the reverse direction. Additionally, compressed audio data can be decoded and played in the reverse direction along with the video data.Type: ApplicationFiled: December 5, 2003Publication date: June 30, 2005Applicant: Microsoft CorporationInventors: Geoffrey Dunbar, Alexandre Grigorovitch, Chih-lung Lin, Wei-Ge Chin, Thomas Holcomb