Abstract:
Quantization parameter (QP) update classification techniques for display stream compression (DSC) are disclosed. In one aspect, a method for determining a quantization parameter (QP) value includes determining whether a current block includes a transition from a flat region to a complex region or is a flat block and determining whether a previous block includes a transition from a flat region to a complex region or is a flat block. The method may also include selecting a default technique or an alternative technique for calculating a QP adjustment value for the current block based on whether the previous and current blocks include a transition from a flat region to a complex region or are flat blocks.
Abstract:
A video coding process that includes defining a context derivation neighborhood for one of a plurality of transform coefficients based on a transform coefficient scan order. The process also includes determining a context for the one of the plurality of transform coefficients based on the context derivation neighborhood. The process also includes coding the one of the plurality of transform coefficients based on the determined context.
Abstract:
A video coder may determine a palette predictor list comprising one or more candidates. Each respective candidate in the palette predictor list specifies a value of a different respective reconstructed neighboring pixel from among one or more reconstructed neighboring pixels. Each of the one or more reconstructed neighboring pixels is in a line above or a column left of a current block of the video data. The video coder may include, in a palette for the current block, at least one candidate in the palette predictor list.
Abstract:
Techniques are described for palette-based video coding. In palette-based coding, a video coder may form a “palette” as a table of colors for representing video data of a particular area (e.g., a given block). Rather than coding actual pixel values (or their residuals), the video coder may code palette index values for one or more of the pixels that correspond to entries in the palette representing the colors of the pixels. A palette may be explicitly encoded, predicted from previous palette entries, or a combination thereof. In this disclosure, techniques are described for coding a block of video data that has a single color value using a single color mode as a sub-mode of a palette coding mode. The disclosed techniques enable a block having a single color value to be coded with a reduced number of bits compared to a normal mode of the palette coding mode.
Abstract:
Techniques are described for palette-based video coding. In palette-based coding, a video coder may form a so-called “palette” as a table of colors for representing video data of a given block of video data. Rather than coding actual pixel values or their residuals for the given block, the video coder may code index values for one or more of the pixels. The index values map the pixels to entries in the palette representing the colors of the pixels. Techniques are described for determining the application of deblocking filtering for pixels of palette coded blocks at a video encoder or a video decoder. In addition, techniques are described for determining quantization parameter (QP) values and delta QP values used to quantize escape pixel values of palette coded blocks at the video encoder or the video decoder.
Abstract:
Entropy coding techniques for display stream compression (DSC) are disclosed. In one aspect, a method of entropy coding video data includes partitioning a block of the video data into a plurality of groups of samples based at least in part on a coding mode of the block. The method further includes entropy coding the block via performing a group-wise skip on at least one of the groups in response to all of the samples in the at least one group being equal to a predetermined value.
Abstract:
In an example a method of processing video data includes determining palette indices of a first row of a block of video data, wherein the palette indices correspond to a palette of one or more colors for coding the block of video data, and wherein the palette indices of the first row include one or more indices that are associated with a color value in the palette and a syntax element that is not associated with a color value in the palette. The method also includes coding a run of palette indices of a second row of the block of video data relative to the palette indices of the first row, wherein the run includes the one or more indices that are associated with a color value in the palette and the syntax element that is not associated with a color value in the palette.
Abstract:
In an example a method of processing video data includes determining a first palette for a first block of video data that is located in a first row of blocks, generating a predictor palette for constructing at least one second palette of at least one second block of video data in the first row of blocks coded, reinitializing the predictor palette for determining a third palette of a third block of video data that is located in a second row of blocks, wherein re-initializing the predictor palette comprises re-initializing the predictor palette based on the one or more palette entries of the first palette or an initial predictor palette generated after coding the first block, determining the third palette of the third block based on the re-initialized predictor palette, and coding the third block using the third palette.
Abstract:
A device configured to code video data includes: a memory configured to store video data, and at least one processor. The at least one processor is configured to: code information indicating whether a block from a current picture will flicker. A determination of whether the block from the current picture will flicker is based on the block in the current picture in a display order and a collocated block from a next picture in the display order.
Abstract:
In palette-based coding, a video coder may form a so-called “palette” as a table of colors representing the video data of a given block. The video coder may code index values for one or more pixels values of a current block of video data, where the index values indicate entries in the palette that represent the pixel values of the current block. A method includes determining a palette for a block of video data, identifying escape pixel(s) not associated with any palette entries, identifying a single quantization parameter (QP) value for all escape pixels of the block for a given color channel using a QP value for non-palette based coding of transform coefficients, dequantizing each escape pixel using the identified QP value, and determining pixel values of the block using the dequantized escape pixels and index values for any pixel(s) associated with any palette entries.