Abstract:
This disclosure proposes various techniques for limiting the number of bins that are coded using an adaptive context model with context adaptive binary arithmetic coding (CABAC). In particular, this disclosure proposes to limit the number of bins that use CABAC for coding level information of transform coefficients in a video coding process.
Abstract:
A video encoder is configured to determine a first and second binary string for a value indicating the position of the last significant coefficient, within a video block of size T. A video decoder is configured to determine a value indicating the position of a last significant coefficient within a video block of size T based on a first and second binary string. In one example, the first binary string is based on a truncated unary coding scheme defined by a maximum bit length defined by 2 log2(T)−1 and the second binary string is based on a fixed length coding scheme defined by a maximum bit length defined by log2(T)−2.
Abstract:
The techniques of this disclosure are generally related to parallel coding of video units that reside along rows or columns of blocks in largest coding units. For example, the techniques include removing intra-prediction dependencies between two video units in different rows or columns to allow for parallel coding of rows or columns of the video units.
Abstract:
In some examples, a video coder employs a two-level technique to code information that identifies a position within the block of transform coefficients of one of the coefficients that is a last significant coefficient (LSC) for the block according to a scanning order associated with the block of transform coefficients. For example, a video coder may code a sub-block position that identifies a position of one of the sub-blocks that includes the LSC within the block, and code a coefficient position that identifies a position of the LSC within the sub-block that includes the LSC.
Abstract:
In one example, a device includes a video coder configured to code a first set of syntax elements for the coefficients of a residual block of video data, and code, using at least a portion of the first set of syntax elements as context data, a second set of syntax elements for the coefficients, wherein the first set of syntax elements each correspond to a first type of syntax element for the coefficients, and wherein the second set of syntax elements each correspond to a second, different type of syntax element for the coefficients. For example, the first set of syntax elements may comprise values indicating whether the coefficients are significant (that is, have non-zero level values), and the second set of syntax elements may comprise values indicating whether level values for the coefficients have absolute values greater than one.
Abstract:
An example method includes determining, for each respective coding block of a plurality of coding blocks of a current coding tree unit (CTU) of video data in a current picture of video data, a respective search area of a plurality of respective search areas, wherein at least one of the plurality of search areas includes samples of the current picture located outside of the current CTU, and wherein at least one of the plurality of search areas does not include samples of the current picture located outside of the current CTU; selecting, for each respective coding block and from within the respective search area for the respective coding block, a respective predictor block of a plurality of predictor blocks; and reconstructing samples of each respective coding block based on samples included in a corresponding predictor block in the plurality of predictor blocks.
Abstract:
A device for encoding video data includes a memory configured to store video data, and a video encoder implemented in circuitry and configured to encode a future picture of the video data having a first display order position, the future picture being included in an intra period (IP) of the video data, the IP comprising a plurality of groups of pictures (GOPs), and after encoding the future picture, encode a picture of an ordinal first GOP of the plurality of GOPs using the future picture as a reference picture, each picture of the ordinal first GOP having display order positions earlier than the first display order position. Encoding the future picture in this manner may result in encoding performance improvements with minimal increases in encoding and decoding complexity.
Abstract:
An example device for filtering a decoded block of video data includes one or more processing units configured to construct filters for classes of blocks of a current picture of video data. To construct filters for each of the classes, the processing units are configured to determine a value of a flag that indicates whether a fixed filter is used to predict a set of filter coefficients of the class, and in response to the fixed filter being used to predict the set of filter coefficients, determine an index value into a set of fixed filters and predict the set of filter coefficients of the class using a fixed filter of the set of fixed filters identified by the index value.
Abstract:
An example device includes a memory to store the video data, and processing circuitry in communication with the memory. The processing circuitry is configured to compare a value of a dimension of a current block of the stored video data to a value of a corresponding dimension of a neighboring block of the current block to obtain a relative dimension value. The processing circuitry is further configured to determine, based on the relative dimension value, that the current block is to be partitioned according to a prediction tree (PT) portion of a multi-type tree-based partitioning scheme. The PT portion comprises partitioning according to one of a binary tree structure or a center-side triple tree structure. The processing circuitry is further configured to partition, based on the determination, the current block according to the PT portion, to form a plurality of sub-blocks.
Abstract:
A video coder may be configured to determine a partitioning for a picture of video data using dual tree partitioning. The video coder may receive a picture of video data, determine a partitioning for the picture of video data using dual tree partitioning for luma blocks and chroma blocks based on a minimum quadtree size, wherein a maximum value for the minimum quadtree size is equal to a threshold used for inferring a quadtree split, and code the partitioned picture.