Abstract:
In general, the disclosure describes techniques related to block vector coding for Intra Block Copy and Inter modes. In one example, the disclosure is directed to a video coding device comprising a memory configured to store video data and one or more processors. The video coding device is configured to determine a reference picture used for coding the current video block and determine a picture order count (POC) value for the reference picture. In response to the POC value for the reference picture being equal to a POC value for a current picture that includes the current video block, the video coding device sets a value of a syntax element to indicate that a reference picture list includes the current picture. Otherwise, the video coding device sets the value of the syntax element to indicate that the reference picture list does not include the current picture.
Abstract:
In one implementation, an apparatus is provided for encoding or decoding video information. The apparatus comprises a memory unit configured to store video information associated with a base layer and/or an enhancement layer. The apparatus further comprises a processor operationally coupled to the memory unit. In one embodiment, the processor is configured to determine a scaling factor based on spatial dimension values associated with the base and enhancement layers such that the scaling factor is constrained within a predetermined range. The processor is also configured to spatially scale an element associated with the base layer or enhancement layer using the scaling factor and a temporal motion vector scaling process.
Abstract:
Bitstream restrictions or constraints on the partitioning of pictures across layers of video data are described. In some examples, the number of tiles per picture for each layer of a plurality of layers is constrained based on a maximum number of tiles per picture for the layer. In some examples, the number of tiles per picture for each layer of the plurality of layers is no greater than the maximum number of tiles per picture for the layer. In some examples, a sum of the numbers of tiles per picture for the plurality of layers is no greater than a sum of the maximum numbers of tiles per picture for the plurality of layers. In some examples, a second largest coding unit (LCU) or coding tree block (CTB) size for a second layer is constrained based on, e.g., to be equal to, a first LCU size for a first layer.
Abstract:
In one example, the disclosure is directed to techniques that include receiving a bitstream comprising at least a syntax element, a first network abstraction layer unit type, and a coded access unit comprising a plurality of pictures. The techniques further include determining a value of the syntax element which indicates whether the access unit was coded using cross-layer alignment. The techniques further include determining the first network abstraction layer unit type for a picture in the access unit and determining whether the first network abstraction layer unit type equals a value in a range of type values. The techniques further include setting a network abstraction layer unit type for all other pictures in the coded access unit to equal the value of the first network abstraction layer unit type if the first network abstraction layer unit type is equal to a value in the range of type values.
Abstract:
Systems and methods for separately defining and indicating inter-layer prediction dependencies for a first layer with respect to each of a number of enhancement layers associated with the first layer are described herein. One aspect of the subject matter described in the disclosure provides a video encoder comprising a memory unit configured to store a first picture associated with a first layer and enhancement layer pictures associated with a plurality of enhancement layers. The video encoder further comprises a processor in communication with the memory unit. The processor is configured to provide a separate indication for each of the enhancement layers that indicates whether the first picture can be used for inter-layer prediction of the enhancement layer picture in a respective enhancement layer.
Abstract:
A device for decoding video data includes a memory configured to store the video data and one or more processors configured to receive a slice of the video data, parse an intra block copy (IBC) syntax element to determine that an IBC mode is enabled for the slice, parse a slice type syntax element associated with the slice to determine the slice is an I slice, and decode the slice as an I slice by decoding all blocks of the slice using intra prediction coding modes.
Abstract:
An example method for decoding video data includes receiving syntax elements (SEs) for a component of a block vector that represents a displacement between a current block of video data and a predictor block of video data; decoding the SEs to determine a value of the component by at least: decoding a first SE to determine whether or not an absolute value of the component (AbsValcomp) is greater than zero; where AbsValcomp is greater than zero, decoding a second SE to determine whether AbsValcomp is greater than a threshold based on an order of a set of codes; where AbsValcomp is greater than the threshold, decoding, using the set of codes, a third SE to determine AbsValcomp minus an offset based on the order of the set of codes; and where AbsValcomp is greater than zero, decoding a fourth SE to determine a sign of the value of the component.
Abstract:
A multi-layer video decoder is configured to determine, based on a list of triplet entries, whether the multi-layer video decoder is capable of decoding a bitstream that comprises an encoded representation of the multi-layer video data. The number of triplet entries in the list is equal to a number of single-layer decoders in the multi-layer video decoder. Each respective triplet entry in the list of triplet entries indicates a profile, a tier, and a level for a respective single-layer decoder in the multi-layer video decoder. The multi-layer video decoder is configured such that, based on the multi-layer video decoder being capable of decoding the bitstream, the multi-layer video decoder decodes the bitstream.
Abstract:
In an example, a method of decoding video data includes decoding, from a video parameter set (VPS) of a multi-layer bitstream, data that indicates at least one of a tile configuration for layers of the multi-layer bitstream or a parallel processing configuration for layers of the multi-layer bitstream. The method also includes decoding the multi-layer bitstream in accordance with the data decoded from the VPS.
Abstract:
Techniques are described for 3D lookup table based color gamut scalability in multi-layer video coding. A lower layer of video data may include color data in a first color gamut and a higher layer of the video data may include color data in a second color gamut. To generate inter-layer reference pictures, a video coder performs color prediction to convert the color data of a reference picture in the first color gamut to the second color gamut. The video coder may perform color prediction using a 3D lookup table. According to the techniques, the video coder generates at least one 3D lookup table having a size that is different for a luma component than for a first chroma component and a second chroma component. In this way, the total size of the table may be reduced while maintaining good coding performance.