Abstract:
Techniques are directed to a device for decoding a current block of video data in a current coding picture. The device may include a memory configured to store video data. The device may also include a processor configured to generate a first prediction block for the current block of the video data in the current picture according to an intra-prediction mode and generate a second prediction block for the current block of the video data in the current picture the picture according to an inter-prediction mode. The processor may be configured to generate motion information propagated from the second prediction block of the picture to the first prediction block, and use the motion information to obtain a final prediction block, then generate a reconstructed block based on a combination of the final prediction block and a residual block.
Abstract:
Techniques and systems are provided for processing 360-degree video data. For example, a picture of the 360-degree video data can be obtained. The picture can include samples projected from a three-dimensional format to a two-dimensional format. A weight value can be determined for at least one sample of the picture. The weight value can be determined based at least on a position of the at least one sample in the picture. At least one adaptive parameter can be determined for the at least one sample using the determined weight value. The at least one adaptive parameter can include one or more of an adaptive weighted distortion, an adaptive weighted quantization parameter value, or an adaptive weighted lambda value. A cost associated with coding the at least one sample using one or more coding modes can be determined using the at least one adaptive parameter of the at least one sample.
Abstract:
Provided are systems and methods for processing 360-degree video data. In various implementations, a spherical representation of a 360-degree video frame can be segmented into a top region, a bottom region, and a middle region. The middle region can be mapped into one or more rectangular areas of an output video frame. The top region can be mapped into a first rectangular area of the output video frame using a mapping that converts a square to a circle, such that pixels in the circular top region are expanded to fill the first rectangular region. The bottom region can be mapped into a second rectangular area of the output video frame such that pixels in the circular bottom region are expanded to fill the second rectangular region.
Abstract:
In one implementation, an apparatus is provided for encoding or decoding video information. The apparatus comprises a memory unit configured to store reference layer pictures associated with a reference layer, an enhancement layer, or both. The apparatus further comprises a processor operationally coupled to the memory unit. In one embodiment, the processor is configured to restrict usage of at most one reference layer pictures that has a different spatial resolution than a current picture as an inter-layer reference picture, and predict the current picture using inter-layer prediction and the inter-layer reference picture.
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 is configured to store video information associated with a base layer and an enhancement layer. The processor is configured to, in response to determining that the video information associated with the enhancement layer is to be determined based upon the video information associated with the base layer, select between a first transform and a second transform based at least in part on at least one of a transform unit (TU) size and a color component type of the enhancement layer video information.
Abstract:
In one embodiment, an apparatus configured to code video data includes a processor and a memory unit. The memory unit stores video data associated with a first layer having a first spatial resolution and a second layer having a second spatial resolution. The video data associated with the first layer includes at least a first layer block and first layer prediction mode information associated with the first layer block, and the first layer block includes a plurality of sub-blocks where each sub-block is associated with respective prediction mode data of the first layer prediction mode information. The processor derives the predication mode data associated with one of the plurality of sub-blocks based at least on a selection rule, upsamples the derived prediction mode data and the first layer block, and associates the upsampled prediction mode data with each upsampled sub-block of the upsampled first layer block.
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 difference video information associated with a difference video layer of pixel information derived from a difference between an enhancement layer and a corresponding base layer of the video information. The processor determines a value of a video unit based on the difference video layer. The processor is further configured to refrain from performing a transform and residual coding of the determined value of the video unit.
Abstract:
A video coder determines, based at least in part on a distance between a current sub-block of a transform coefficient block and a sub-block that contains a last significant coefficient (LSC) of the transform coefficient block, coding contexts for significance flags for transform coefficients of the current sub-block. Furthermore, the video coder entropy codes, based on the coding contexts for the significance flags for the transform coefficients of the current sub-block, the significance flags for the transform coefficients of the current sub-block.
Abstract:
In one example, a video coder (e.g., a video encoder or a video decoder) is configured to determine that a current block of video data is coded using a disparity motion vector, wherein the current block is within a containing block, based on a determination that a neighboring block to the current block is also within the containing block, substitute a block outside the containing block and that neighbors the containing block for the neighboring block in a candidate list, select a disparity motion vector predictor from one of a plurality of blocks in the candidate list, and code the disparity motion vector based on the disparity motion vector predictor. In this manner, the techniques of this disclosure may allow blocks within the containing block to be coded in parallel.
Abstract:
A method of decoding data indicative of a subset of transform coefficients is described. The coefficients are indicative of a block of video data. The method may include determining that no transform coefficient in the subset of transform coefficients has an absolute value greater than one, and, based on the determining, skipping one or more decoding passes on the subset of transform coefficients, the decoding passes relating to decoding level information associated with the subset of transform coefficients.