Patents by Inventor Edward Harold

Edward Harold 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: 11514479
    Abstract: An adaptive bidding system for networked advertising. A bid request is received from an exchange over a network. Each bid request represents the opportunity to bid on an advertising opportunity. A processing time limit is determined based at least in part on a network latency measurement and an exchange reported timeout. The execution of one or more tasks is initiated by the adaptive bidding system. A response is determined from one or more results which are available before the processing time limit expires. The execution of any tasks that have not completed execution before the processing time limit expires are terminated. The response is provided to the exchange.
    Type: Grant
    Filed: October 19, 2020
    Date of Patent: November 29, 2022
    Assignee: Quantcast Corporation
    Inventors: Crispin Edward Harold Flowerday, Faraaz Aejaz Sareshwala, Damian John Reeves
  • Patent number: 11477447
    Abstract: Techniques for encoding and decoding media content, and more specifically to selecting filter coefficients for filtering coding artifacts from the encoded media content are described. The filter coefficients are selected by an encoder for a given frame based on a statistical record of one or more previous frames in a data stream. The statistical record indicates the effectiveness of different sets of filter coefficients in reducing encoding artifacts for the one or more previous frames. By employing the statistical record to select filter coefficients for the next frame in the data stream, the encoder is able to select the filter coefficients relatively quickly, reducing encoding latency while ensuring that a decoder is able to effectively decode the encoded frames.
    Type: Grant
    Filed: September 25, 2020
    Date of Patent: October 18, 2022
    Assignee: ATI TECHNOLOGIES ULC
    Inventors: Zohair Sahraoui, Edward Harold
  • Publication number: 20220283880
    Abstract: A method for digital signal processing of sensor data includes receiving digitized samples of sensor signals via a network connection; converting the digitized samples into a standardized format; storing the converted digitized samples in a shared memory data structure in memory of a single instruction multiple data (SIMD) processor; and providing zero-copy read access to the converted digitized samples stored in the shared memory data structure to a plurality of applications.
    Type: Application
    Filed: March 3, 2022
    Publication date: September 8, 2022
    Applicant: The MITRE Corporation
    Inventors: William Karl URREGO, Kevin Chenery FARR, JR., Robert Harold HUDSON, Jeffrey D. GIOVINO, Edward Michael FENNELL, IV, Blake Anthony HAMILTON
  • Publication number: 20220210415
    Abstract: Still frame detection for single pass video data, including: determining that an average quantization parameter of a frame of video data falls below a quantization parameter threshold; determining whether an amount of skipped macroblocks in the frame meets a skipped macroblock threshold; and responsive to the amount of skipped macroblocks exceeding the skipped macroblock threshold, identifying the frame as a still frame.
    Type: Application
    Filed: December 28, 2020
    Publication date: June 30, 2022
    Inventors: MEHDI SEMSARZADEH, JIAO WANG, YAO WEN YU, EDWARD HAROLD, RICHARD E. GEORGE
  • Patent number: 11368692
    Abstract: Systems, apparatuses, and methods for generating a model for determining a quantization strength to use when encoding video frames are disclosed. A pre-encoder performs multiple encoding passes using different quantization strengths on a portion or the entirety of one or more pre-processed video frames. The pre-encoder captures the bit-size of the encoded output for each of the multiple encoding passes. Then, based on the multiple encoding passes, the pre-encoder generates a model for mapping bit-size to quantization strength for encoding video frames or portion(s) thereof. When the encoder begins the final encoding pass for one or more given video frames or any portion(s) thereof, the encoder uses the model to map a preferred bit-size to a given quantization strength. The encoder uses the given quantization strength when encoding the given video frame(s) or frame portion(s) to meet a specified bit-rate for the encoded bitstream.
    Type: Grant
    Filed: October 31, 2018
    Date of Patent: June 21, 2022
    Assignee: ATI Technologies ULC
    Inventors: Jinbo Qiu, Yang Liu, Ihab Amer, Lei Zhang, Edward A. Harold, Zhiqi Hao, Jiao Wang, Gabor Sines, Haibo Liu, Boris Ivanovic
  • Publication number: 20220159286
    Abstract: Systems, apparatuses, and methods for reducing latency when consuming an encoded video bitstream in real-time are disclosed. A video encoder encodes a video bitstream and writes chunks of the encoded bitstream to a bitstream buffer. Prior to the encoder completing the encoding of an entire frame, or an entire slice of a frame, a consumer module consumes encoded chunks of the bitstream. In one implementation, to enable pipelining of the consumption with the encoding, the encoder updates a buffer write pointer with an indication of the amount of data that has been written to the bitstream buffer. The consumer module retrieves encoded data from the bitstream buffer up to the location indicated by the buffer write pointer. In this way, the consumer module is able to access and consume encoded video data prior to the encoder finishing encoding an entire frame or an entire slice of the frame.
    Type: Application
    Filed: January 28, 2022
    Publication date: May 19, 2022
    Inventors: Ahmed M. Abdelkhalek, Edward A. Harold, Andy Sung, Stephen Ho, Lei Zhang, Ihab Amer, Gabor Sines, Zhiqi Hao, Yang Liu, Baochun Li, Kai Sun
  • Publication number: 20220141472
    Abstract: An encoding method is provided which includes receiving a plurality of images, obtaining values of elements in a portion of the images, sorting the elements according to different values of the elements, sorting the elements according to a number of occurrences of the different values and encoding the elements using a subset of the different values having corresponding numbers of occurrences that are higher than corresponding numbers of occurrences of other values. Examples also include a processing device and method for use with palette mode encoding in which the elements are a portion of pixels in images and the values are color values of the portion of pixels in the images.
    Type: Application
    Filed: October 30, 2020
    Publication date: May 5, 2022
    Applicants: Advanced Micro Devices, Inc., ATI Technologies ULC
    Inventors: Shu-Hsien Wu, Crystal Yeong-Pian Sau, Yang Liu, Wei Gao, Feng Pan, Ihab M. A. Amer, Ying Luo, Edward A. Harold, Gabor Sines, Ehsan Mirhadi
  • Publication number: 20220103814
    Abstract: Techniques for encoding and decoding media content, and more specifically to selecting filter coefficients for filtering coding artifacts from the encoded media content are described. The filter coefficients are selected by an encoder for a given frame based on a statistical record of one or more previous frames in a data stream. The statistical record indicates the effectiveness of different sets of filter coefficients in reducing encoding artifacts for the one or more previous frames. By employing the statistical record to select filter coefficients for the next frame in the data stream, the encoder is able to select the filter coefficients relatively quickly, reducing encoding latency while ensuring that a decoder is able to effectively decode the encoded frames.
    Type: Application
    Filed: September 25, 2020
    Publication date: March 31, 2022
    Inventors: Zohair SAHRAOUI, Edward HAROLD
  • Publication number: 20220094951
    Abstract: An encoder encodes an image portion by recursively partitioning the portion into a partitioning hierarchy of levels. The top level has a single block representing the entire portion and each lower level has four smaller blocks representing a corresponding larger block at a higher level. A palette table is generated for each bottom-level block based on the pixels of the associated block. For each successively higher level, the encoder generates a palette table for each current-level block by selecting palette colors based on the palette colors from the four palette tables for the associated four blocks at the next-lowest level. A color index map is then generated based on a final palette table selected from the palette tables generated for the partitioning hierarchy. A representation of the portion is then encoded using the final palette table and the color index map to generate a corresponding segment of an encoded bitstream.
    Type: Application
    Filed: September 23, 2020
    Publication date: March 24, 2022
    Inventors: Wei GAO, Yang LIU, Ihab AMER, Ying LUO, Shu-Hsien Samuel WU, Edward HAROLD, Feng PAN, Crystal SAU, Gabor SINES
  • Patent number: 11252429
    Abstract: Systems, apparatuses, and methods for reducing latency when consuming an encoded video bitstream in real-time are disclosed. A video encoder encodes a video bitstream and writes chunks of the encoded bitstream to a bitstream buffer. Prior to the encoder completing the encoding of an entire frame, or an entire slice of a frame, a consumer module consumes encoded chunks of the bitstream. In one implementation, to enable pipelining of the consumption with the encoding, the encoder updates a buffer write pointer with an indication of the amount of data that has been written to the bitstream buffer. The consumer module retrieves encoded data from the bitstream buffer up to the location indicated by the buffer write pointer. In this way, the consumer module is able to access and consume encoded video data prior to the encoder finishing encoding an entire frame or an entire slice of the frame.
    Type: Grant
    Filed: April 27, 2018
    Date of Patent: February 15, 2022
    Assignee: ATI Technologies ULC
    Inventors: Ahmed M. Abdelkhalek, Edward A. Harold, Andy Sung, Stephen Ho, Lei Zhang, Ihab Amer, Gabor Sines, Zhiqi Hao, Yang Liu, Baochun Li, Kai Sun
  • Publication number: 20210397874
    Abstract: Systems, apparatuses, and methods for performing parallel histogram calculation with application to palette table derivation are disclosed. An encoder calculates a first histogram for a first portion of pixel component value bits of a block of pixels. Then, the encoder selects a first number of the highest pixel count bins from the first histogram. Also, the encoder calculates a second histogram for a second portion of pixel component value bits of the block. The encoder selects a second number of the highest pixel count bins from the second histogram. A third histogram is calculated from the concatenation of bits assigned to the first and second number of bins, and the highest pixel count bins are selected from the third histogram. A palette table is derived based on these highest pixel count bins selected from the third histogram, and the block of pixels is encoded using the palette table.
    Type: Application
    Filed: September 2, 2021
    Publication date: December 23, 2021
    Inventors: Feng Pan, Wei Gao, Yang Liu, Crystal Yeong-Pian Sau, Haibo Liu, Edward A. Harold, Ying Luo, Ihab Amer, Gabor Sines
  • Publication number: 20210352282
    Abstract: Systems, apparatuses, and methods for calculating multi-pass histograms for palette table derivation are disclosed. An encoder calculates a first histogram for a first portion of most significant bits (MSBs) of pixel component values of a block of an image or video frame. Then, the encoder selects a given number of the highest pixel count bins from the first histogram. The encoder then increases the granularity of these selected highest pixel count bins by evaluating one or more additional bits from the pixel component values. A second histogram is calculated for the concatenation of the original first portion MSBs from the highest pixel count bins and the one or more additional bits, and the highest pixel count bins are selected from the second histogram. A palette table is derived based on these highest pixel count bins selected from the second histogram, and the block is encoded using the palette table.
    Type: Application
    Filed: July 26, 2021
    Publication date: November 11, 2021
    Inventors: Feng Pan, Wei Gao, Yang Liu, Crystal Yeong-Pian Sau, Haibo Liu, Edward A. Harold, Ying Luo, Ihab Amer, Gabor Sines
  • Patent number: 11159573
    Abstract: Selective regulation of information transmission from mobile applications to an external system. A privacy policy is configured for and mapped to each of a multiplicity of mobile application concerns, with each privacy policy comprising rules regulating the transmission of information to an external system. Instrumentation instructions can be integrated with a mobile application or mobile operating system. The instrumentation instructions direct the mobile device to submit a privacy policy request comprising an identifier from the mobile device to a third-party privacy compliance system and enable sending information from the mobile device to the external system, subject to the privacy policy. The privacy policy request is received at the third-party privacy compliance system which selects the privacy policy based on an identifier and sends the privacy policy to the mobile device for implementation.
    Type: Grant
    Filed: February 24, 2020
    Date of Patent: October 26, 2021
    Assignee: Quantcast Corporation
    Inventors: Crispin Edward Harold Flowerday, Michael F. Kamprath, Faraaz Aejaz Sareshwala, Daniel Vogel Fernandez de Castro
  • Patent number: 11120289
    Abstract: Systems, apparatuses, and methods for performing parallel histogram calculation with application to palette table derivation are disclosed. An encoder calculates a first histogram for a first portion of pixel component value bits of a block of pixels. Then, the encoder selects a first number of the highest pixel count bins from the first histogram. Also, the encoder calculates a second histogram for a second portion of pixel component value bits of the block. The encoder selects a second number of the highest pixel count bins from the second histogram. A third histogram is calculated from the concatenation of bits assigned to the first and second number of bins, and the highest pixel count bins are selected from the third histogram. A palette table is derived based on these highest pixel count bins selected from the third histogram, and the block of pixels is encoded using the palette table.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: September 14, 2021
    Assignee: ATI Technologies ULC
    Inventors: Feng Pan, Wei Gao, Yang Liu, Crystal Yeong-Pian Sau, Haibo Liu, Edward A. Harold, Ying Luo, Ihab Amer, Gabor Sines
  • Patent number: 11076151
    Abstract: Systems, apparatuses, and methods for calculating multi-pass histograms for palette table derivation include an encoder that calculates a first histogram for a first portion of most significant bits (MSBs) of pixel component values of a block of an image or video frame. Then, the encoder selects a given number of the highest pixel count bins from the first histogram. The encoder then increases the granularity of these selected highest pixel count bins by evaluating one or more additional bits from the pixel component values. A second histogram is calculated for the concatenation of the original first portion MSBs from the highest pixel count bins and the one or more additional bits, and the highest pixel count bins are selected from the second histogram. A palette table is derived based on these highest pixel count bins selected from the second histogram, and the block is encoded using the palette table.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: July 27, 2021
    Assignee: ATI Technologies ULC
    Inventors: Feng Pan, Wei Gao, Yang Liu, Crystal Yeong-Pian Sau, Haibo Liu, Edward A. Harold, Ying Luo, Ihab Amer, Gabor Sines
  • Publication number: 20210099705
    Abstract: A technique for determining an adaptive quantization parameter offset for a block of encoded video includes obtaining a rate control factor for the quantization parameter, determining a content-based quantization parameter factor for the quantization parameter, determining an adaptive variance based quantization offset based on content-based quantization parameter factors for a frame prior to the current frame, and combining the rate control factor, the content-based quantization parameter factor, and the adaptive offset to generate the quantization parameter.
    Type: Application
    Filed: September 30, 2019
    Publication date: April 1, 2021
    Applicants: Advanced Micro Devices, Inc., ATI Technologies ULC
    Inventors: Jiao Wang, Ying Zhang, Richard George, Edward A. Harold, Zhenhua Yang
  • Publication number: 20210099699
    Abstract: Systems, apparatuses, and methods for calculating multi-pass histograms for palette table derivation are disclosed. An encoder calculates a first histogram for a first portion of most significant bits (MSBs) of pixel component values of a block of an image or video frame. Then, the encoder selects a given number of the highest pixel count bins from the first histogram. The encoder then increases the granularity of these selected highest pixel count bins by evaluating one or more additional bits from the pixel component values. A second histogram is calculated for the concatenation of the original first portion MSBs from the highest pixel count bins and the one or more additional bits, and the highest pixel count bins are selected from the second histogram. A palette table is derived based on these highest pixel count bins selected from the second histogram, and the block is encoded using the palette table.
    Type: Application
    Filed: September 30, 2019
    Publication date: April 1, 2021
    Inventors: Feng Pan, Wei Gao, Yang Liu, Crystal Yeong-Pian Sau, Haibo Liu, Edward A. Harold, Ying Luo, Ihab Amer, Gabor Sines
  • Publication number: 20210097327
    Abstract: Systems, apparatuses, and methods for performing parallel histogram calculation with application to palette table derivation are disclosed. An encoder calculates a first histogram for a first portion of pixel component value bits of a block of pixels. Then, the encoder selects a first number of the highest pixel count bins from the first histogram. Also, the encoder calculates a second histogram for a second portion of pixel component value bits of the block. The encoder selects a second number of the highest pixel count bins from the second histogram. A third histogram is calculated from the concatenation of bits assigned to the first and second number of bins, and the highest pixel count bins are selected from the third histogram. A palette table is derived based on these highest pixel count bins selected from the third histogram, and the block of pixels is encoded using the palette table.
    Type: Application
    Filed: September 30, 2019
    Publication date: April 1, 2021
    Inventors: Feng Pan, Wei Gao, Yang Liu, Crystal Yeong-Pian Sau, Haibo Liu, Edward A. Harold, Ying Luo, Ihab Amer, Gabor Sines
  • Patent number: 10924739
    Abstract: Systems, apparatuses, and methods for calculating a quantization parameter (QP) for encoding video frames to meet a given bit budget are disclosed. Control logic coupled to an encoder calculates a complexity indicator that represents a level of difficulty in encoding a previous video frame. The complexity indicator is based at least in part on a first parameter associated with the previous video frame and corresponds to one or more of a variance, an intra-prediction factor, and an inter-to-intra ratio. The complexity indicator is then used by the control logic to calculate a preferred QP to use to encode the current video frame to meet a given bit budget. By using the preferred QP generated based on the complexity indicator, the encoder is able to make fewer QP adjustments during the frame. This helps to improve the visual quality of the resulting encoded video bitstream.
    Type: Grant
    Filed: October 31, 2018
    Date of Patent: February 16, 2021
    Assignee: ATI Technologies ULC
    Inventors: Dennis Lew, Jiao Wang, Lei Zhang, Edward A. Harold
  • Patent number: 10810632
    Abstract: An adaptive bidder for networked advertising. A bid request is received from an exchange over a network. Each bid request represents the opportunity to bid on an advertising opportunity. A processing time limit is determined based at least in part on a network latency measurement, an exchange reported timeout and a bid response buffer. The network latency measurement may be required to meet a freshness standard. The bid response buffer represents the time allotted for the adaptive bidding system to generate a response based on one or more partial results. The exchange reported timeout value can be included in the bid request, and can vary from bid request to bid request. The execution of one or more tasks is initiated by the adaptive bidding system, and each task can make a partial result available. In some cases, a partial result is a cumulative result. A response is determined from one or more partial results which are available before the processing time limit expires.
    Type: Grant
    Filed: May 9, 2018
    Date of Patent: October 20, 2020
    Assignee: Quantcast Corporation
    Inventors: Crispin Edward Harold Flowerday, Faraaz Aejaz Sareshwala, Damian John Reeves