System and method for video coding
US-2024314310-A1 · Sep 19, 2024 · US
US9392301B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9392301-B2 |
| Application number | US-201213536834-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 28, 2012 |
| Priority date | Jul 1, 2011 |
| Publication date | Jul 12, 2016 |
| Grant date | Jul 12, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Disclosed are techniques for coding coefficients of a video block having a non-square shape defined by a width and a height, comprising coding one or more of x- and y-coordinates that indicate a position of a last non-zero coefficient within the block according to an associated scanning order, including coding each coordinate by determining one or more contexts used to code the coordinate based on one of the width and the height that corresponds to the coordinate, and coding the coordinate by performing a context adaptive entropy coding process based on the contexts. Also disclosed are techniques for coding information that identifies positions of non-zero coefficients within the block, including determining one or more contexts used to code the information based on one or more of the width and the height, and coding the information by performing a context adaptive entropy coding process based on the contexts.
Opening claim text (preview).
What is claimed is: 1. A method of coding transform coefficients associated with a first block of video data during a video coding process, wherein the first block has a non-square shape defined by a width and a height, and wherein one of the width or height of the block equals “1” block position, the method comprising: coding, with a video coder, one or more of x- or y-coordinates that indicate a position of a last non-zero coefficient within the first block according to a scanning order associated with the block determining, with the video coder, that the one of the width or the height comprises a single block position; determining, with the video coder, one or more contexts used to code a respective x- or y-coordinate based at least in part on one of the width or the height of the block not having the single block position that corresponds to the respective x- or y-coordinate; coding the respective x- or y-coordinate by performing a context adaptive entropy coding process based at least in part on the determined one or more contexts; and not coding, with the video coder, the respective x- or y-coordinate corresponding to the width or height of the block having the single block position. 2. The method of claim 1 , wherein the width of the first block corresponds to the x-coordinate, and the height of the first block corresponds to the y-coordinate. 3. The method of claim 1 , further comprising: in the event one of the width or the height of a second block equals “2,” determining, with the video coder, that the one of the width or the height comprises two block positions, and in the event another one of the width or the height of the second block equals a value greater than “2,” indicating that the other one of the width or the height comprises more than two block positions, further determining, with the video coder, the one or more contexts used to code the other one of the x- or y-coordinates that corresponds to the other one of the width or the height that equals a value greater than “2” based at least in part on the one of the x- or y-coordinates that corresponds to the one of the width or the height that equals “2”. 4. The method of claim 1 , wherein coding comprises encoding, the method further comprising: encoding, with the video coder, the first block of video data to produce residual data; and transforming, with the video coder, the residual data to produce the transform coefficients. 5. The method of claim 1 , wherein coding comprises decoding, the method further comprising: inverse transforming, with the video coder, the transform coefficients to produce residual data; and decoding, with the video coder, the residual data to produce the first block of video data. 6. The method of claim 1 , wherein coding the one or more of x- or y-coordinates comprises coding, by a video coder, the one or more of x- or y-coordinates that indicate the position of the last non-zero coefficient within the first block according to the scanning order associated with the block, wherein determining that the one of the width and the height comprises the single block position comprises determining, by the video coder, that the one of the width and the height comprises the single block position, wherein determining the one or more contexts comprises determining, by the video coder, the one or more contexts used to code a respective x- or y-coordinate based at least in part on one of the width or the height of the block not having the single block position that corresponds to the respective x- or y-coordinate, wherein coding the respective x- or y-coordinate comprises coding, by the video coder, the respective x- or y-coordinate by performing the context adaptive entropy coding process based at least in part on the determined one or more contexts, and wherein not coding the respective x- or y-coordinate comprises not coding, by the video coder, the respective x- or y-coordinate corresponding to the width or height of the block having the single block position. 7. The method of claim 1 , wherein coding the one or more of x- or y-coordinates comprises coding, by a means for coding, the one or more of x- or y-coordinates that indicate the position of the last non-zero coefficient within the first block according to the scanning order associated with the block, wherein determining that the one of the width and the height comprises the single block position comprises determining by, means for determining, that the one of the width and the height comprises the single block position, wherein determining the one or more contexts comprises determining, by a means for determining, the one or more contexts used to code a respective x- or y-coordinate based at least in part on one of the width or the height of the block not having the single block position that corresponds to the respective x- or y-coordinate, wherein coding the respective x- or y-coordinate comprises coding, by a means for coding, the respective x- or y-coordinate by performing the context adaptive entropy coding process based at least in part on the determined one or more contexts, and wherein not coding the respective x- or y-coordinate comprises not coding, by a means for not coding, the respective x- or y-coordinate corresponding to the width or height of the block having the single block position. 8. The method of claim 1 , wherein coding the one or more of x- or y-coordinates comprises executing, by one or more processors of a device for coding video data, instructions stored on a non-transitory computer-readable storage medium that cause the one or more processors to code the one or more of x- or y-coordinates that indicate the position of the last non-zero coefficient within the first block according to the scanning order associated with the block, wherein determining that the one of the width and the height comprises the single block position comprises executing, by the one or more processors, instructions stored on the non-transitory computer-readable storage medium that cause the one or more processors to determine that the one of the width and the height comprises the single block position, wherein determining the one or more contexts comprises executing, by the one or more processors, instructions stored on the non-transitory computer-readable storage medium that cause the one or more processors to determine the one or more contexts used to code a respective x- or y-coordinate based at least in part on one of the width or the height of the block not having the single block position that corresponds to the respective x- or y-coordinate, wherein coding the respective x- or y-coordinate comprises executing, by the one or more processors, instructions stored on the non-transitory computer-readable storage medium that cause the one or more processors to code the respective x- or y-coordinate by performing the context adaptive entropy coding process based at least in part on the determined one or more contexts, and wherein not coding the respective x- or y-coordinate comprises executing, by the one or more processors, instructions stored on the non-transitory computer-readable storage medium that cause the one or more processors to not code the respective x- or y-coordinate corresponding to the width or height of the block having the single block position. 9. An apparatus configured to code transform coefficients associated with a first block of video data during a video coding process, wherein the first block has a non-square shape defined by a width and a height, and wherein one of the width or height of the block equals “1” block position, the apparatus comprising: a video memory configured to store the first block of video data; and a video coder in communicati
Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO] · CPC title
Entropy coding, e.g. variable length coding [VLC] or arithmetic coding · CPC title
Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC] · CPC title
the region being a block, e.g. a macroblock · CPC title
the unit being a set of transform coefficients · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.