Patents by Inventor Sudhakar Prabhu
Sudhakar Prabhu 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: 10542291Abstract: An adaptive video noise reduction (AVNR) engine reduces noise in streaming video. The engine reads embedded information in the streaming video describing attributes of the video, such as bit rate, frame rate, resolution, content type and quality of the streaming video. The information may be included in a manifest of the streaming video. Based on the video attributes, the engine outputs one or more input values to applications that reduce noise of the streaming video. The one or more applications may reduce mosquito, block, temporal, random and banding noise of the video in response to the input values from the engine.Type: GrantFiled: February 23, 2018Date of Patent: January 21, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Stacey Spears, Haoyun Wu, Wenbo Zhang, Sudhakar Prabhu
-
Publication number: 20180184129Abstract: An adaptive video noise reduction (AVNR) engine reduces noise in streaming video. The engine reads embedded information in the streaming video describing attributes of the video, such as bit rate, frame rate, resolution, content type and quality of the streaming video. The information may be included in a manifest of the streaming video. Based on the video attributes, the engine outputs one or more input values to applications that reduce noise of the streaming video. The one or more applications may reduce mosquito, block, temporal, random and banding noise of the video in response to the input values from the engine.Type: ApplicationFiled: February 23, 2018Publication date: June 28, 2018Applicant: Microsoft Technology Licensing, LLCInventors: Stacey Spears, Haoyun Wu, Wenbo Zhang, Sudhakar Prabhu
-
Patent number: 10003811Abstract: A graphics pipeline with components that process frames by portions (e.g., pixels or rows) or slices to reduce end-to-end latency. Components of a pipeline process portions of a same frame at the same time. For example, as graphics data for a frame is being generated and fills a framebuffer, once a certain portion of video data less than the whole frame (slice or sub-frame) becomes available, before the corresponding frame is finished filling the framebuffer, the next pipeline component after the framebuffer, for instance a video processor for color conversion or an encoder, begins to process the portion of the frame. While one portion of a frame is accumulating in the frame buffer, another portion of the same frame is being encoded by an encoder, and another portion of the frame might be being packaged by a multiplexer, and a network socket might start streaming the multiplexed portion.Type: GrantFiled: September 1, 2015Date of Patent: June 19, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Shyam Sadhwani, Sudhakar Prabhu, Carol Greenbaum, Saswata Mandal, Yongjun Wu
-
Patent number: 9924200Abstract: An adaptive video noise reduction (AVNR) engine reduces noise in streaming video. The engine reads embedded information in the streaming video describing attributes of the video, such as bit rate, frame rate, resolution, content type and quality of the streaming video. The information may be included in a manifest of the streaming video. Based on the video attributes, the engine outputs one or more input values to applications that reduce noise of the streaming video. The one or more applications may reduce mosquito, block, temporal, random and banding noise of the video in response to the input values from the engine.Type: GrantFiled: January 24, 2013Date of Patent: March 20, 2018Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Stacey Spears, Haoyun Wu, Wenbo Zhang, Sudhakar Prabhu
-
Patent number: 9883194Abstract: In a video processing system including a video decoder, to handle frequent changes in the bit rate of an encoded bitstream, a video decoder can be configured to process a change in bit rates without reinitializing. The video decoder can be configured to reduce memory utilization. The video decoder can be configured both to process a change in bit rate without reinitializing while reducing memory utilization. In one implementation, the video processing system can include an interface between an application running on a host processor and the video decoder which allows the video decoder to communicate with the host application about the configuration of the video decoder.Type: GrantFiled: June 15, 2015Date of Patent: January 30, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Yongjun Wu, Haoyun Wu, Shyam Sadhwani, Sudhakar Prabhu, Glenn Evans
-
Patent number: 9832476Abstract: In a video processing system including a video decoder, to handle frequent changes in the bit rate of an encoded bitstream, a video decoder can be configured to process a change in bit rates without reinitializing. The video decoder can be configured to reduce memory utilization. The video decoder can be configured both to process a change in bit rate without reinitializing while reducing memory utilization. In one implementation, the video processing system can include an interface between an application running on a host processor and the video decoder which allows the video decoder to communicate with the host application about the configuration of the video decoder.Type: GrantFiled: June 15, 2015Date of Patent: November 28, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Yongjun Wu, Haoyun Wu, Shyam Sadhwani, Sudhakar Prabhu, Glenn Evans
-
Publication number: 20170220283Abstract: Techniques and systems for reducing memory usage by a decoder during a format change are disclosed. In a first example technique, discretized memory allocations for new output buffers are sequenced with discretized release operations of previously-allocated memory for previous output buffers in a manner that reduces the amount of in-use memory of a computing device during a format change. In a second example technique, the allocation of new memory for new decoder buffers associated with a new format is conditioned upon the release of previously-allocated memory for decoder buffers associated with a previous format to reduce memory usage during a format change. The first and second techniques, when combined, result in optimized reduction in memory usage by a decoder during a format change.Type: ApplicationFiled: January 29, 2016Publication date: August 3, 2017Inventors: Wenbo Zhang, Shyam Sadhwani, Sudhakar Prabhu, Yongjun Wu
-
Publication number: 20170105010Abstract: A host has a graphics pipeline that process frames by portions (e.g., pixels or rows) or slices. A remote device transmits a video stream container via a network to the host. A frame of the video stream in the container has encoded portions. The graphics pipeline includes a demultiplexer that extracts the portions of the video frame. When a portion has been extracted it is passed to a decoder, which is next in the pipeline. The decoder may begin decoding the portion before receiving a next portion of the frame, possibly while the demultiplexer is demultiplexing the next portion of the frame. A decoded portion of the frame is passed to a renderer which accumulates the portions of the frame and renders the frame. At any time portions of a frame might concurrently be being received, demultiplexed, decoded, and rendered. The decoder may be single-threaded, multi-threaded, or hardware accelerated.Type: ApplicationFiled: October 9, 2015Publication date: April 13, 2017Inventors: Yongjun Wu, Sudhakar Prabhu, Carol Greenbaum, Saswata Mandal, Shyam Sadhwani
-
Publication number: 20170064320Abstract: A graphics pipeline with components that process frames by portions (e.g., pixels or rows) or slices to reduce end-to-end latency. Components of a pipeline process portions of a same frame at the same time. For example, as graphics data for a frame is being generated and fills a framebuffer, once a certain portion of video data less than the whole frame (slice or sub-frame) becomes available, before the corresponding frame is finished filling the framebuffer, the next pipeline component after the framebuffer, for instance a video processor for color conversion or an encoder, begins to process the portion of the frame. While one portion of a frame is accumulating in the frame buffer, another portion of the same frame is being encoded by an encoder, and another portion of the frame might be being packaged by a multiplexer, and a network socket might start streaming the multiplexed portion.Type: ApplicationFiled: September 1, 2015Publication date: March 2, 2017Inventors: Shyam Sadhwani, Sudhakar Prabhu, Carol Greenbaum, Saswata Mandal, Yongjun Wu
-
Publication number: 20170013274Abstract: Embodiments relate to encoding and decoding frames of a video stream. Video frames are encoded as intra-coded frames (Iframes) and predictive coded frames (P/Bframes) and transmitted. When a receiver of the encoded frames is unable to decode a frame, due to transmission problems or otherwise, the encoded video stream can be recovered without requiring a full Iframe to be generated at one time. Instead, intra-coded data is provided by the transmitter in slices. Specifically, frames with only portions of intra-coded data (Islices) are transmitted in sequence until enough intra-coded data is provided to the receiver to recover a frame and resume decoding. The intra-refresh frames may also contain slices predictively encoded (Pslices) based on restricted search spaces of preceding intra-refresh frames.Type: ApplicationFiled: July 9, 2015Publication date: January 12, 2017Inventors: Shyam Sadhwani, Sudhakar Prabhu, Carol Greenbaum, Saswata Mandal, Yongjun Wu
-
Publication number: 20160366430Abstract: In a video processing system including a video decoder, to handle frequent changes in the bit rate of an encoded bitstream, a video decoder can be configured to process a change in bit rates without reinitializing. The video decoder can be configured to reduce memory utilization. The video decoder can be configured both to process a change in bit rate without reinitializing while reducing memory utilization. In one implementation, the video processing system can include an interface between an application running on a host processor and the video decoder which allows the video decoder to communicate with the host application about the configuration of the video decoder.Type: ApplicationFiled: June 15, 2015Publication date: December 15, 2016Inventors: Yongjun Wu, Haoyun Wu, Shyam Sadhwani, Sudhakar Prabhu, Glenn Evans
-
Publication number: 20160366424Abstract: In a video processing system including a video decoder, to handle frequent changes in the bit rate of an encoded bitstream, a video decoder can be configured to process a change in bit rates without reinitializing. The video decoder can be configured to reduce memory utilization. The video decoder can be configured both to process a change in bit rate without reinitializing while reducing memory utilization. In one implementation, the video processing system can include an interface between an application running on a host processor and the video decoder which allows the video decoder to communicate with the host application about the configuration of the video decoder.Type: ApplicationFiled: June 15, 2015Publication date: December 15, 2016Inventors: Yongjun Wu, Haoyun Wu, Shyam Sadhwani, Sudhakar Prabhu, Glenn Evans
-
Publication number: 20140205025Abstract: A method for correcting artifacts in compressed video having interlaced frames may comprise receiving decoded video data, the decoded video data including a frame and metadata corresponding to the frame. The method may further comprise applying a vertical chroma filter to the frame responsive to determining that the metadata indicates that the frame is an interlaced frame.Type: ApplicationFiled: January 22, 2013Publication date: July 24, 2014Applicant: Microsoft CorporationInventors: Stacey Spears, Haoyun Wu, Rui Wu, Sudhakar Prabhu
-
Publication number: 20140204996Abstract: An adaptive video noise reduction (AVNR) engine reduces noise in streaming video. The engine reads embedded information in the streaming video describing attributes of the video, such as bit rate, frame rate, resolution, content type and quality of the streaming video. The information may be included in a manifest of the streaming video. Based on the video attributes, the engine outputs one or more input values to applications that reduce noise of the streaming video. The one or more applications may reduce mosquito, block, temporal, random and banding noise of the video in response to the input values from the engine.Type: ApplicationFiled: January 24, 2013Publication date: July 24, 2014Applicant: MICROSOFT CORPORATIONInventors: Stacey Spears, Haoyun Wu, Wenbo Zhang, Sudhakar Prabhu
-
Patent number: 7571484Abstract: A file system protection mechanism for an operating system image for a portable computing device is provided to assist in ensuring a good user experience. A signed catalog file is embedded in a resource-sparing operating system (OS), such as a Windows CE image, for security enhancement and load verification purposes. The invention performs various checks on the image and the signature of the image to ensure that image has not been maliciously modified and that it complies with a release standard. Such a mechanism is important to protect image loads from external threats made possible by, e.g. recent incorporation of broadband wireless and wireline connectivity for portable computing devices. The signing technique includes creating a signed catalog of the image and embedding that catalog into the image as it is loaded onto the portable computing device.Type: GrantFiled: December 4, 2003Date of Patent: August 4, 2009Assignee: Microsoft CorporationInventors: Mark Kraus, Sudhakar Prabhu
-
Publication number: 20050125407Abstract: A file system protection mechanism for an operating system image for a portable computing device is provided to assist in ensuring a good user experience. A signed catalog file is embedded in a resource-sparing operating system (OS), such as a Windows CE image, for security enhancement and load verification purposes. The invention performs various checks on the image and the signature of the image to ensure that image has not been maliciously modified and that it complies with a release standard. Such a mechanism is important to protect image loads from external threats made possible by, e.g. recent incorporation of broadband wireless and wireline connectivity for portable computing devices. The signing technique includes creating a signed catalog of the image and embedding that catalog into the image as it is loaded onto the portable computing device.Type: ApplicationFiled: December 4, 2003Publication date: June 9, 2005Applicant: Microsoft CorporationInventors: Mark Kraus, Sudhakar Prabhu