Patents by Inventor Harikrishna Madadi Reddy

Harikrishna Madadi Reddy 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: 11425393
    Abstract: A system for calculating token rates for video encoding includes a plurality of different probability lookup tables implemented in hardware, wherein each of the probability lookup tables specifically corresponds to a different prediction mode of a video codec. The system includes an application-specific integrated circuit compute unit. For each candidate prediction mode among the different prediction modes, the application-specific integrated circuit is configured to determine a rate distortion cost (RD Cost) for a video. The application-specific integrated circuit is configured to select one of the plurality of different probability lookup tables that corresponds to the candidate prediction mode and use the selected one of the plurality of different probability lookup tables to calculate a corresponding token rate for the candidate prediction mode.
    Type: Grant
    Filed: June 10, 2021
    Date of Patent: August 23, 2022
    Assignee: Meta Platforms, Inc.
    Inventors: Zhao Wang, Srikanth Alaparthi, Yunqing Chen, Baheerathan Anandharengan, Gaurang Chaudhari, Junqiang Lan, Harikrishna Madadi Reddy, Prahlad Rao Venkatapuram
  • Patent number: 11425402
    Abstract: A method for sharing the motion estimation and mode decision results and decisions of one codec with another codec is disclosed. A video is received to be transcoded into a plurality of different output encodings of a plurality of different codecs. Each codec has a different video encoding format. A shared motion estimation and a shared mode decision processing of the video are performed. One or more results of the shared mode decision processing shared across the plurality of different codecs are used to encode the video into the plurality of different output encodings of the plurality of different codecs.
    Type: Grant
    Filed: April 22, 2021
    Date of Patent: August 23, 2022
    Assignee: Meta Platforms, Inc.
    Inventors: Gaurang Chaudhari, Hariharan G. Lalgudi, Harikrishna Madadi Reddy
  • Publication number: 20220264111
    Abstract: A video to be encoded using a codec is received. A first-pass analysis of the frames of the video is performed, including by collecting first-pass statistics data for each of the frames of the video. A specific frame of the video is selected for boosting an encoding rate of the specific frame. At least a portion of the first-pass statistics data is provided to a model to determine a boost factor for the specific frame. The encoding rate for the specific frame is determined using the boost factor.
    Type: Application
    Filed: January 5, 2022
    Publication date: August 18, 2022
    Inventors: Gaurang Chaudhari, Igor Koba, Harikrishna Madadi Reddy
  • Publication number: 20220239923
    Abstract: A hardware video processor comprises a cost calculation unit. The cost calculation unit is configured to determine rate distortion costs of a plurality of different modes for a portion of a video. The hardware video processor further comprises an evaluation unit. The evaluation unit is configured to receive the rate distortion costs of the plurality of different modes. At least one component of at least one of the rate distortion costs is adjusted based on a condition to determine at least one modified rate distortion cost of at least one of the plurality of different modes. The at least one modified rate distortion cost is used to evaluate the plurality of different modes and select one of the modes for use in encoding the portion of the video.
    Type: Application
    Filed: January 26, 2021
    Publication date: July 28, 2022
    Inventors: Gaurang Chaudhari, Yunqing Chen, Harikrishna Madadi Reddy
  • Patent number: 11368694
    Abstract: A quantized transform coefficient matrix is partitioned into a sequence of partition portions. The coefficients of the matrix are grouped into the sequence of partition portions based on a hardware implemented scan order. Each partition portion is processed in an order of the sequence in a first pass. For each partition portion, a group of coefficients in the partition portion is determined. For each partition portion, a first data rate estimation for the quantized transform coefficient matrix is updated based on at least some coefficients of the group of coefficients in the partition portion and a maximum end-of-block. For each partition portion, an end-of-block estimation of the quantized transform coefficient matrix is updated based on at least some coefficients of the group of coefficients in the partition portion. A first resulting data rate estimation and a true end-of-block of the quantized transform coefficient matrix are determined after the first pass.
    Type: Grant
    Filed: January 26, 2021
    Date of Patent: June 21, 2022
    Assignee: Meta Platforms, Inc.
    Inventors: Gaurang Chaudhari, Yunqing Chen, Zhao Wang, Harikrishna Madadi Reddy
  • Publication number: 20220046257
    Abstract: A scalable hardware accelerator configured to compute video quality metrics is disclosed. In some embodiments, an accelerator for video quality metrics comprises an application-specific integrated circuit that includes a first scaling unit configured to scale a resolution of at least a portion of a reference frame of a video, a second scaling unit configured to scale a resolution of at least a portion of a distorted frame of a transcoded version of the video, and a kernel configured to compute a video quality metric for the distorted frame with respect to the reference frame using at least a first scaled output of the first scaling unit or a second scaled output of the second scaling unit.
    Type: Application
    Filed: August 4, 2021
    Publication date: February 10, 2022
    Inventors: Deepa Palamadai Sundar, Visalakshi Vaduganathan, Harikrishna Madadi Reddy
  • Publication number: 20220044386
    Abstract: A scalable hardware accelerator configured to compute video quality metrics is disclosed. In some embodiments, an accelerator for video quality metrics comprises an application-specific integrated circuit that includes an interface configured to receive pixel data of a frame of a video being analyzed for quality metric determination and a kernel configured to compute a video quality metric for the received pixel data using a fixed-point hardware approximation of a floating-point based algorithm associated with the video quality metric.
    Type: Application
    Filed: August 4, 2021
    Publication date: February 10, 2022
    Inventors: Deepa Palamadai Sundar, Xing Cindy Chen, Hsiao-Chiang Chuang, Visalakshi Vaduganathan, Harikrishna Madadi Reddy
  • Publication number: 20220046318
    Abstract: A scalable hardware accelerator configured to compute video quality metrics is disclosed. In some embodiments, an accelerator for video quality metrics comprises an application-specific integrated circuit that includes a buffer memory configured to store at least a portion of a reference frame of a video and at least a corresponding portion of a distorted frame of a transcoded version of the video and that includes a processing unit configured to receive data from the buffer memory and compute a perception-based video quality metric for the distorted frame with respect to the reference frame.
    Type: Application
    Filed: August 4, 2021
    Publication date: February 10, 2022
    Inventors: Deepa Palamadai Sundar, Xing Cindy Chen, Visalakshi Vaduganathan, Harikrishna Madadi Reddy
  • Publication number: 20220046254
    Abstract: Techniques to optimize memory reads when computing a video quality metric are disclosed. In some embodiments, an application-specific integrated circuit for computing video quality metrics includes a set of caches configured to store neighbor pixel data for edge width searches of pixels comprising a frame of a video being analyzed for a video quality metric and a kernel configured to receive corresponding neighbor pixel data for pixels comprising a current processing block of the frame from a subset of the set of caches and simultaneously perform edge width searches for pixels comprising the current processing block to determine corresponding pixel edge width values used for computing the video quality metric.
    Type: Application
    Filed: August 4, 2021
    Publication date: February 10, 2022
    Inventors: Deepa Palamadai Sundar, Visalakshi Vaduganathan, Harikrishna Madadi Reddy
  • Patent number: 11234017
    Abstract: A system comprises a source block buffer and a plurality of hardware motion estimation search processing units in communication with the source block buffer. The source block buffer is configured to store at least a portion of a source block of a source frame of a video. The plurality of hardware motion estimation search processing units are configured to perform at least a portion of a motion estimation for the source block at least in part in parallel across a plurality of different reference frames of the video. Each of the hardware motion estimation search processing units is configured to be assigned a different one of the plurality of different reference frames and is configured to compare at least the portion of the source block with a portion of the assigned one of the different reference frames.
    Type: Grant
    Filed: December 13, 2019
    Date of Patent: January 25, 2022
    Assignee: Meta Platforms, Inc.
    Inventors: Harikrishna Madadi Reddy, Xianliang Zha, Junqiang Lan, Sujith Srinivasan, Guogang Hua, Chung-Fu Lin
  • Publication number: 20220021891
    Abstract: A method for sharing the motion estimation and mode decision results and decisions of one codec with another codec is disclosed. A video is received to be transcoded into a plurality of different output encodings of a plurality of different codecs. Each codec has a different video encoding format. A shared motion estimation and a shared mode decision processing of the video are performed. One or more results of the shared mode decision processing shared across the plurality of different codecs are used to encode the video into the plurality of different output encodings of the plurality of different codecs.
    Type: Application
    Filed: April 22, 2021
    Publication date: January 20, 2022
    Inventors: Gaurang Chaudhari, Hariharan G. Lalgudi, Harikrishna Madadi Reddy
  • Publication number: 20210319130
    Abstract: The disclosed may include various systems and methods for improving the efficiency and scalability of large-scale systems. For example, the disclosed may include systems and methods for automatic privacy enforcement using privacy-aware infrastructure, scalable general-purpose low cost integer motion search, efficient scaler filter coefficients layout for flexible scaling quality control with limited hardware resources, hardware optimization for power saving with both different codecs enabled, optimizing storage overhead and performance for large distributed data warehouse, mass and volume efficient integration of intersatellite link terminals to a satellite bus, and overcoming retention limit for memory-based distributed database systems.
    Type: Application
    Filed: June 22, 2021
    Publication date: October 14, 2021
    Inventors: Yi Huang, Wenlong Dong, Marc Alexander Celani, Xianliang Zha, Yunqing Chen, Harikrishna Madadi Reddy, Junqiang Lan, Chien Cheng Liu, Raghuvardhan Moola, Haluk Ucar, Sujith Srinivasan, Handong Li, Xing Cindy Chen, Tuo Wang, Zhao Wang, Baheerathan Anandharengan, Gaurang Chaudhari, Prahlad Rao Venkatapuram, Srikanth Alaparthi, James Alexander Morle, Vincent Matthew Malfa, Yassir Azziz, Chien-Chung Chen, Yan Cui, Pedro Eugenio Rocha Pedreira, Stavros Harizopoulos
  • Patent number: 9179166
    Abstract: The present invention facilitates efficient and effective detection of pixel alteration. The number and configuration of pixels in a block partition can be flexibly changed. The filter inputs in the multi-protocol filter can be flexibly changed to meet the deblocking requirement in the target video compression standard. In one embodiment, the deblock engine includes an input interface, a neighbor buffer, a current data buffer; and a multi-protocol filter. The input interface receives reconstructed data. The neighbor buffer temporarily stores neighbor information. The current data buffer receives the reconstructed data and the neighbor information. The multi-protocol filter filters information selected from the reconstructed data and neighbor information.
    Type: Grant
    Filed: December 5, 2008
    Date of Patent: November 3, 2015
    Assignee: NVIDIA CORPORATION
    Inventors: Visalakshi Vaduganathan, Harikrishna Madadi Reddy
  • Publication number: 20150215621
    Abstract: In one example, a method of encoding video data includes allocating, based on a complexity of a reference frame and a quantity of bits allocated to a current frame, a quantity of bits to a current largest coding unit (LCU) included in the current frame. In this example, the method also includes determining, based on the quantity of bits allocated to the current LCU, a quantization parameter (QP) for the current LCU, and encoding the current LCU with the determined QP.
    Type: Application
    Filed: July 15, 2014
    Publication date: July 30, 2015
    Inventors: Meng Liu, Hsiao-Chiang Chuang, Hariharan Ganesh Lalgudi, Srikanth Alaparthi, Cheng-Teh Hsieh, Harikrishna Madadi Reddy, Kai Wang
  • Patent number: 8897365
    Abstract: A system for executing video encoding operations. The system includes a video encoder for encoding an incoming video stream into a plurality of macro blocks. A motion estimation engine is coupled to the video encoder for controlling the encoding of the macro blocks. A video rate control processor is coupled to the video encoder and coupled to the motion estimation engine. The video rate control processor receives a plurality of parameters from the video encoder that indicate an encoding complexity for a macro block and a video frame of the video stream and, upon receiving an indication from the motion estimation engine, computes a quantization parameter for the macro block. The quantization parameter is dynamically adjusted for the video stream to achieve a target bit rate.
    Type: Grant
    Filed: November 19, 2008
    Date of Patent: November 25, 2014
    Assignee: Nvidia Corporation
    Inventors: Harikrishna Madadi Reddy, Himadri Choudhury, Manindra Parhy, Liang Cheng
  • Patent number: 8442111
    Abstract: An encoder provided according to an aspect of the present invention uses different encoding techniques depending on an amount of power available in the corresponding durations. Due to the ability to use such different encoding techniques, power may be optimally utilized. The optimization is further enhanced by dynamically switching between encoding techniques according to power amount availability in corresponding durations. In an embodiment, each encoding technique estimates motion vectors at corresponding level of precision (thereby consuming a corresponding level of power) and the precision level is chosen to correspond to available power budget. The circuitry not required for a desired precision level may be switched off.
    Type: Grant
    Filed: November 24, 2008
    Date of Patent: May 14, 2013
    Assignee: NVIDIA Corporation
    Inventors: Shashank Garg, Vinayak Jayaram Pore, Soumenkumar Dey, Manish Jatashanker Pandey, Harikrishna Madadi Reddy, Manindra Nath Parhy
  • Publication number: 20100142623
    Abstract: The present invention facilitates efficient and effective detection of pixel alteration. The number and configuration of pixels in a block partition can be flexibly changed. The filter inputs in the multi-protocol filter can be flexibly changed to meet the deblocking requirement in the target video compression standard. In one embodiment, the deblock engine includes an input interface, a neighbor buffer, a current data buffer; and a multi-protocol filter. The input interface receives reconstructed data. The neighbor buffer temporarily stores neighbor information. The current data buffer receives the reconstructed data and the neighbor information. The multi-protocol filter filters information selected from the reconstructed data and neighbor information.
    Type: Application
    Filed: December 5, 2008
    Publication date: June 10, 2010
    Applicant: Nvidia Corporation
    Inventors: Visalakshi Vaduganathan, Harikrishna Madadi Reddy
  • Publication number: 20100128777
    Abstract: An encoder provided according to an aspect of the present invention uses different encoding techniques depending on an amount of power available in the corresponding durations. Due to the ability to use such different encoding techniques, power may be optimally utilized. The optimization is further enhanced by dynamically switching between encoding techniques according to power amount availability in corresponding durations. In an embodiment, each encoding technique estimates motion vectors at corresponding level of precision (thereby consuming a corresponding level of power) and the precision level is chosen to correspond to available power budget. The circuitry not required for a desired precision level may be switched off.
    Type: Application
    Filed: November 24, 2008
    Publication date: May 27, 2010
    Applicant: NVIDIA Corporation
    Inventors: Shashank Garg, Vinayak Jayaram Pore, Soumenkumar Dey, Manish Jatashanker Pandey, Harikrishna Madadi Reddy, Manindra Nath Parhy
  • Publication number: 20100124279
    Abstract: A system for executing video encoding operations. The system includes a video encoder for encoding an incoming video stream into a plurality of macro blocks. A motion estimation engine is coupled to the video encoder for controlling the encoding of the macro blocks. A video rate control processor is coupled to the video encoder and coupled to the motion estimation engine. The video rate control processor receives a plurality of parameters from the video encoder that indicate an encoding complexity for a macro block and a video frame of the video stream and, upon receiving an indication from the motion estimation engine, computes a quantization parameter for the macro block. The quantization parameter is dynamically adjusted for the video stream to achieve a target bit rate.
    Type: Application
    Filed: November 19, 2008
    Publication date: May 20, 2010
    Applicant: NVIDIA CORPORATION
    Inventors: Harikrishna Madadi Reddy, Himadri Choudhury, Manindra Parhy, Liang Cheng