Abstract:
In general, this disclosure described techniques for pruning a list of motion vector prediction candidates based on picture order count (POC) values. A video coding device may be configured to generate the list of motion vector prediction candidates for a prediction unit (PU) of video data. The video coding device may prune a first motion vector prediction candidate from the list of motion vector prediction candidates when a POC value for a reference picture identified by the first motion vector prediction candidate is equal to a second POC value of a reference picture identified by a second motion vector prediction candidate in the list of motion vector prediction candidates. The video coding device may code the PU using the pruned list.
Abstract:
In an example, a method of processing video may include receiving a bitstream including encoded video data and a colour remapping information (CRI) supplemental enhancement information (SEI) message. The CRI SEI message may include information corresponding to one or more colour remapping processes. The method may include decoding the encoded video data to generate decoded video data. The method may include applying a process that does not correspond to the CRI SEI message to the decoded video data before applying at least one of the one or more colour remapping processes to the decoded video data to produce processed decoded video data.
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 and methods for low complexity encoding and background detection are described herein. One aspect of the subject matter described in the disclosure provides a video encoder comprising a memory configured to store a video block. The video encoder further comprises a processor in communication with the memory. The processor is configured to determine whether the video block is background by comparing the video block to a corresponding block located in a previous temporal frame. The processor is further configured to determine, when the video block is not background, whether one or more sub-blocks of the video block are background by comparing the sub-blocks to corresponding sub-blocks located in the previous temporal frame.
Abstract:
Systems, methods, and non-transitory media are provided for power-efficient image stabilization. An example method can include collecting measurements from a motion sensor, the measurements being based on movement of an image sensor while capturing frames; calculating parameters for counteracting motions in a frame, wherein first parameters are based on the measurements and second parameters are based on some of the measurements; adjusting, in a first stabilization pass of a dual-pass stabilization process, the first frame according to the second parameters; adjusting, in a second stabilization pass of the dual-pass stabilization process, the first frame according to the first parameters; based on a second frame having less motion than the first frame, enabling for the second frame a single-pass stabilization process for both a frame preview process and video record process; and adjusting, in the single stabilization pass, the second frame according to parameters for counteracting motions in the second frame.
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:
Techniques are described for processing video data to conform to a high dynamic range (HDR)/wide color gamut (WCG) color container. Operations may be applied to video data in certain color spaces to enable compression of High Dynamic Range (HDR) and Wide Color Gamut (WCG) video in such a way that an existing receiver without HDR and WCG capabilities would be able to display a viewable Standard Dynamic Range (SDR) video from the received bitstream without any additional processing. Certain embodiments enable delivery of a single bitstream from which an existing decoder obtains the viewable SDR video directly and an HDR capable receiver reconstruct the HDR and WCG video by applying the specified processing. Such embodiments may improve the compression efficiency of hybrid based video coding systems utilized for coding HDR and WCG video data.
Abstract:
In general, techniques are described for processing high dynamic range (HDR) and wide color gamut (WCG) video data for video coding. A device comprising a memory and a processor may perform the techniques. The memory may store compacted fractional chromaticity coordinate (FCC) formatted video data. The processor may inverse compact the compacted FCC formatted video data using one or more inverse adaptive transfer functions (TFs) to obtain decompacted FCC formatted video data. The processor may next inverse adjust a chromaticity component of the decompacted FCC formatted video data based on a corresponding luminance component of the decompacted FCC formatted video data to obtain inverse adjusted FCC formatted video data. The processor may convert the chromaticity component of the inverse adjusted FCC formatted video data from the FCC format to a color representation format to obtain High Dyanmic Range (HDR) and Wide Color Gamut (WCG) video data.
Abstract:
This disclosure relates to processing video data, including processing video data to conform to a high dynamic range (HDR)/wide color gamut (WCG) color container. The techniques apply, on an encoding side, pre-processing of color values prior to application of a static transfer function and/or apply post-processing on the output from the application of the static transfer function. By applying pre-processing, the examples may generate color values that when compacted into a different dynamic range by application of the static transfer function linearize the output codewords. By applying post-processing, the examples may increase signal to quantization noise ratio. The examples may apply the inverse of the operations on the encoding side on the decoding side to reconstruct the color values.
Abstract:
A device may determine, based on data in a bitstream, a luma sample (Y) of a pixel, a Cb sample of the pixel, and the Cr sample of the pixel. Furthermore, the device may obtain, from the bitstream, a first scaling factor and a second scaling factor. Additionally, the device may determine, based on the first scaling factor, the Cb sample for the pixel, and Y, a converted B sample (B) for the pixel. The device may determine, based on the second scaling factor, the Cr sample for the pixel, and Y, a converted R sample (R) for the pixel. The device may apply an electro-optical transfer function (EOTF) to convert Y, R, and B to a luminance sample for the pixel, a R sample for the pixel, and a B sample for the pixel, respectively.