Abstract:
Techniques are described for determining a scan order for transform coefficients of a block. The techniques may determine context for encoding or decoding significance syntax elements for the transform coefficients based on the determined scan order. A video encoder may encode the significance syntax elements and a video decoder may decode the significance syntax elements based on the determined contexts.
Abstract:
Techniques and systems are provided for deriving one or more sets of affine motion parameters at a decoder. For example, the decoder can obtain video data from an encoded video bitstream. The video data includes at least a current picture and a reference picture. The decoder can determine a set of affine motion parameters for a current block of the current picture. The set of affine motion parameters can be used for performing motion compensation prediction for the current block. The set of affine motion parameters can be determined using a current affine template of the current block and a reference affine template of the reference picture. In some cases, an encoder can determine a set of affine motion parameters for a current block using a current affine template of the current block and a reference affine template of the reference picture, and can generate an encoded video bitstream that includes a syntax item indicating template matching based affine motion derivation mode is to be used by a decoder for the current block. The encoded video bitstream may not include any affine motion parameters for determining the set of affine motion parameters.
Abstract:
Systems, methods, and apparatus are provided for adaptively switching interpolation filters during the encoding of video data or the decoding of a video bitstream. In various implementations, a set of interpolation filters can be defined and made available to coding device. The coding device can select an interpolation filter for a given coding unit. The interpolation filter can be selected based on, for example, the coding level of the coding unit, among other things. In some examples, signaling of the selected interpolation filter can be simplified by selecting a subset of the set of interpolation filters for a given coding situation. An index indicating an interpolation filter from the subset can then be signaled. Alternatively, a decoder can derive an identity of the interpolation filter from data provided by a bitstream, in which case the index need not be explicitly signaled in the bitstream.
Abstract:
A method of coding video data can include receiving video information associated with a reference layer, an enhancement layer, or both, and generating a plurality of inter-layer reference pictures using a plurality of inter-layer filters and one or more reference layer pictures. The generated plurality of inter-layer reference pictures may be inserted into a reference picture list. A current picture in the enhancement layer may be coded using the reference picture list. The inter-layer filters may comprise default inter-layer filters or alternative inter-layer filters signaled in a sequence parameter set, video parameter set, or slice header.
Abstract:
In one implementation, an apparatus is provided for encoding or decoding video information. The apparatus comprises a memory configured to store inter-layer reference pictures associated with a current picture that is being coded. The apparatus further comprises a processor operationally coupled to the memory. In one embodiment, the processor is configured to indicate a number of inter-layer reference pictures to use to predict the current picture using inter-layer prediction. The processor is also configured to indicate which of the inter-layer reference pictures to use to predict the current picture using inter-layer prediction. The processor is also configured to determine an inter-layer reference picture set associated with the current picture using the indication of the number of inter-layer reference pictures and the indication of which of the inter-layer reference pictures to use to predict the current picture using inter-layer prediction.
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:
An apparatus for coding video information according to certain aspects includes a memory unit and a processor in communication with the memory unit. The memory unit stores video information associated with a reference layer and a corresponding enhancement layer. The processor determines a value of a video unit positioned at a position within the enhancement layer based at least in part on an intra prediction value weighted by a first weighting factor, wherein the intra prediction value is determined based on at least one additional video unit in the enhancement layer, and a value of a co-located video unit in the reference layer weighted by a second weighting factor, wherein the co-located video unit is located at a position in the reference layer corresponding to the position of the video unit in the enhancement layer. In some embodiments, the at least one of the first and second weighting factors is between 0 and 1.
Abstract:
An apparatus for coding video information according to certain aspects includes a memory unit and a processor in communication with the memory unit. The memory unit stores video information of a reference layer. The processor determines a value of a video unit based at least in part on a prediction value and an adjusted residual prediction value associated with the reference layer. The adjusted residual prediction value is equal to a residual prediction from the reference layer multiplied by a weighting factor that is different from 1.
Abstract:
In one example, an apparatus is configured to code video data. The apparatus comprises a processor configured to determine a base layer reference block for a current block. The base layer reference block may be located in the base layer. The processor is further configured to determine an enhancement layer reference block for the current block. The enhancement layer reference block may comprise a weighted sum of a first reference block located in the enhancement layer and a second reference block located in the enhancement layer. The processor is further configured to determine a reference block from the base layer reference block and the enhancement layer reference block.
Abstract:
Techniques for encoding and decoding video data are described. A method of coding video may include determining a plurality of motion vector candidates for a block of video data for use in a motion vector prediction process, wherein each of the motion vector candidates points to a respective reference frame index, performing the motion vector prediction process using the motion vector candidates to determine a motion vector for the block of video data, and performing motion compensation for the block of video data using the motion vector and a common reference frame index, wherein the common reference frame index is used regardless of the respective reference frame index associated with the determined motion vector.