US 12,348,734 B2
Fine grain lookahead enhancement for video coding
Jason Tanner, Folsom, CA (US); and James Holland, Folsom, CA (US)
Assigned to Intel Corporation, Santa Clara, CA (US)
Filed by Intel Corporation, Santa Clara, CA (US)
Filed on Jun. 14, 2021, as Appl. No. 17/347,243.
Prior Publication US 2021/0306640 A1, Sep. 30, 2021
Int. Cl. H04N 19/14 (2014.01); H04N 19/126 (2014.01); H04N 19/139 (2014.01); H04N 19/172 (2014.01); H04N 19/177 (2014.01); H04N 19/196 (2014.01); H04N 19/577 (2014.01)
CPC H04N 19/14 (2014.11) [H04N 19/126 (2014.11); H04N 19/139 (2014.11); H04N 19/172 (2014.11); H04N 19/177 (2014.11); H04N 19/196 (2014.11); H04N 19/577 (2014.11)] 21 Claims
OG exemplary drawing
 
1. A device comprising:
a memory to store at least a portion of input video, the input video comprising a target frame and subsequent frames in a display order; and
processor circuitry coupled to the memory, the processor circuitry to perform operations including:
performing lookahead analysis for the input video;
selecting one or more of the subsequent frames for use in a propagation of block based propagation values for adjustment of block level quantization parameters (QPs) of the target frame;
propagating the block based propagation values from the selected one or more of the subsequent frames to the target frame, wherein the block based propagation values are based on spatial and temporal distortion values from the lookahead analysis of the input video, and the block based propagation values are propagated using motion estimation based on the target frame and the selected one or more of the subsequent frames;
wherein propagating the block based propagation values comprises:
determining that a first block based propagation value from a first block of a first frame of the subsequent frames is propagated to a second block of a second frame of the subsequent frames; and
scaling, in response to a first spatial distortion of the first block of the first frame exceeding a second spatial distortion of the second block of the second frame, a block based propagation value for the second block relative to a ratio of the second spatial distortion to the first spatial distortion;
selecting the block level QPs of the target frame based on the block based propagation values corresponding to blocks of the target frame; and
encoding the target frame using the block level QPs.