Patents by Inventor Harish Rajamani

Harish Rajamani 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: 10080022
    Abstract: A data processing system for calibrating a media codec comprising a sequence of time-stamped frames and comprising: an encoder subsystem configured to perform encoding in accordance with one or more encode parameters; a decoder subsystem; and a calibration system comprising: a data store for storing an encoded media stream; and a calibration monitor configured to, on the media codec entering a calibration mode, cause: the decoder subsystem to decode the encoded media stream so as to generate a decoded media stream; the encoder subsystem to re-encode said decoded media stream; and the re-encoded media stream to pass back into the decoder subsystem; the calibration monitor being configured to, through variation of the encode parameters of the encoder subsystem, identify maximal encode parameters corresponding to the greatest steady-state demand on the media codec that permits decoding of the sequence of time-stamped frames at a rate in accordance with their associated timestamps.
    Type: Grant
    Filed: December 12, 2014
    Date of Patent: September 18, 2018
    Assignee: Imagination Technologies Limited
    Inventors: Venu Annamraju, Harish Rajamani, Mallikarjuna Kamarthi
  • Publication number: 20180262213
    Abstract: A data processing device comprising: a jitter buffer for receiving data packets; a media decoder configured to decode the data packets so as to form a stream of media frames, each frame comprising a plurality of samples; a media consumer having an input buffer for receiving the stream of media frames and being configured to play media frames from the input buffer according to a first frame rate; a buffer interface configured to monitor the input buffer so as to detect when the number of samples at the input buffer of the media consumer falls below a predetermined level and, in response, generate a play-out request; and a media controller configured to, responsive to each of the generated play-out requests, play-out one or more data packets to the media decoder so as to cause media frames of the stream to be delivered into the input buffer at a rate commensurate with the first frame rate.
    Type: Application
    Filed: May 10, 2018
    Publication date: September 13, 2018
    Inventors: Senthil Kumar Mani, Bala Manikya Prasad Puram, Harish Rajamani
  • Patent number: 9985660
    Abstract: A data processing device comprising: a jitter buffer for receiving data packets; a media decoder configured to decode the data packets so as to form a stream of media frames, each frame comprising a plurality of samples; a media consumer having an input buffer for receiving the stream of media frames and being configured to play media frames from the input buffer according to a first frame rate; a buffer interface configured to monitor the input buffer so as to detect when the number of samples at the input buffer of the media consumer falls below a predetermined level and, in response, generate a play-out request; and a media controller configured to, responsive to each of the generated play-out requests, play-out one or more data packets to the media decoder so as to cause media frames of the stream to be delivered into the input buffer at a rate commensurate with the first frame rate.
    Type: Grant
    Filed: May 4, 2015
    Date of Patent: May 29, 2018
    Assignee: Imagination Technologies Limited
    Inventors: Senthil Kumar Mani, Bala Manikya Prasad Puram, Harish Rajamani
  • Patent number: 9774873
    Abstract: A frame processor for preparing a stream of video frames for encoding, the frame processor being arranged to receive a video frame having first pixel dimensions representing the number of pixels along each dimension of the video frame, and comprising: a rescaling filter configured to rescale the received video frame such that one or both of the first pixel dimensions are no greater than respective predetermined pixel dimension(s) and the aspect ratio of the received video frame is maintained; and a frame generator configured to: embed the rescaled video frame within an output video frame having the predetermined pixel dimensions; and mark pixels of the output video frame outside the bounds of the rescaled video frame as inactive; the frame processor being arranged to provide the output video frame to a video encoder.
    Type: Grant
    Filed: December 16, 2014
    Date of Patent: September 26, 2017
    Assignee: Imagination Technologies Limited
    Inventors: Venu Annamraju, Harish Rajamani
  • Publication number: 20170272769
    Abstract: A system for decoding a data stream, comprising: a first decoder configured to decode the data stream at a first rate so as to generate a first stream of frames for playback and arranged to continue generating the first stream despite encountering an error in a particular frame; a second decoder operable to decode the data stream at a second rate so as to generate a second stream of frames; and a controller configured to: detect the error and cause the second decoder to decode the data stream from the particular frame in dependence on error correction data, the second rate being faster than the first rate such that the second stream catches up with the first stream; determine when the second decoder catches up with the first decoder; and cause the second decoder to operate at the first rate so as to generate the second stream for playback.
    Type: Application
    Filed: May 31, 2017
    Publication date: September 21, 2017
    Inventors: Venu Annamraju, Harish Rajamani, Ranjith Irukulapati
  • Patent number: 9686554
    Abstract: An adaptive control system for a media encoder configured to encode a media data stream in accordance with a set of one or more encode parameters, the system comprising: an input queue for receiving a sequence of data portions representing a media stream; and an adaptation controller configured to form an accumulation parameter indicative of an incidence of accumulation events at the input queue, each accumulation event representing the reception of an incoming data portion into the input queue while a previous data portion in the sequence is in the input queue; the adaptation controller being configured to control the encode parameters of the media encoder in dependence on the accumulation parameter.
    Type: Grant
    Filed: December 12, 2014
    Date of Patent: June 20, 2017
    Assignee: Imagination Technologies Limited
    Inventors: Venu Annamraju, Harish Rajamani, Mallikarjuna Kamarthi
  • Patent number: 9681146
    Abstract: A system for decoding a data stream, comprising: a first decoder configured to decode the data stream at a first rate so as to generate a first stream of frames for playback and arranged to continue generating the first stream despite encountering an error in a particular frame; a second decoder operable to decode the data stream at a second rate so as to generate a second stream of frames; and a controller configured to: detect the error and cause the second decoder to decode the data stream from the particular frame in dependence on error correction data, the second rate being faster than the first rate such that the second stream catches up with the first stream; determine when the second decoder catches up with the first decoder; and cause the second decoder to operate at the first rate so as to generate the second stream for playback.
    Type: Grant
    Filed: December 12, 2014
    Date of Patent: June 13, 2017
    Assignee: Imagination Technologies Limited
    Inventors: Venu Annamraju, Harish Rajamani, Ranjith Irukulapati
  • Patent number: 9600543
    Abstract: In one aspect, a method includes receiving an indication of a request from a user to view a stream associated with the user, generating a request for one or more items visible to the user for display within the stream, the request including a search query identifying search criteria including one or more tokens, the one or more tokens including at least a user token identifying the user, receiving one or more items in response to the request, the one or more items including at least one of the one or more tokens and further being visible to the user and providing the one or more items for display to the user within the stream in response to the request. Other aspects can be embodied in corresponding systems and apparatus, including computer program products.
    Type: Grant
    Filed: September 27, 2013
    Date of Patent: March 21, 2017
    Assignee: GOOGLE INC.
    Inventors: Lucian Florin Cionca, Andre Rohe, Yonatan Zunger, Sangsoo Sung, Mohit Oberoi, Daniel Belov, Harish Rajamani, Jinan Lou
  • Patent number: 9317585
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for receiving a query initial input from a user, in response to receiving the query initial input, determining a set of personalized query suggestions based on the query initial input, the set of personalized query suggestions including one or more content-based query suggestions that reflect at least one of user data associated with the user within one or more computer-implemented services and use of the one or more computer-implemented services by the user, and transmitting instructions to display the set of personalized query suggestions to the user.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: April 19, 2016
    Assignee: Google Inc.
    Inventors: Maureen Heymans, Ashutosh Shukla, Harish Rajamani, Matthew E. Kulick, Bryan C. Horling, Jennifer E. Fernquist
  • Publication number: 20150319212
    Abstract: A data processing device comprising: a jitter buffer for receiving data packets; a media decoder configured to decode the data packets so as to form a stream of media frames, each frame comprising a plurality of samples; a media consumer having an input buffer for receiving the stream of media frames and being configured to play media frames from the input buffer according to a first frame rate; a buffer interface configured to monitor the input buffer so as to detect when the number of samples at the input buffer of the media consumer falls below a predetermined level and, in response, generate a play-out request; and a media controller configured to, responsive to each of the generated play-out requests, play-out one or more data packets to the media decoder so as to cause media frames of the stream to be delivered into the input buffer at a rate commensurate with the first frame rate.
    Type: Application
    Filed: May 4, 2015
    Publication date: November 5, 2015
    Inventors: Senthil Kumar MANI, Bala Manikya Prasad PURAM, Harish RAJAMANI
  • Publication number: 20150186455
    Abstract: Systems and methods for annotating electronic messages are disclosed. In some implementations, a method includes, at a computing device, analyzing content of a first electronic message against a set of annotation rules; and in accordance with the analyzing: identifying a search term not included in the content of the first electronic message as associated with the first electronic message. In some implementations, the first set of annotation rules includes one of: a content based annotation, a syntax based annotation rule, and a hybrid annotation rule. In some implementations, the content of the electronic message includes one of: a text item, an audio item, an image item, and a video item.
    Type: Application
    Filed: December 30, 2013
    Publication date: July 2, 2015
    Applicant: Google Inc.
    Inventors: Bryan Christopher Horling, David Nachum, Harish Rajamani
  • Publication number: 20150172727
    Abstract: A data processing system for calibrating a media codec comprising a sequence of time-stamped frames and comprising: an encoder subsystem configured to perform encoding in accordance with one or more encode parameters; a decoder subsystem; and a calibration system comprising: a data store for storing an encoded media stream; and a calibration monitor configured to, on the media codec entering a calibration mode, cause: the decoder subsystem to decode the encoded media stream so as to generate a decoded media stream; the encoder subsystem to re-encode said decoded media stream; and the re-encoded media stream to pass back into the decoder subsystem; the calibration monitor being configured to, through variation of the encode parameters of the encoder subsystem, identify maximal encode parameters corresponding to the greatest steady-state demand on the media codec that permits decoding of the sequence of time-stamped frames at a rate in accordance with their associated timestamps.
    Type: Application
    Filed: December 12, 2014
    Publication date: June 18, 2015
    Inventors: Venu Annamraju, Harish Rajamani, Mallikarjuna Kamarthi
  • Publication number: 20150172668
    Abstract: An adaptive control system for a media encoder configured to encode a media data stream in accordance with a set of one or more encode parameters, the system comprising: an input queue for receiving a sequence of data portions representing a media stream; and an adaptation controller configured to form an accumulation parameter indicative of an incidence of accumulation events at the input queue, each accumulation event representing the reception of an incoming data portion into the input queue whilst a previous data portion in the sequence is in the input queue; the adaptation controller being configured to control the encode parameters of the media encoder in dependence on the accumulation parameter.
    Type: Application
    Filed: December 12, 2014
    Publication date: June 18, 2015
    Inventors: Venu Annamraju, Harish Rajamani, Mallikarjuna Kamarthi
  • Publication number: 20150172689
    Abstract: A system for decoding a data stream, comprising: a first decoder configured to decode the data stream at a first rate so as to generate a first stream of frames for playback and arranged to continue generating the first stream despite encountering an error in a particular frame; a second decoder operable to decode the data stream at a second rate so as to generate a second stream of frames; and a controller configured to: detect the error and cause the second decoder to decode the data stream from the particular frame in dependence on error correction data, the second rate being faster than the first rate such that the second stream catches up with the first stream; determine when the second decoder catches up with the first decoder; and cause the second decoder to operate at the first rate so as to generate the second stream for playback.
    Type: Application
    Filed: December 12, 2014
    Publication date: June 18, 2015
    Inventors: Venu Annamraju, Harish Rajamani, Ranjith Irukulapati
  • Publication number: 20150172682
    Abstract: A frame processor for preparing a stream of video frames for encoding, the frame processor being arranged to receive a video frame having first pixel dimensions representing the number of pixels along each dimension of the video frame, and comprising: a rescaling filter configured to rescale the received video frame such that one or both of the first pixel dimensions are no greater than respective predetermined pixel dimension(s) and the aspect ratio of the received video frame is maintained; and a frame generator configured to: embed the rescaled video frame within an output video frame having the predetermined pixel dimensions; and mark pixels of the output video frame outside the bounds of the rescaled video frame as inactive; the frame processor being arranged to provide the output video frame to a video encoder.
    Type: Application
    Filed: December 16, 2014
    Publication date: June 18, 2015
    Inventors: Venu Annamraju, Harish Rajamani
  • Publication number: 20150172691
    Abstract: A media encoder for encoding a stream of media data blocks is provided having an encoder pipeline comprising a sequence of processing modules for processing a stream of media data blocks, and a pipeline configurator configured effect a switch in the encoder pipeline from one or more first encode parameters to one or more second encode parameters. The first processing module of the pipeline can be configured to associate a trigger value with at least a first media data block processed at the first processing module in accordance with second encode parameters, the trigger value passing to subsequent modules so as to cause those modules to adopt the second encode parameters.
    Type: Application
    Filed: December 16, 2014
    Publication date: June 18, 2015
    Inventors: Venu Annamraju, Harish Rajamani
  • Publication number: 20150012524
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for receiving a search query from a user, accessing a user model that is specific to the user and that includes one or more n-grams, one or more terms of the n-grams being associated with one or more annotations, the annotations indicating at least one context in which each of the one or more terms have been used, determining a user intent for the search query based on comparing one or more terms in the search query with the terms of n-grams in the user model, and receiving search results that are responsive to the search query, the search results being specific to the user intent.
    Type: Application
    Filed: July 2, 2013
    Publication date: January 8, 2015
    Inventors: Maureen Heymans, Harish Rajamani, Ashutosh Shukla, Bryan C. Horling
  • Publication number: 20150012558
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for receiving a search query from a user, accessing a user model that is specific to the user and that includes one or more n-grams, one or more terms of the n-grams being associated with one or more annotations, the annotations indicating at least one context in which each of the one or more terms have been used, annotating one or more terms in the search query to provide an annotated search query, annotations being provided from user model, and receiving search results that are responsive to the annotated search query.
    Type: Application
    Filed: July 2, 2013
    Publication date: January 8, 2015
    Inventors: Maureen Heymans, Harish Rajamani, Ashutosh Shukla, Bryan C. Horling, Amay Nitin Champaneria, Dong Hyun Kim
  • Publication number: 20150012532
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for receiving a plurality of documents, the plurality of documents being associated with a user of a plurality of users and having been generated using a plurality of computer-implemented services, determining information from the plurality of documents that is of potential interest to the user, and providing a user model that is specific to the user and that includes one or more n-grams, one or more terms of the n-grams being associated with one or more annotations, the annotations indicating at least one context in which each of the one or more terms have been used, wherein the at least one context is based on information determined from the document
    Type: Application
    Filed: July 2, 2013
    Publication date: January 8, 2015
    Inventors: Maureen Heymans, Ashutosh Shukla, Harish Rajamani, Bryan C. Horling
  • Publication number: 20140280107
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for receiving a query initial input from a user, in response to receiving the query initial input, determining a set of personalized query suggestions based on the query initial input, the set of personalized query suggestions including one or more content-based query suggestions that reflect at least one of user data associated with the user within one or more computer-implemented services and use of the one or more computer-implemented services by the user, and transmitting instructions to display the set of personalized query suggestions to the user.
    Type: Application
    Filed: March 15, 2013
    Publication date: September 18, 2014
    Applicant: Google Inc.
    Inventors: Maureen Heymans, Ashutosh Shukla, Harish Rajamani, Matthew E. Kulick, Bryan C. Horling, Jennifer E. Fernquist