Coded-block-flag coding and derivation
AssigneeMicrosoft Technology Licensing, LLC
InventorsBin Li, Jizheng Xu
Life of this patent
Estimating the term…
Abstract
Techniques for coding and deriving (e.g., determining) one or more coded-block-flags associated with video content are described herein. A coded-block-flag of a last node may be determined when coded-block-flags of preceding nodes are determined to be a particular value and when a predetermined condition is satisfied. In some instances, the predetermined condition may be satisfied when log2(size of current transform unit) is less than log2(size of maximum transform unit) or log2(size of current coding unit) is less than or equal to log2(size of maximum transform unit)+1. The preceding nodes may be nodes that precede the last node on a particular level in a residual tree.
Claims21
-20. (canceled)
In a computing device that implements a video encoder, a method comprising:
- encoding video content to produce compressed data, including, for a given coding unit (“CU”) of the video content:
- determining that a root transform unit (“TU”) of a residual quadtree for the given CU includes residual information;
- determining a value of a coded block flag (“CBF”) for the root TU, the value of the CBF for the root TU indicating the root TU includes residual information;
- signaling, as part of the compressed data, the value of the CBF for the root TU;
- determining whether to split the root TU into multiple nodes, each of the multiple nodes being associated with a block, including determining that a predetermined condition is satisfied, the predetermined condition relating to a predetermined maximum TU size, wherein the determining that the predetermined condition is satisfied includes determining that log2(a TU size)<log2(the predetermined maximum TU size);
- determining values of multiple preceding CBFs for multiple blocks, the values of the multiple preceding CBFs indicating the multiple blocks, respectively, do not include residual information;
- and
- based at least in part on the values of the multiple preceding CBFs indicating the multiple blocks, respectively, do not include residual information, determining a value of a CBF for a given block, the value of the CBF for the given block indicating that the given block includes residual information, and refraining from signaling, as part of the compressed data, the value of the CBF for the given block;
- and
- outputting the compressed data as part of a bitstream, wherein the compressed data includes the value of the CBF for the root TU but not the value of the CBF for the given block, the value of the CBF for the root TU being signaled for the given CU.
One or more non-transitory computer-readable media having stored thereon compressed data as part of a bitstream, the compressed data including a value of a coded block flag (“CBF”) for a root transform unit (“TU”) of a residual quadtree for a given coding unit (“CU”) of video content, the value of the CBF for the root TU being signaled for the given CU, wherein the compressed data is organized to facilitate decoding to reconstruct the video content by operations that include, for the given CU:
- determining the value of the CBF for the root TU of the residual quadtree for the given CU, the value of the CBF for the root TU indicating the root TU includes residual information;
- determining, based on the value of the CBF for the root TU, that the root TU includes residual information;
- determining whether the root TU is split into multiple nodes, each of the multiple nodes being associated with a block, including determining that a predetermined condition is satisfied, the predetermined condition relating to a predetermined maximum TU size, wherein the determining that the predetermined condition is satisfied includes determining that log2(a TU size)<log2(the predetermined maximum TU size);
- determining values of multiple preceding CBFs for multiple blocks, the values of the multiple preceding CBFs indicating the multiple blocks, respectively, do not include residual information;
- and
- based at least in part on the values of the multiple preceding CBFs indicating the multiple blocks, respectively, do not include residual information, determining a value of a CBF for a given block, the value of the CBF for the given block indicating that the given block includes residual information, wherein the compressed data does not include the value of the CBF for the given block.
A computer system comprising:
- a buffer configured to receive and store compressed data as part of a bitstream;
- and
- a video decoder, implemented using one or more processors and memory, configured to perform operations to decode the compressed data to reconstruct video content, including, for a given coding unit (“CU”) of the video content:
- determining a value of a coded block flag (“CBF”) for a root transform unit (“TU”) of a residual quadtree for the given CU, the value of the CBF for the root TU indicating the root TU includes residual information, wherein the compressed data includes the value of the CBF for the root TU, the value of the CBF for the root TU being signaled for the given CU;
- determining, based on the value of the CBF for the root TU, that the root TU includes residual information;
- determining whether the root TU is split into multiple nodes, each of the multiple nodes being associated with a block, including determining that a predetermined condition is satisfied, the predetermined condition relating to a predetermined maximum TU size, wherein the determining that the predetermined condition is satisfied includes determining that log2(a TU size)<log2(the predetermined maximum TU size);
- determining values of multiple preceding CBFs for multiple blocks, the values of the multiple preceding CBFs indicating the multiple blocks, respectively, do not include residual information;
- and
- based at least in part on the values of the multiple preceding CBFs indicating the multiple blocks, respectively, do not include residual information, determining a value of a CBF for a given block, the value of the CBF for the given block indicating that the given block includes residual information, wherein the compressed data does not include the value of the CBF for the given block.
Dependencies are inferred from the claim text.