Abstract:
A device for video coding is configured to determine a characteristic of a predictive block of a current block of a current picture; identify a transform for decoding the current block based on the characteristic; inverse transform coefficients to determine a residual block for the current block; and add the residual block to a predictive block of the current block to decode the current block.
Abstract:
Techniques and systems are provided for processing video data. For example, a current block of a picture of the video data can be obtained for processing by an encoding device or a decoding device. A parameter of the current block can be determined. Based on the determined parameter of the current block, at least one or more of a number of rows of samples or a number columns of samples in a template of the current block and at least one or more of a number of rows of samples or a number columns of samples in a template of a reference picture can be determined. Motion compensation for the current block can be performed. For example, one or more local illumination compensation parameters can be derived for the current block using the template of the current block and the template of the reference picture.
Abstract:
A device for decoding video data determines that a current block of video data is coded using a linear model prediction mode; for the luma component of the current block, determines reconstructed luma samples; based on luma samples in a luma component of one or more already decoded neighboring blocks and chroma samples in a chroma component of the one or more already decoded neighboring blocks, determines values for linear parameters, wherein the luma samples in the luma component of the one or more already decoded neighboring blocks comprise luma samples from a starting line in the luma component of the one or more already decoded neighboring blocks, wherein the starting line in the luma component of the one or more already decoded neighboring blocks is at least one line removed from a border line of the luma component of the current block.
Abstract:
An example device for decoding encoded video data includes storage media and processing circuitry. The storage media are configured a portion of the encoded video data. The processing circuitry is configured to determine a block-level threshold for the portion of the encoded video data stored to the storage media, to determine that an encoded block of the portion of the encoded video data has a size that is equal to or greater than the threshold, to receive a syntax element indicating that a portion of the encoded block is to be reconstructed using a coding tool, to determine, based on the encoded block having the size that is equal to or greater than the threshold, that the syntax element applies to all samples of a plurality of samples included in the encoded block, and to reconstruct the encoded block based on the coding tool.
Abstract:
A video coder determines a coding unit (CU) is partitioned into transform units (TUs) of the CU based on a tree structure. As part of determining the CU is partitioned into the TUs of the CU based on the tree structure, the video coder determines that a node in the tree structure has exactly two child nodes in the tree structure. A root node of the tree structure corresponds to a coding block of the CU, each respective non-root node of the tree structure corresponds to a respective block that is a partition of a block that corresponds to a parent node of the respective non-root node, and leaf nodes of the tree structure correspond to the TUs of the CU.
Abstract:
An example device for decoding video data includes a processor configured to decode first and second reference pictures, wherein the first reference picture and the second reference picture are either both to be displayed before or after the current picture, determine a first motion vector (MV0) from a current block of the current picture to a first reference block of the first reference picture, determine a second motion vector (MV1) from the current block to a second reference block of the second reference picture, determine a first temporal distance (TD0) from the current picture to the first reference picture, determine a second temporal distance (TD1) from the current picture to the second reference picture, and decode the current block according to bi-directional optical flow (BIO) using MV0, MV1, TD0, and TD1.
Abstract:
In an example, a method of processing video data includes determining a candidate motion vector for deriving motion information of a current block of video data, where the motion information indicates motion of the current block relative to reference video data. The method also includes determining a derived motion vector for the current block based on the determined candidate motion vector, where determining the derived motion vector comprises performing a motion search for a first set of reference data that corresponds to a second set of reference data outside of the current block.
Abstract:
Example techniques are described to determine transforms to be used during video encoding and video decoding. A video encoder and a video decoder may select transform subsets that each identify one or more candidate transforms. The video encoder and the video decoder may determine transforms from the selected transform subsets.
Abstract:
In one example, a device for coding video data includes a memory configured to store video data and a video coder configured to form, for a current block of the video data, a merge candidate list including a plurality of merge candidates, the plurality of merge candidates including four spatial neighboring candidates from four neighboring blocks to the current block and, immediately following the four spatial neighboring candidates, an advanced temporal motion vector prediction (ATMVP) candidate, code an index into the merge candidate list that identifies a merge candidate of the plurality of merge candidates in the merge candidate list, and code the current block of video data using motion information of the identified merge candidate.
Abstract:
In an example, a method of coding video data may include selecting, as part of an entropy coding process, a context for a syntax element associated with a current coding unit (CU) based on information relating to CU depth of one or more neighboring CUs relative to the current CU. The syntax element may represent whether the current CU is split into sub-CUs. The method may include entropy coding the syntax element based on the selected context.