Patents by Inventor Donald J Munsil
Donald J Munsil 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: 8654842Abstract: A video encoding acceleration service to increase one or more of the speed and quality of video encoding is described. The service acts as an intermediary between an arbitrary video encoder computer program application and arbitrary video acceleration hardware. The service receives one or more queries from the video encoder to identify implementation specifics of the video acceleration hardware. The service interfaces with the video acceleration hardware to obtain the implementation specifics. The service communicates the implementation specifics to the video encoder. The implementation specifics enable the video encoder to: (a) determine whether one or more of speed and quality of software encoding operations associated with the video encoder can be increased with implementation of a pipeline of one or more supported encoding pipeline configurations and capabilities, and (b) implement the pipeline by interfacing with the service.Type: GrantFiled: February 9, 2007Date of Patent: February 18, 2014Assignee: Microsoft CorporationInventors: Anand Ganesh, Donald J. Munsil, Gary J. Sullivan, Glenn F. Evans, Shyam Sadhwani, Stephen J. Estrop
-
Patent number: 7929599Abstract: A video encoding acceleration service to increase one or more of the speed and quality of video encoding is described. The service acts as an intermediary between an arbitrary video encoder computer program application and arbitrary video acceleration hardware. The service receives one or more queries from the video encoder to identify implementation specifics of the video acceleration hardware. The service interfaces with the video acceleration hardware to obtain the implementation specifics. The service communicates the implementation specifics to the video encoder. The implementation specifics enable the video encoder to: (a) determine whether one or more of speed and quality of software encoding operations associated with the video encoder can be increased with implementation of a pipeline of one or more supported encoding pipeline configurations and capabilities, and (b) implement the pipeline by interfacing with the service.Type: GrantFiled: February 24, 2006Date of Patent: April 19, 2011Assignee: Microsoft CorporationInventors: Anand Ganesh, Donald J Munsil, Gary J. Sullivan, Glenn F. Evans, Shyam Sadhwani, Stephen J. Estrop
-
Patent number: 7561206Abstract: Whether interlaced video fields form a progressive video frame can be automatically determined. The presence or absence of a first characteristic of one or more video fields can be determined by analysis of the fields and/or related information such as flags, cadence, previous determinations, and others. Similarly, the presence or absence of a second characteristic can be detected. In accordance with the detecting, how likely or whether the two or more video fields form a progressive video frame can be determined based on a possibly predetermined likelihood that fields of progressive video frames in general have or do not have the first characteristic and based on a possibly predetermined likelihood that fields of interlaced video frames in general have or do not have the second characteristic.Type: GrantFiled: June 29, 2005Date of Patent: July 14, 2009Assignee: Microsoft CorporationInventors: Donald J. Munsil, Stacey Spears
-
Patent number: 7529775Abstract: A standard reporting schema to represent applications and other information on a computer in a hierarchical manner, such as via an XML (extensible markup language) file. An agent or engine is provided to inventory a computer for installed applications or services and to output a report, or log file, conforming to the schema standard. A calculation may be performed on a subset of attributes stored in the log file for an application or a service so as generate a signature representing the subset. The signature may be stored with the log file, and may be accessed quickly in a database to determine whether or not the application is a particular application, or, if more particular resources are defined, to determine more specific information, such as whether the application is a particular version or run of the application.Type: GrantFiled: August 20, 2003Date of Patent: May 5, 2009Assignee: Microsoft CorporationInventors: Vadim Bluvshteyn, Michael Sciacqua, Donald J. Munsil, Corneliu Lupu, Maoni Stephens, Mark S. Carroll, Steven S. Heinz
-
Patent number: 7400762Abstract: Strategies are set forth for performing a scaling operation on image information using a filter. According to one exemplary implementation, the strategies involve: computing, based on scaling to be performed, a number of filter kernels required to implement the filter and a number of taps required for each filter kernel; pre-computing and storing the number of filter kernels; and applying the filter kernels to a row or column of the image information by repeatedly sequencing through the filter kernels if there are more pixel elements in the row or column than there are pre-calculated filter kernels. The scaling operation can employ a Catmull-Rom filter. Further, the scaling operations can be implemented by a pixel shader by assigning weighting information and delta-shifted versions of the image information to respective texture units of the pixel shader.Type: GrantFiled: March 14, 2006Date of Patent: July 15, 2008Assignee: Microsoft CorporationInventors: Donald J. Munsil, Glenn F. Evans, Stacey L. Spears
-
Patent number: 7317827Abstract: Strategies are set forth herein for generating customized code used to implement an image processing pipeline. According to one exemplary implementation, the strategies involve: providing a master transformation which maps a plurality of kinds of image input information to a plurality of kinds of image output information using a plurality of kinds of intermediary processing operations; receiving requirements of the image processing pipeline; and assembling code modules from a library of code modules by selecting components in the master transformation which satisfy the received requirements, while omitting other components in the master transformation. The strategies are advantageous because they produce code that is more tailored to a specific image processing environment, which may result in code that executes in an efficient manner.Type: GrantFiled: March 14, 2006Date of Patent: January 8, 2008Assignee: Microsoft CorporationInventor: Donald J. Munsil
-
Patent number: 7308151Abstract: Strategies are set forth herein for quantizing and dithering original image information to produce quantized image information. According to one exemplary implementation, the strategies involve: quantizing a sum that combines an original value taken from the original image information, a noise value, and an error term, to produce a quantized value; and calculating an error term for a subsequent quantizing operation by computing a difference between the quantized value and the original value. By virtue of his process, the strategies essentially add noise information to the quantization process, not the original image information, which results in quantized image information having reduced artifacts. The strategies can be used in conjunction with the Floyd-Steinberg error dispersion algorithm. According to another feature, the noise value is computed using a random number generator having a long repeat period, which further reduces artifacts.Type: GrantFiled: March 14, 2006Date of Patent: December 11, 2007Assignee: Microsoft CorporationInventors: Donald J. Munsil, Glenn F. Evans, Stacey L. Spears
-
Publication number: 20070201562Abstract: A video encoding acceleration service to increase one or more of the speed and quality of video encoding is described. The service acts as an intermediary between an arbitrary video encoder computer program application and arbitrary video acceleration hardware. The service receives one or more queries from the video encoder to identify implementation specifics of the video acceleration hardware. The service interfaces with the video acceleration hardware to obtain the implementation specifics. The service communicates the implementation specifics to the video encoder. The implementation specifics enable the video encoder to: (a) determine whether one or more of speed and quality of software encoding operations associated with the video encoder can be increased with implementation of a pipeline of one or more supported encoding pipeline configurations and capabilities, and (b) implement the pipeline by interfacing with the service.Type: ApplicationFiled: February 9, 2007Publication date: August 30, 2007Applicant: Microsoft CorporationInventors: Anand Ganesh, Donald J. Munsil, Gary J. Sullivan, Glenn F. Evans, Shyam Sadhwani, Stephen J. Estrop
-
Patent number: 7191436Abstract: A program modification database and method for identifying a candidate entry within the correction database for a particular executable program are disclosed. The program modification database provides a general depository of program changes, referred to herein as substitute program segments, and a set of executable program entries containing program matching criteria and corresponding program changes. The program modification database includes an index. Each entry in the index includes a piece of identifying information for a referenced, corresponding executable program entry. The program modification database architecture is applicable to any type of program segment information for modifying either instruction code or data values within a program.Type: GrantFiled: March 8, 2001Date of Patent: March 13, 2007Assignee: Microsoft CorporationInventors: Philip G Durr, Donald J Munsil, Mark P Derbecker, Lindsay W Steventon
-
Patent number: 7158668Abstract: Strategies are described for processing image information in a linear form to reduce the amount of artifacts (compared to processing the data in nonlinear form). Exemplary types of processing operations can include, scaling, compositing, alpha-blending, edge detection, and so forth. In a more specific implementation, strategies are described for processing image information that is: a) linear; b) in the RGB color space; c) high precision (e.g., provided by floating point representation); d) progressive; and e) full channel. Other improvements provide strategies for: a) processing image information in a pseudo-linear space to improve processing speed; b) implementing an improved error dispersion technique; c) dynamically calculating and applying filter kernels; d) producing pipeline code in an optimal manner; and e) implementing various processing tasks using novel pixel shader techniques.Type: GrantFiled: November 12, 2004Date of Patent: January 2, 2007Assignee: Microsoft CorporationInventors: Donald J. Munsil, Glenn F. Evans, Stacey L. Spears
-
Patent number: 7055146Abstract: A system and method are for inserting modifications into an executable program at the time an operating system loads the executable program for execution. The system includes a program modification database that provides a general depository of program changes in the form of substitute APIs and direct program patches. The system further comprises a program loader routine that identifies an entry in the program modification database corresponding to a program selected for execution on a computer system. The loader routine incorporates changes identified in the database entry associated with the selected program into a program segment (e.g., API) substitution table. After constructing the substitution table, each table entry includes a called API reference (e.g., its handle or address) and a reference to a substitute API.Type: GrantFiled: March 8, 2001Date of Patent: May 30, 2006Assignee: Microsoft CorporationInventors: Philip G Durr, Donald J Munsil, Mark P Derbecker, Lindsay W Steventon
-
Publication number: 20030167463Abstract: A method, system, and computer-readable medium are provided for creating and dynamically applying a custom application-compatibility fix. A custom database is created for an application that is incompatible with an operating system. The custom database is capable of storing an operating system-provided compatibility fix and an operating system-provided compatibility mode. The operating system-provided compatibility mode is a set of operating system-provided compatibility fixes. A request is received to launch an application. A determination is made as to whether or not there is a custom database for the application to be launched. If there is a custom database for the application to be launched, the operating system-provided compatibility fixes in the custom database are added to a list of compatibility fixes for the application. The listed compatibility fixes are dynamically applied to the requested application and the requested application is launched.Type: ApplicationFiled: March 1, 2002Publication date: September 4, 2003Applicant: Microsft CorporationInventors: Donald J. Munsil, Corneliu I. Lupu, Lindsay William Steventon, Mark Derbecker
-
Patent number: 5586241Abstract: A method and system for parametrically generating characters and fonts. A font generation system is run on a computer and allows a user to create a Terafont binary file, which includes a set of universal font generation rules that are applied to generating fonts consistent with a common type of alphabet, and parametric data files, each of which specify a particular font. The user can create a new font, or replicate an existing font. The parametric data are distributed as files or embedded in documents. One or more characters of a font are generated using a font engine that executes the Terafont binary file on a computer using the parametric data specifying that font as an input. The parametric data provided to the font engine at least include a minimal set of font measurement data, such as a PANOSE.TM. number, which are used to compute global variables representing typographic characteristics common to many--if not all--of the glyphs in the font.Type: GrantFiled: June 10, 1993Date of Patent: December 17, 1996Assignee: Hewlett-Packard CompanyInventors: Benjamin P. Bauermeister, Clyde D. McQueen, III, Michael S. DeLaurentis, Paul M. Higinbotham, Daniel E. Lipkie, Donald J. Munsil, Raymond G. Beausoleil