Patents by Inventor Shankar Moni

Shankar Moni 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: 7088774
    Abstract: A system and method of synchronizing a media stream involves determining urgency measures and favorability measures. An urgency measure relates to a degree by which a media stream is currently out of synchronization. A favorability measure indicates the disruptiveness or likely noticeability altering the media stream at a particular temporal point. As a media stream becomes more and more out of synchronization, the urgency factor increases, and the system looks for places in the media stream at which units such as video frames or audio samples can be added or subtracted to re-achieve synchronization. When the urgency measure is at lower values, the system selects only points in the media stream having relatively high favorability measures. When the urgency measure increases, the system selects points having relatively lower favorability measures.
    Type: Grant
    Filed: May 29, 2002
    Date of Patent: August 8, 2006
    Assignee: Microsoft Corporation
    Inventors: Shankar Moni, Ankur Varma, John Allen Tardif
  • Publication number: 20050281340
    Abstract: Video deblocking can be implemented in video content processing and delivery environments when displaying decompressed/decoded video information. Discontinuities are identified and smoothed to reduce blockiness, for example at macroblock boundaries in conjunction with Moving Picture Expert Group (MPEG)-based schemes. In exemplary implementation(s), a client device detects discontinuities at or near block boundaries, determines which discontinuities are artificial, and smooths at least those discontinuities that are determined to be artificial. These actions may be accomplished using (i) one or more Laplacian of Gaussian (LoG) operations as applied to both an image and a quantization matrix it and (ii) windowed comparisons between values and a threshold resulting from the LoG operations. Alternatively, these actions may be accomplished using a spatio-temporally varying filter.
    Type: Application
    Filed: July 27, 2005
    Publication date: December 22, 2005
    Applicant: Microsoft Corporation
    Inventors: Ankur Varma, Shankar Moni
  • Publication number: 20050262531
    Abstract: Video deblocking can be implemented in video content processing and delivery environments when displaying decompressed/decoded video information. Discontinuities are identified and smoothed to reduce blockiness, for example at macroblock boundaries in conjunction with Moving Picture Expert Group (MPEG)-based schemes. In exemplary implementation(s), a client device detects discontinuities at or near block boundaries, determines which discontinuities are artificial, and smooths at least those discontinuities that are determined to be artificial. These actions may be accomplished using (i) one or more Laplacian of Gaussian (LoG) operations as applied to both an image and a quantization matrix and (ii) windowed comparisons between values and a threshold resulting from the LoG operations. Alternatively, these actions may be accomplished using a spatio-temporally varying filter.
    Type: Application
    Filed: July 27, 2005
    Publication date: November 24, 2005
    Applicant: Microsoft Corporation
    Inventors: Ankur Varma, Shankar Moni
  • Publication number: 20050259745
    Abstract: Video deblocking can be implemented in video content processing and delivery environments when displaying decompressed/decoded video information. Discontinuities are identified and smoothed to reduce blockiness, for example at macroblock boundaries in conjunction with Moving Picture Expert Group (MPEG)-based schemes. In exemplary implementation(s), a client device detects discontinuities at or near block boundaries, determines which discontinuities are artificial, and smooths at least those discontinuities that are determined to be artificial. These actions may be accomplished using (i) one or more Laplacian of Gaussian (LoG) operations as applied to both an image and a quantization matrix and (ii) windowed comparisons between values and a threshold resulting from the LoG operations. Alternatively, these actions may be accomplished using a spatio-temporally varying filter.
    Type: Application
    Filed: July 27, 2005
    Publication date: November 24, 2005
    Applicant: Microsoft Corporation
    Inventors: Ankur Varma, Shankar Moni
  • Patent number: 6950463
    Abstract: Systems and methods for transcoding a transport stream or a video stream. A video stream includes a quantization matrix and a quantization scale that define how DCT frequency coefficients are quantized. A transport stream is transcoded by updating the quantization matrix and/or the quantization scale such that a new set of DCT frequency coefficients may be generated. Typically the quantization scale and/or the quantization matrix are updated such that the DCT frequency coefficients are more coarsely quantized such that their encoding consumes fewer bits. The quantization matrix can be updated such that select frequency coefficients are affected. Transcoding can operate at any level of the video stream, such as the frame level, the slice level, or the macroblock level. The bit rate of the video stream can therefore be adjusted or altered according to a current quantization level and a current bit rate.
    Type: Grant
    Filed: June 13, 2001
    Date of Patent: September 27, 2005
    Assignee: Microsoft Corporation
    Inventors: Shankar Moni, Andrew W. Walters, John A. Tardif, Padma Parthasarathy
  • Publication number: 20050078748
    Abstract: Systems and methods for transcoding a transport stream or a video stream. A video stream includes a quantization matrix and a quantization scale that define how DCT frequency coefficients are quantized. A transport stream is transcoded by updating the quantization matrix and/or the quantization scale such that a new set of DCT frequency coefficients may be generated. Typically the quantization scale and/or the quantization matrix are updated such that the DCT frequency coefficients are more coarsely quantized such that their encoding consumes fewer bits. The quantization matrix can be updated such that select frequency coefficients are affected. Transcoding can operate at any level of the video stream, such as the frame level, the slice level, or the macroblock level. The bit rate of the video stream can therefore be adjusted or altered according to a current quantization level and a current bit rate.
    Type: Application
    Filed: October 19, 2004
    Publication date: April 14, 2005
    Applicant: Microsoft Corporation
    Inventors: Shankar Moni, Andrew Walters, John Tardif, Padma Parthasarathy
  • Patent number: 6868124
    Abstract: Transcoding of a video stream to reduce the size of the video stream with little, if any, loss in video quality after subsampling. After accessing a video stream of video pictures (i.e., video frames or fields), the blocks of the video picture are each subject to matrix pre-multiplication and post-multiplication. Such matrix multiplication does degrade the video quality if subsampling was not to occur. However, the pre-multiplication and post-multiplication matrices are calculated based on the subsampling matrices that will be used to ultimately subsample the video stream such that after subsampling eventually occurs, the matrix multiplications result in minimal loss of video quality.
    Type: Grant
    Filed: June 18, 2001
    Date of Patent: March 15, 2005
    Assignee: WebTV Networks Inc. (Microsoft)
    Inventors: Shankar Moni, John A. Tardif
  • Publication number: 20050053153
    Abstract: Transcoding of a video stream to reduce the size of the video stream with little, if any, loss in video quality after subsampling. After accessing a video stream of video pictures (i.e., video frames or fields), the blocks of the video picture are each subject to matrix pre-multiplication and post-multiplication. Such matrix multiplication does degrade the video quality if subsampling was not to occur. However, the pre-multiplication and post-multiplication matrices are calculated based on the subsampling matrices that will be used to ultimately subsample the video stream such that after subsampling eventually occurs, the matrix multiplications result in minimal loss of video quality.
    Type: Application
    Filed: October 19, 2004
    Publication date: March 10, 2005
    Applicant: WebTV Networks, Inc.
    Inventors: Shankar Moni, John Tardif
  • Publication number: 20040223546
    Abstract: Adaptive compensation for requantization. A reference picture is decoded. Another copy of the reference picture is then requantized and then decoded. Next, an error picture is calculated and stored. The error picture represents the difference between the reference picture as decoded without requantization and the reference picture as decoded with requantization. The error picture and the requantized reference picture are used to generate a predictive picture that at least partially compensates for generational error introduced by requantization. This compensation for error may be adaptively performed based on system conditions.
    Type: Application
    Filed: June 14, 2004
    Publication date: November 11, 2004
    Applicant: WEBTV NETWORKS, INC.
    Inventors: Shankar Moni, John A. Tardif
  • Patent number: 6804299
    Abstract: Adaptive compensation for requantization. A reference picture is decoded. Another copy of the reference picture is then requantized and then decoded. Next, an error picture is calculated and stored. The error picture represents the difference between the reference picture as decoded without requantization and the reference picture as decoded with requantization. The error picture and the requantized reference picture are used to generate a predictive picture that at least partially compensates for generational error introduced by requantization. This compensation for error may be adaptively performed based on system conditions.
    Type: Grant
    Filed: June 15, 2001
    Date of Patent: October 12, 2004
    Assignee: Microsoft Corporation
    Inventors: Shankar Moni, John A. Tardif
  • Patent number: 6697126
    Abstract: Systems and methods for concealing video errors encountered in a frame of a static or moving image that can be used independently or in combination with conventional error concealment techniques, and can be used to conceal an error segment of any shape or location in a frame of a static or moving image. An error segment is identified. A first pixel set adjacent to the error segment and optionally one or more other pixel sets also adjacent to the error segment are selected corresponding the pixel set of the error segment and are flipped toward the error segment. The flipped pixel sets are then selectively weighted. Where only one pixel set is used, the flipped and weighted pixel set replaces the error segment to conceal the error segment.
    Type: Grant
    Filed: February 9, 2001
    Date of Patent: February 24, 2004
    Assignee: WebTV Networks, Inc.
    Inventors: Shankar Moni, John A. Tardif
  • Publication number: 20030235250
    Abstract: Video deblocking can be implemented in video content processing and delivery environments when displaying decompressed/decoded video information. Discontinuities are identified and smoothed to reduce blockiness, for example at macroblock boundaries in conjunction with Moving Picture Expert Group (MPEG)-based schemes. In exemplary implementation(s), a client device detects discontinuities at or near block boundaries, determines which discontinuities are artificial, and smooths at least those discontinuities that are determined to be artificial. These actions may be accomplished using (i) one or more Laplacian of Gaussian (LoG) operations as applied to both an image and a quantization matrix and (ii) windowed comparisons between values and a threshold resulting from the LoG operations. Alternatively, these actions may be accomplished using a spatio-temporally varying filter.
    Type: Application
    Filed: June 24, 2002
    Publication date: December 25, 2003
    Inventors: Ankur Varma, Shankar Moni
  • Publication number: 20030229902
    Abstract: Dynamic rate control can be implemented in a television-based entertainment environment when forwarding coded data. Real-time information flows are encoded, transcoded, compressed, etc. into data streams that may be forwarded to other components within an apparatus or to other apparatuses across a network. In a described implementation, a bitcount accumulation of a data stream is monitored in multiple overlapping windows. The data stream is compared to a data limit in each window of the multiple overlapping windows to determine whether an expected bitcount accumulation has been exceeded. The data stream is modified responsive to the comparison(s). For example, if the bitcount accumulations in each window exceed the expected bit accumulations at the corresponding relative positions of each window, then the bit rate of the data stream can be modified by reducing bit rate consumption.
    Type: Application
    Filed: June 10, 2002
    Publication date: December 11, 2003
    Inventor: Shankar Moni
  • Publication number: 20030133512
    Abstract: Systems and methods for transcoding a video stream. An incoming video stream is spatially transcoded to reduce the bit rate of the video stream. The incoming video stream is decoded and the stream parameters are saved for use in generating the output video stream. The decoded video stream is resampled and the images are spatially reduced. Using the stream parameters of the incoming video stream, an outgoing video stream is generated. Some of the stream parameters are unchanged while others are re-computed for the outgoing video stream.
    Type: Application
    Filed: January 11, 2002
    Publication date: July 17, 2003
    Inventors: Shankar Moni, John Tardif
  • Publication number: 20030002581
    Abstract: Systems and methods for transcoding a transport stream or a video stream. A video stream includes a quantization matrix and a quantization scale that define how DCT frequency coefficients are quantized. A transport stream is transcoded by updating the quantization matrix and/or the quantization scale such that a new set of DCT frequency coefficients may be generated. Typically the quantization scale and/or the quantization matrix are updated such that the DCT frequency coefficients are more coarsely quantized such that their encoding consumes fewer bits. The quantization matrix can be updated such that select frequency coefficients are affected. Transcoding can operate at any level of the video stream, such as the frame level, the slice level, or the macroblock level. The bit rate of the video stream can therefore be adjusted or altered according to a current quantization level and a current bit rate.
    Type: Application
    Filed: June 13, 2001
    Publication date: January 2, 2003
    Inventors: Shankar Moni, Andrew W. Walters, John A. Tardif, Padma Parthasarathy
  • Publication number: 20020196846
    Abstract: Transcoding of a video stream to reduce the size of the video stream with little, if any, loss in video quality after subsampling. After accessing a video stream of video pictures (i.e., video frames or fields), the blocks of the video picture are each subject to matrix pre-multiplication and post-multiplication. Such matrix multiplication does degrade the video quality if subsampling was not to occur. However, the pre-multiplication and post-multiplication matrices are calculated based on the subsampling matrices that will be used to ultimately subsample the video stream such that after subsampling eventually occurs, the matrix multiplications result in minimal loss of video quality.
    Type: Application
    Filed: June 18, 2001
    Publication date: December 26, 2002
    Inventors: Shankar Moni, John A. Tardif
  • Publication number: 20020191696
    Abstract: Adaptive compensation for requantization. A reference picture is decoded. Another copy of the reference picture is then requantized and then decoded. Next, an error picture is calculated and stored. The error picture represents the difference between the reference picture as decoded without requantization and the reference picture as decoded with requantization. The error picture and the requantized reference picture are used to generate a predictive picture that at least partially compensates for generational error introduced by requantization. This compensation for error may be adaptively performed based on system conditions.
    Type: Application
    Filed: June 15, 2001
    Publication date: December 19, 2002
    Inventors: Shankar Moni, John A. Tardif
  • Publication number: 20020109787
    Abstract: Systems and methods for concealing video errors encountered in a frame of a static or moving image that can be used independently or in combination with conventional error concealment techniques, and can be used to conceal an error segment of any shape or location in a frame of a static or moving image. An error segment is identified. A first pixel set adjacent to the error segment and optionally one or more other pixel sets also adjacent to the error segment are selected corresponding the pixel set of the error segment and are flipped toward the error segment. The flipped pixel sets are then selectively weighted. Where only one pixel set is used, the flipped and weighted pixel set replaces the error segment to conceal the error segment.
    Type: Application
    Filed: February 9, 2001
    Publication date: August 15, 2002
    Inventors: Shankar Moni, John A. Tardif
  • Patent number: 5336950
    Abstract: The present invention is directed to various configuration features of a logic array that includes a plurality of individually configurable logic cells arranged in a matrix. These features include reconfiguration logic for reconfiguring logic cells in a selected portion of the matrix using a window-based protocol. The array also includes configuration data storage means for storing configuration data utilizable for configuring the logic elements, wherein each logic element includes a working data storage register, and reset circuitry for modifying the configuration data without modifying the working data. The array further includes read disable circuitry and write disable circuitry for disabling read access and write access, respectively, to the configuration data. The array further includes a comparison protocol mechanism for checking the configuration data against data on the array pins.
    Type: Grant
    Filed: February 8, 1993
    Date of Patent: August 9, 1994
    Assignee: National Semiconductor Corporation
    Inventors: Sanjay Popli, Scott Pickett, David Hawley, Shankar Moni, Rafael C. Camarota
  • Patent number: 5298805
    Abstract: A low transistor count programmable bussing resource for a programmable logic array allows the use of the bussing resources as inputs or outputs to a cell in the array and allows connections between different buses without effecting the normal use of the cell. The bussing resource allows efficient routing of signals between cells and is symmetric to allow rotation of logic macros built using combinations of cells and buses.
    Type: Grant
    Filed: April 8, 1993
    Date of Patent: March 29, 1994
    Assignee: National Semiconductor Corporation
    Inventors: Tim Garverick, Jim Sutherland, Sanjay Popli, Venkata Alturi, Arthur Smith, Jr., Scott Pickett, David Hawley, Shao-Pin Chen, Shankar Moni, Benjamin S. Ting, Rafael C. Camarota, Shin-Mann Day, Frederick Furtek