Patents by Inventor Stephen J. Estrop
Stephen J. Estrop 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).
-
Publication number: 20090327344Abstract: Techniques are provided to allow developers to use a unified application programming interface to access multimedia data from different containers and in different formats.Type: ApplicationFiled: June 26, 2008Publication date: December 31, 2009Applicant: MICROSOFT CORPORATIONInventors: Matthew C. Howard, Stephen J. Estrop
-
Patent number: 7639265Abstract: Techniques and tools for representing pixel data in a video processing or capture system are described. Described techniques and tools provide efficient color representation for video processing and capture, and provide flexibility for representing colors using different bit precisions and memory layouts. Described techniques and tools include video formats that can be used, for example, in hardware or software for capture, processing, and display purposes. In one aspect, chroma and luma information for a pixel in a video image is represented in a 16-bit fixed-point block of data having an integer and fractional components. Data can be easily converted from one representation to another (e.g., between 16-bit and 10-bit representations). In other aspects, formats for representing 8-, 10- and 16-bit video image data (e.g., packed and hybrid planar formats), and codes for indicating the formats, are described.Type: GrantFiled: September 6, 2007Date of Patent: December 29, 2009Assignee: Microsoft CorporationInventors: Glenn F. Evans, Stephen J. Estrop
-
Publication number: 20090168805Abstract: Methods and systems provide approaches to start code emulation prevention at a granularity higher than the bit level. By operating at a level other than the bit level, processing capability requirements on both the encoder and decoder side can be reduced. In accordance with one or more embodiments, a start code emulation prevention method looks for data patterns relative to fixed-size data portions larger than single bits. When a particular pattern is found, start code emulation prevention data is inserted to prevent start code emulation. The inserted data is larger than a single bit and, in some embodiments, comprises a byte. When a decoder decodes data that has had start code emulation prevention data inserted, it can easily identify legitimate start codes and then can remove the start code emulation prevention data to provide the original data that was protected.Type: ApplicationFiled: March 6, 2009Publication date: July 2, 2009Applicant: Microsoft CorporationInventors: Gary J. Sullivan, Stephen J. Estrop
-
Patent number: 7548245Abstract: Techniques and tools for representing pixel data in a video processing or capture system are described. Described techniques and tools provide efficient color representation for video processing and capture, and provide flexibility for representing colors using different bit precisions and memory layouts. Described techniques and tools include video formats that can be used, for example, in hardware or software for capture, processing, and display purposes. In one aspect, chroma and luma information for a pixel in a video image is represented in a 16-bit fixed-point block of data having an integer and fractional components. Data can be easily converted from one representation to another (e.g., between 16-bit and 10-bit representations). In other aspects, formats for representing 8-, 10- and 16-bit video image data (e.g., packed and hybrid planar formats), and codes for indicating the formats, are described.Type: GrantFiled: September 6, 2007Date of Patent: June 16, 2009Assignee: Microsoft CorporationInventors: Glenn F. Evans, Stephen J. Estrop
-
Patent number: 7505485Abstract: Methods and systems provide approaches to start code emulation prevention at a granularity higher than the bit level. By operating at a level other than the bit level, processing capability requirements on both the encoder and decoder side can be reduced. In accordance with one or more embodiments, a start code emulation prevention method looks for data patterns relative to fixed-size data portions larger than single bits. When a particular pattern is found, start code emulation prevention data is inserted to prevent start code emulation. The inserted data is larger than a single bit and, in some embodiments, comprises a byte. When a decoder decodes data that has had start code emulation prevention data inserted, it can easily identify legitimate start codes and then can remove the start code emulation prevention data to provide the original data that was protected.Type: GrantFiled: January 22, 2003Date of Patent: March 17, 2009Assignee: Microsoft CorporationInventors: Gary J. Sullivan, Stephen J. Estrop
-
Publication number: 20090031328Abstract: Facilitating interaction may be enabled through communication protocols and/or APIs that permit information regarding image processing capabilities of associated graphics hardware to be exchanged between graphics device drivers and video renders. In a first exemplary media implementation, electronically-executable instructions thereof for a video renderer precipitate actions including: issuing a query from a video render towards a graphics device driver, the query requesting information relating to process amplifier (ProcAmp) capabilities; and receiving a response at the video renderer from the graphics device driver, the response including the requested information relating to ProcAmp capabilities.Type: ApplicationFiled: October 8, 2008Publication date: January 29, 2009Applicant: Microsoft CorporationInventor: Stephen J. Estrop
-
Patent number: 7477264Abstract: Compositing functionality is provided in the form of an application program interface (API) that applications can utilize to composite images on video data that is to be rendered. In at least some embodiments, this functionality is exposed in a multimedia pipeline towards the end of the multimedia pipeline, such as at or by a renderer component. A set of methods exposed by the API permit an application to create and manage image compositing.Type: GrantFiled: August 12, 2005Date of Patent: January 13, 2009Assignee: Microsoft CorporationInventors: Alexandre V. Grigorovitch, Jay Senior, Jonathan M. Cain, Gurpratap Virdi, Sohail Baig Mohammed, Kirt A. Debique, Gareth Howell, Tim Cowley, Miguel M. Valdez, Stephen J. Estrop
-
Patent number: 7451457Abstract: Facilitating interaction may be enabled through communication protocols and/or APIs that permit information regarding image processing capabilities of associated graphics hardware to be exchanged between graphics device drivers and video renders. In a first exemplary media implementation, electronically-executable instructions thereof for a video renderer precipitate actions including: issuing a query from a video render towards a graphics device driver, the query requesting information relating to process amplifier (ProcAmp) capabilities; and receiving a response at the video renderer from the graphics device driver, the response including the requested information relating to ProcAmp capabilities.Type: GrantFiled: March 25, 2003Date of Patent: November 11, 2008Assignee: Microsoft CorporationInventor: Stephen J. Estrop
-
Patent number: 7315307Abstract: Disclosed are methods and systems that allow video applications to merge their outputs for display and to transform the outputs of other applications before display. A graphics arbiter tells applications the estimated time when the next frame will be displayed on a display screen. Applications tailor their output to the estimated display time. When output from a first application is incorporated into a scene produced by a second application, the graphics arbiter “offsets” the estimated display time it gives to the first application in order to compensate for the latency caused by the second application's processing of the first application's output. A set of overlay buffers parallels the traditional buffers used to prepare frames for the display screen. In composing a frame, the screen merges video information from a traditional buffer with that from an overlay buffer, conserving display resources at the final point in the display composition process.Type: GrantFiled: May 20, 2004Date of Patent: January 1, 2008Assignee: Microsoft CorporationInventors: Nicholas P. Wilt, Stephen J. Estrop, Colin D. McCartney
-
Patent number: 7315308Abstract: Disclosed are methods and systems that allow video applications to merge their outputs for display and to transform the outputs of other applications before display. A graphics arbiter tells applications the estimated time when the next frame will be displayed on a display screen. Applications tailor their output to the estimated display time. When output from a first application is incorporated into a scene produced by a second application, the graphics arbiter “offsets” the estimated display time it gives to the first application in order to compensate for the latency caused by the second application's processing of the first application's output. A set of overlay buffers parallels the traditional buffers used to prepare frames for the display screen. In composing a frame, the screen merges video information from a traditional buffer with that from an overlay buffer, conserving display resources at the final point in the display composition process.Type: GrantFiled: May 21, 2004Date of Patent: January 1, 2008Assignee: Microsoft CorporationInventors: Nicholas P. Wilt, Stephen J. Estrop, Colin D. McCartney
-
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: 7259779Abstract: Assessment of de-interlaced video quality is determined automatically by de-interlacing interlaced video content using a reference de-interlacer and a test de-interlacer. The reference de-interlacer produces a result of known quality and the test de-interlacer is one which is being assessed. The result from each de-interlacer is compared to reference video content to derive a signal-to-noise ratio for each relative to the reference video content. The difference in the signal-to-noise ratios is compared against a predefined threshold. If the difference is within the range defined by the threshold, the test de-interlacer is determined to produce an acceptable product.Type: GrantFiled: August 13, 2004Date of Patent: August 21, 2007Assignee: Microsoft CorporationInventors: Dragos C Avadanei, Stephen C Rowe, Stephen J Estrop, Gary J Sullivan
-
Patent number: 7239324Abstract: Disclosed are methods and systems that allow video applications to merge their outputs for display and to transform the outputs of other applications before display. A graphics arbiter tells applications the estimated time when the next frame will be displayed on a display screen. Applications tailor their output to the estimated display time. When output from a first application is incorporated into a scene produced by a second application, the graphics arbiter “offsets” the estimated display time it gives to the first application in order to compensate for the latency caused by the second application's processing of the first application's output. A set of overlay buffers parallels the traditional buffers used to prepare frames for the display screen. In composing a frame, the screen merges video information from a traditional buffer with that from an overlay buffer, conserving display resources at the final point in the display composition process.Type: GrantFiled: February 15, 2002Date of Patent: July 3, 2007Assignee: Microsoft CorporationInventors: Nicholas P. Wilt, Stephen J. Estrop, Colin D. McCartney
-
Patent number: 7224368Abstract: Systems and methods to render tear free video in a multitasking operating environment are described. In one aspect, a video playback window portion of a desktop display is divided into non-overlapping first and second partitions. As video data is scanned into display memory which maps to the first and second partitions, current scan line input positions are monitored. Responsive to determining that the current scan line position is located in display memory associated with the second partition, display memory mapped to the second partition is not rendered and display memory mapped to the first partition is rendered into the video playback window.Type: GrantFiled: December 10, 2003Date of Patent: May 29, 2007Assignee: Microsoft CorporationInventors: Stephen J. Estrop, Joseph C. Ballantyne
-
Patent number: 7219352Abstract: Methods and apparatuses are provided for facilitating processing of interlaced video images for progressive video displays. In accordance with certain exemplary implementations, a method includes receiving from a renderer a query for a graphics device driver as to at least one graphics processing capability that can be performed by an associated graphics device in de-interlacing video data, communicating the query to the graphics device driver, receiving from the graphics device driver a response to the query that identifies the graphics processing capability/capabilities to the renderer, and communicating the response to the renderer.Type: GrantFiled: October 18, 2002Date of Patent: May 15, 2007Assignee: Microsoft CorporationInventor: Stephen J. Estrop
-
Patent number: 7139002Abstract: A technique is described for performing multiple video processing tasks in a single operation, as opposed to serially. For instance, a technique is described for de-interlacing a principal video stream at the same time that at least one video sub-stream is combined with the principal video stream. Performing these tasks in a single call to a graphics processing unit, as opposed to staggered serial calls, reduces the bandwidth requirements of the processing operations. This, in turn, can enable a computing device to perform these multiple operations at full frame rate. In one implementation, different texturing units are respectively assigned to the principal video stream and the video sub-stream. The graphics processing unit interacts with these texturing units and associated memory locations substantially in parallel, thus providing the above-described bandwidth savings.Type: GrantFiled: October 27, 2003Date of Patent: November 21, 2006Assignee: Microsoft CorporationInventor: Stephen J. Estrop
-
Patent number: 6933954Abstract: An image of a first aspect ratio is modified to be displayed in a display area with a second aspect ratio. In doing so, the aspect ratio of some of the image content is approximately maintained, yet the aspect ratio of other areas of the image content is stretched so that the entire resulting image fills the display area. This may be done by either using texture mapping to map a strip of content (treated as a texture) into a strip of the destination image. It may also be done by modifying the image content to an intermediate image, which is then uniformly stretched to fill the intended aspect ratio. The areas of image content closest to one or more focus areas is approximately maintained, while other areas are allowed more distortion.Type: GrantFiled: October 31, 2003Date of Patent: August 23, 2005Assignee: Microsoft CorporationInventors: Jay Senior, Stephen J. Estrop
-
Publication number: 20040217960Abstract: Disclosed are methods and systems that allow video applications to merge their outputs for display and to transform the outputs of other applications before display. A graphics arbiter tells applications the estimated time when the next frame will be displayed on a display screen. Applications tailor their output to the estimated display time. When output from a first application is incorporated into a scene produced by a second application, the graphics arbiter “offsets” the estimated display time it gives to the first application in order to compensate for the latency caused by the second application's processing of the first application's output. A set of overlay buffers parallels the traditional buffers used to prepare frames for the display screen. In composing a frame, the screen merges video information from a traditional buffer with that from an overlay buffer, conserving display resources at the final point in the display composition process.Type: ApplicationFiled: May 21, 2004Publication date: November 4, 2004Applicant: Microsoft CorporationInventors: Nicholas P. Wilt, Stephen J. Estrop, Colin D. McCartney
-
Publication number: 20040212621Abstract: Disclosed are methods and systems that allow video applications to merge their outputs for display and to transform the outputs of other applications before display. A graphics arbiter tells applications the estimated time when the next frame will be displayed on a display screen. Applications tailor their output to the estimated display time. When output from a first application is incorporated into a scene produced by a second application, the graphics arbiter “offsets” the estimated display time it gives to the first application in order to compensate for the latency caused by the second application's processing of the first application's output. A set of overlay buffers parallels the traditional buffers used to prepare frames for the display screen. In composing a frame, the screen merges video information from a traditional buffer with that from an overlay buffer, conserving display resources at the final point in the display composition process.Type: ApplicationFiled: May 20, 2004Publication date: October 28, 2004Applicant: Microsoft CorporationInventors: Nicholas P. Wilt, Stephen J. Estrop, Colin D. McCartney
-
Publication number: 20030193486Abstract: Methods and apparatuses are provided for facilitating processing of interlaced video images for progressive video displays. In accordance with certain exemplary implementations, a method includes receiving from a renderer a query for a graphics device driver as to at least one graphics processing capability that can be performed by an associated graphics device in de-interlacing video data, communicating the query to the graphics device driver, receiving from the graphics device driver a response to the query that identifies the graphics processing capability/capabilities to the renderer, and communicating the response to the renderer.Type: ApplicationFiled: October 18, 2002Publication date: October 16, 2003Inventor: Stephen J. Estrop