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: 8798157
    Abstract: A video processor is described, which is useful for implementing a forward transform process, in compliance with the H.264 standard. The video processor includes an input, for receiving a block of image data. The image data is loaded into an internal register. In response to receiving a SIMD instruction, a multiplier, which incorporates the H.264 forward transform matrix in its associated hardware, processes the block of image data, and writes the resulting partially transformed pixel data back to the internal register, transposing the data during the process.
    Type: Grant
    Filed: January 24, 2007
    Date of Patent: August 5, 2014
    Assignee: Nvidia Corporation
    Inventors: Pankaj Chaurasia, Shankar Moni
  • Patent number: 8787464
    Abstract: A video processor is described, which is useful for implementing a Hadamard transform process, in compliance with the H.264 standard. The video processor includes an input, for receiving a block of image data. The image data is loaded into an internal register. In response to receiving a SIMD instruction, a multiplier, which incorporates the H.264 Hadamard transform matrix in its associated hardware, processes the block of image data, and writes the resulting partially transformed pixel data back to the internal register, transposing the data during the process.
    Type: Grant
    Filed: January 24, 2007
    Date of Patent: July 22, 2014
    Assignee: Nvidia Corporation
    Inventors: Pankaj Chaurasia, Shankar Moni
  • Patent number: 8731051
    Abstract: A video processor is described, which is useful for implementing a quantization process, in compliance with the H.264 standard. The video processor includes an input, for receiving a block of image data. The image data is loaded into an internal register. In response to receiving a SIMD instruction, a quantizer, which incorporates the quantization lookup tables associated with the H.264 standard in its associated hardware, makes necessary high-level quantization decisions. In response to receiving another SIMD instruction, the quantizer uses those high-level quantization decisions to retrieve specific values from the quantization lookup tables.
    Type: Grant
    Filed: January 23, 2007
    Date of Patent: May 20, 2014
    Assignee: Nvidia Corporation
    Inventors: Pankaj Chaurasia, Shankar Moni
  • Patent number: 8705630
    Abstract: Described are methods and systems for processing data. A motion estimator uses a block of an input frame of video data and a block of a reference frame of video data to generate motion vectors according to a first encoding scheme. A motion compensator produces half pel motion vectors from the motion vectors according to a second encoding scheme that is different from the first encoding scheme.
    Type: Grant
    Filed: December 8, 2006
    Date of Patent: April 22, 2014
    Assignee: NVIDIA Corporation
    Inventors: Derek Pappas, Atul Garg, Shankar Moni, Harikrishna M. Reddy, Matthew R. Longnecker, Christopher L. Mills, Ignatius B. Tjandrasuwita
  • Patent number: 8437405
    Abstract: The present invention includes a method and system for encoding video data by accessing a picture to be encoded, wherein the picture comprises a plurality of macro-blocks. A plurality of programmable counters are associated with each macro-block to be encoded. A counter associated with a macro-block of the plurality of macro-blocks is accessed and a value of the counter is determined. The method further includes determining whether to encode the macro-block as an Intra or non-Intra based on the value of the counter. If the macro-block is encoded as Intra, its counter is reset. If the macro-block is encoded as non-Intra, its counter value is updated. The counter value may be reset with a random number. Counters can be programmed such that a region of interest is defined for updating associated macro-blocks with greater frequency.
    Type: Grant
    Filed: December 8, 2004
    Date of Patent: May 7, 2013
    Assignee: Nvidia Corporation
    Inventors: Iole Moccagatta, Atul Garg, Shankar Moni, Dipankar Talukdar, Ignatius B. Tjandrasuwita, Sandeep Shyamsukha
  • Publication number: 20130052631
    Abstract: A customizable electronic system for education that includes a processor (202) to process an audio, and a video, a memory (218) to store a personal information and a performance data of one or more user, a video formatting chip (224) that formats the video output from the processor, an audio formatting chip (226) that formats the audio output from the processor. The processor executes an educational method that includes processing a login information corresponding to the user, displaying a list of options that includes taking a session, executing at least one session based on a user input that includes selecting the option of taking the session, processing a first answer to the one or more question, generating any of an audio or a visual feedback automatically on submitting the answer based on an accuracy of the answer.
    Type: Application
    Filed: April 5, 2011
    Publication date: February 28, 2013
    Applicant: MOODEYE MEDIA AND TECHNOLOGIES PVT LTD
    Inventors: Shankar Moni, Sheloney Moni
  • Patent number: 8355449
    Abstract: The present invention includes a method and system for encoding video data by accessing a picture to be encoded, wherein the picture comprises a plurality of macro-blocks. A plurality of programmable counters are associated with each macro-block to be encoded. A counter associated with a macro-block of the plurality of macro-blocks is accessed and a value of the counter is determined. The method further includes determining whether to encode the macro-block as an Intra or non-Intra based on the value of the counter. If the macro-block is encoded as Intra, its counter is reset. If the macro-block is encoded as non-Intra, its counter value is updated. The counter value may be reset with a random number. Counters can be programmed such that a region of interest is defined for updating associated macro-blocks with greater frequency.
    Type: Grant
    Filed: December 30, 2009
    Date of Patent: January 15, 2013
    Assignee: Nvidia Corporation
    Inventors: Iole Moccagatta, Atul Garg, Shankar Moni, Dipankar Talukdar, Ignatius B. Tjandrasuwita, Sandeep Shyamsukha
  • Patent number: 7966361
    Abstract: Several different approaches to performing the modulus operation are presented. In one, a method of performing the modulus operation upon a dividend and a divisor within a limited range is discussed. The method involves storing a reference value, receiving a dividend value, and calculating a number of derived inputs. Each of the derived inputs corresponds to the dividend value minus the reference value, and is then further modified by a multiple of the divisor. Using the divisor to select between these derived inputs provides the answer.
    Type: Grant
    Filed: January 24, 2007
    Date of Patent: June 21, 2011
    Assignee: NVIDIA Corporation
    Inventors: Shankar Moni, Pankaj Chaurasia
  • Publication number: 20100128788
    Abstract: Embodiments of the present invention include a method and system for encoding video data comprising accessing a picture to be encoded, wherein the picture comprises a plurality of macro-blocks. A plurality of programmable counters is associated with each macro-block to be encoded. A counter associated with a macro-block of the plurality of macro-blocks is accessed and a value of the counter is determined. The method further includes determining whether to encode the macro-block as an Intra or non-Intra based on the value of the counter. If the macro-block is encoded as Intra, its counter is reset. If the macro-block is encoded as non-Intra, its counter value is updated. The counter value may be reset with a random number. Counters can be programmed such that a region of interest is defined for updating associated macro-blocks with greater frequency.
    Type: Application
    Filed: December 30, 2009
    Publication date: May 27, 2010
    Applicant: NVIDIA CORPORATION
    Inventors: Iole Moccagatta, Atul Garg, Shankar Moni, Dipankar Talukdar, Ignatius B. Tjandrasuwita, Sandeep Shyamsukha
  • Patent number: 7660351
    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: Grant
    Filed: July 27, 2005
    Date of Patent: February 9, 2010
    Assignee: Microsoft Corporation
    Inventors: Ankur Varma, Shankar Moni
  • Patent number: 7636392
    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: October 19, 2004
    Date of Patent: December 22, 2009
    Assignee: Microsoft Corporation
    Inventors: Shankar Moni, Andrew W. Walters, John A. Tardif, Padma Parthasarathy
  • Patent number: 7627038
    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: October 19, 2004
    Date of Patent: December 1, 2009
    Assignee: Microsoft Corporation
    Inventors: Shankar Moni, John A. Tardif
  • Patent number: 7567618
    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: Grant
    Filed: July 27, 2005
    Date of Patent: July 28, 2009
    Assignee: Microsoft Corporation
    Inventors: Ankur Varma, Shankar Moni
  • Patent number: 7567619
    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: Grant
    Filed: July 27, 2005
    Date of Patent: July 28, 2009
    Assignee: Microsoft Corporation
    Inventors: Ankur Varma, Shankar Moni
  • Patent number: 7543326
    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: Grant
    Filed: June 10, 2002
    Date of Patent: June 2, 2009
    Assignee: Microsoft Corporation
    Inventor: Shankar Moni
  • Patent number: 7439883
    Abstract: A bitstream generator is described, for placing variable length coding (VLC) data into a fixed width data stream. The bitstream generator includes an input for receiving VLC data; the VLC data may be separated into a value component, and a length component. The bitstream generator also includes an output buffer, a memory module, for storing the VLC data before sending. The bitstream generator also incorporates a backup buffer, which is used to store any overflow data which does not fit in the output buffer. A comparator is used, to determine how much of the VLC data will fit in the output buffer. Any portion of the VLC data which does not fit in the output buffer is stored in the backup buffer.
    Type: Grant
    Filed: January 24, 2007
    Date of Patent: October 21, 2008
    Assignee: Nvidia Corporation
    Inventors: Shankar Moni, Pankaj Chaurasia
  • Patent number: 7436889
    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 14, 2004
    Date of Patent: October 14, 2008
    Assignee: Microsoft Corporation
    Inventors: Shankar Moni, John A. Tardif
  • Publication number: 20070189390
    Abstract: Described are methods and systems for processing data. A motion estimator uses a block of an input frame of video data and a block of a reference frame of video data to generate motion vectors according to a first encoding scheme. A motion compensator produces half pel motion vectors from the motion vectors according to a second encoding scheme that is different from the first encoding scheme.
    Type: Application
    Filed: December 8, 2006
    Publication date: August 16, 2007
    Inventors: Derek Pappas, Atul Garg, Shankar Moni, Harikrishna M. Reddy, Matthew R. Longnecker, Christopher L. Mills, Ignatius B. Tjandrasuwita
  • Patent number: 7224853
    Abstract: A set of known data samples are identified and an approximation of an original function from which the known data samples were obtained is created. The approximation function is then resampled to obtain desired values that are not contained in the set of known data samples.
    Type: Grant
    Filed: May 29, 2002
    Date of Patent: May 29, 2007
    Assignee: Microsoft Corporation
    Inventor: Shankar Moni
  • Patent number: 7177356
    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: Grant
    Filed: January 11, 2002
    Date of Patent: February 13, 2007
    Assignee: WebTV Networks, Inc.
    Inventors: Shankar Moni, John Tardif