Abstract:
An apparatus configured to code (e.g., encode or decode) video information includes a memory unit and a processor in communication with the memory unit. The memory unit is configured to store video information associated with a base layer and an enhancement layer. The processor is configured to up-sample a base layer reference block by using an up-sampling filter when the base and enhancement layers have different resolutions; perform motion compensation interpolation by filtering the up-sampled base layer reference block; determine base layer residual information based on the filtered up-sampled base layer reference block; determine weighted base layer residual information by applying a weighting factor to the base layer residual information; and determine an enhancement layer block based on the weighted base layer residual information. The processor may encode or decode the video information.
Abstract:
A video coder determines a first picture order count (POC) value of a first reference picture associated with a first motion vector of a corresponding block that points in a first direction and determines whether a first reference picture list for the current block includes a reference picture having the first POC value; in response to the reference picture list not including the reference picture having the first POC value, determines a second POC value of a second reference picture associated with a second motion vector of the corresponding block that points in a second direction, determines whether the first reference picture list for the current block includes a reference picture having the second POC value and in response to the first reference picture list including the reference picture having the second POC value, decodes the current motion vector using the second motion vector of the corresponding block.
Abstract:
A video encoder is configured to encode a binary sting indicating a position of a last significant coefficient within a video block. A video decoder is configured to decode the encoded binary string. The string may be coded using context adaptive binary arithmetic coding (CABAC). Binary indices of the binary string may be assigned a context. The context may be determined according to a mapping function. A context may be a assigned to one or more binary indices where each index is associated with a different block size. The last binary index of a 16×16 video block may share a context with the last binary index of a 32×32 video block.
Abstract:
A device for decoding video data may be configured to determine a block of the video data is coded using a palette-based coding mode; determine a sample of the block of video data is coded using a copy from top mode or an index mode; and decode a greater than zero flag to indicate whether a run value is greater than zero, wherein the run value specifies a number of samples subsequent to the sample that have a same mode as the sample.
Abstract:
Provided are techniques for low complexity video coding. For example, a video coder may be configured to calculate a first sum of absolute difference (SAD) value between a CU block and a corresponding block in a reference frame for the largest coding unit (LCU). The video coder may define conditions (e.g., background and/or homogeneous conditions) for the branching based at least in part on the first SAD value. The video coder may also determine the branching based on detecting the background or homogeneous condition, the branching including a first branch corresponding to both a first CU size of the CU block and a second CU size of a sub-block of the CU block. The video coder may then set the first branch to correspond to the first CU size, if the first CU size or the second CU size satisfies the background condition.
Abstract:
Systems, methods, and devices for video coding that may obtain a rectangular chroma block having first and second square sub-blocks are disclosed. These systems, methods, and devices may also decode a first coded block flag (CBF) for the first square sub-block to indicate whether the first square sub-block includes at least one nonzero transform coefficient. These systems, methods, and devices may also decode a second CBF for the second square sub-block to indicate whether the second square sub-block includes at least one nonzero transform coefficient and not decoding a CBF for the rectangular chroma block.
Abstract:
Techniques are described where a current pixel that cannot be palette mode coded in copy above mode and is not coded in a copy index mode is palette mode coded based on a palette index of a diagonal pixel.
Abstract:
A method of decoding video data, the method comprising receiving a run-length sequence indicative of a binary vector, the binary vector comprising indications of locations of escape samples in a block of video data encoded using a palette-based coding mode, decoding the run-length sequence to obtain the binary vector, and decoding the block of video data using the binary vector. The method of claim 1 may further comprise receiving palette entries for the block of video data receiving one or more escape samples, and receiving a plurality of flags indicating the palette mode for each respective pixel in the block of video data.
Abstract:
Techniques for advanced residual prediction (ARP) for coding video data may include inter-view ARP. Inter-view ARP may include identifying a disparity motion vector (DMV) for a current video block. The DMV is used for inter-view prediction of the current video block based on an inter-view reference video block. The techniques for inter-view ARP may also include identifying temporal reference video blocks in the current and reference views based on a temporal motion vector (TMV) of the inter-view reference video block, and determining a residual predictor block based on a difference between the temporal reference video blocks.
Abstract:
Techniques are described for coding residual data of a prediction residual block with transform skipping. A transform may be skipped for a residual block when the residual block is coded using either a lossless coding mode or a lossy coding mode in a transform skip mode. According to the techniques, based on a transform being skipped for a residual block, a rotation unit included in a video encoder or a video decoder determines whether to rotate the residual block prior to coding residual data of the residual block. In some examples, a rotation value may be explicitly signaled between the video encoder and the video decoder. In other examples, the video encoder and the video decoder may each independently determine whether to rotate the residual block based on a type of boundary at two or more edges of the residual block.