Abstract:
A device for decoding video data includes a memory configured to store video data, and at least one processor. The at least one processor may be configured to: determine luma residual samples for a block of video data, determine predictive chroma residual samples for the block of video data, scale the luma residual samples with a scale factor to produce scaled luma residual samples, and determine updated chroma residual samples based on the predictive chroma residual samples and the scaled luma residual samples.
Abstract:
Methods and systems for video image coding are provided. Sets of filters may be selected and applied to video information at least partially based on phase displacement information between a first and second layer of video information. For example, the phase displacement information may correspond to a difference between a position of a pixel in the first layer and a corresponding position of the pixel in the second layer. The selected filter set can be an up-sampling filter or a down-sampling filter. The phase displacement information may be encoded as a syntax element embedded in the video bit stream.
Abstract:
In an example, a method of decoding video data includes determining a prediction partitioning structure for predicting pixel values associated with a block of video data. The method also includes determining a transform partitioning structure for applying one or more transforms to the predicted pixel values. Determining the transform split structure includes splitting a parent transform unit, upon determining the transform partitioning structure comprises splitting the parent transform unit into one or more square transforms, determining one or more square transforms such that each of the one or more square transforms correspond to exactly one prediction partition, and upon determining the transform partitioning structure comprises splitting the parent transform unit into one or more non-square transforms, determining whether to split the one or more non-square transforms based at least in part on the one or more non-square transforms being non-square.
Abstract:
A video encoder generates a bitstream that includes a residual quad tree (RQT) for a coding unit (CU). The CU is larger than a maximum-allowable transform unit (TU) size and the RQT includes a hierarchy of nodes. A root node of the RQT corresponds to the CU as a whole and leaf nodes of the RQT correspond to TUs of the CU. The root node is associated with a coded block flag (CBF) for a chroma component. The CBF for the chroma component indicates whether any of the TUs of the CU are associated with a significant coefficient block that is based on samples of the particular chroma component. A video decoder receives the bitstream and determines, based on the CBF, whether coefficient blocks associated with TUs that correspond to the leaf nodes include non-zero coefficients.
Abstract:
A video decoding device receives an array of transform coefficients for a chroma component of video data. The video decoding device receives entropy encoded data representing the value of a split flag associated with the chroma component. The value of the split flag indicates whether the array of transform coefficients is divided into smaller transform blocks. The video decoding device determines a context for the entropy encoded data representing the split flag. The context is based on the value of a split flag associated with another component of video data. The video decoding device entropy decodes the data representing the value of the split flag based on the determined context using context adaptive binary arithmetic coding (CABAC). The luma and chroma components have independent residual quadtree (RQT) structures.
Abstract:
Aspects of this disclosure relate to coding video data. In an example, a method of coding video data includes determining a first residual quadtree (RQT) depth at which to apply one or more first transforms to residual video data based on at least one characteristic of the residual of video data. The method also includes determining a second RQT depth at which to apply one or more second transforms to the residual video data based on the at least one characteristic. The method also includes coding the residual video data using the one or more first transforms and the one or more second transforms.
Abstract:
A video coder can be configured to determine an intra-prediction mode for a block of video data, identify a most probable transform based on the intra-prediction mode determined for the block of video data, and code an indication of whether the most probable transform is a transform used to encode the block of video data. The most probable transform can be a non-square transform.
Abstract:
A video coder can be configured to determine an intra-prediction mode for a block of video data, identify a most probable transform based on the intra-prediction mode determined for the block of video data, and code an indication of whether the most probable transform is a transform used to encode the block of video data. The most probable transform can be a non-square transform.
Abstract:
In general, techniques are described for performing an intra block copying process to code video data. A video decoding device that includes a memory and one or more processors may perform the techniques. The memory may be configured to store a current block of a picture. The processors may be configured to perform an intra block copying process to decode the current block using a prediction block that is from a same slice or a same tile as that in which the coded current block resides, the prediction block restricted to be within a search region that only includes the same slice or the same tile as that in which the coded current block resides.
Abstract:
Techniques are described for initializing a Rice parameter used to define codes for coefficient level coding. According to the techniques, the initial value of the Rice parameter is determined for a coefficient group (CG) in a transform block of video data based on statistics of coefficient levels that are gathered for previously coded coefficients of the video data. The statistics may be statistics of absolute values of coefficient levels or remaining absolute values of coefficient levels of previously coded coefficients. A value of the statistics may be initialized to zero at a beginning of a video slice and updated based on coefficient levels coded in each CG of the slice. The statistics may be updated once per CG. In some cases, statistics may be gathered separately for each of a plurality of different categories of CGs that are defined based on characteristics of transform blocks that include the CGs.