Palette predictor signaling with run length code for video coding
US-2015281728-A1 · Oct 1, 2015 · US
US10097837B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10097837-B2 |
| Application number | US-201514878697-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 8, 2015 |
| Priority date | Oct 10, 2014 |
| Publication date | Oct 9, 2018 |
| Grant date | Oct 9, 2018 |
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.
A video decoder may obtain a syntax element from a bitstream comprising an encoded representation of a block of video data. The block comprises a series of runs, each of which may consist of one pixel or two or more consecutive pixels. Furthermore, the video decoder may obtain a set of palette run length syntax elements indicating lengths of one or more of the runs. The video decoder may determine, based on the syntax element, that the palette run length syntax elements do not include a palette run length syntax element indicating a length of the first run. Rather, the video decoder determines, based on the lengths indicated by the set of palette run syntax elements, the length of the first run. The video decoder may determine, based on the palette sample modes of the pixels, palette indices of the pixels, each indicating an entry in a palette.
Opening claim text (preview).
What is claimed is: 1. A method of decoding video data, the method comprising: obtaining a first syntax element from a bitstream that comprises an encoded representation of a first block of the video data, wherein the first block comprises a first series of runs, the first series of runs including two or more runs, each respective run of the first series of runs consisting of one pixel or two or more consecutive pixels of the first block, each pixel of each respective run of the first series of runs having a same palette sample mode; obtaining, from the bitstream, a first set of one or more palette run length syntax elements, wherein the first set of one or more palette run length syntax elements indicate lengths of one or more runs in the first series of runs; determining, based on the first syntax element having a first value, that the first set of palette run length syntax elements does not indicate a length of the first run of the first series of runs; determining, based on the number of pixels in the first block and the lengths indicated by the first set of palette run syntax elements, the length of the first run of the series of runs; determining, based on palette sample modes of the pixels of the first block, palette indices of non-escape coded pixels of the first block, wherein, for each respective non-escape coded pixel of the first block, the respective palette index of the respective non-escape coded pixel indicates an entry in a first palette, each respective entry in the first palette indicating a respective set of sample values; determining, based on the palette indices of the non-escape coded pixels of the first block, values of the non-escape coded pixels of the first block; obtaining, from the bitstream, a second syntax element, wherein a second block of the video data comprises a second series of runs, the second series of runs including two or more runs, each respective run of the second series of runs consisting of one pixel or two or more consecutive pixels of the second block, each pixel of each respective run of the second series of runs having a same palette sample mode; obtaining, from the bitstream, a second set of one or more palette run length syntax elements, wherein the second set of palette run length syntax elements indicates lengths of one or more runs of the second series of runs; determining, based on the second syntax element having a second value different from the first value, that the second set of palette run length syntax elements does not indicate a length of the last run of the second series of runs; determining, based on the number of pixels in the second block and the lengths indicated by the second set of palette run syntax elements, the length of the last run of the second series of runs; determining, based on palette sample modes of the pixels of the second block, palette indices of the pixels of the second block; and determining, based on the palette indices of the pixels of the second block, values of pixels of the second block. 2. The method of claim 1 , further comprising: in response to determining (1) the size of the first palette is not equal to 1 or there is an escape pixel in the first block; and (2) the size of the first palette is not 0, determining the bitstream includes the first syntax element. 3. The method of claim 1 , further comprising: responsive to determining the first set of palette run length syntax elements does not indicate the length of the first run of the first series of runs, obtaining, from the bitstream, a third syntax element unless (1) a current pixel is the first pixel of the first block in scanning order, or (2) the current pixel is not the first pixel of the first block and a previous run has a Copy Above run type, wherein: the current pixel is the first line of the first block and is the first pixel of a particular run, when the current pixel is not the first pixel of the first block and the previous run exists, the particular run follows the previous run and there is no other run between the particular run and the previous run, the third syntax element indicates a run type of the particular run is one of: the Copy Above run type or an Index Copy run type, for each respective pixel of a run having the Copy Above run type, a palette index of the respective pixel is the same as a palette index of a pixel immediately above the respective pixel, and for each respective pixel of a run having the Index Copy run type, a palette index of the respective pixel is the same as a palette index of a pixel immediately left of the respective pixel. 4. The method of claim 1 , the method further comprising: obtaining, from the bitstream, a third syntax element, wherein a third block comprises a third series of runs, the third series of runs including two or more runs, each respective run of the third series of runs consisting of one pixel or two or more consecutive pixels of the third block, each pixel of each respective run of the third series of runs having a same palette sample mode; obtaining, from the bitstream, a third set of one or more palette run length syntax elements, wherein the third set of palette run length syntax elements indicates lengths of one or more runs of the third series of runs; determining, based on the third syntax element having the first value, that the third set of palette run length syntax elements does not indicate a length of the first run of the third series of runs; determining, based on the number of pixels in the third block and the lengths indicated by the third set of palette run syntax elements, the length of the first run of the third series of runs; responsive to determining the third set of palette run length syntax elements does not indicate the length of the first run of the third series of runs and determining a current pixel is the first pixel of the third block in scanning order, inferring the first run of the third series of runs has a Copy Above run type, wherein the current pixel is the first line of the third block and is the first pixel of the first run of the third series of runs, wherein, for each respective pixel of a run having the Copy Above run type, a palette index of the respective pixel is the same as a palette index of a pixel immediately above the respective pixel; determining, based on palette sample modes of the pixels of the third block, palette indices of the pixels of the third block; and determining, based on the palette indices of the pixels of the third block, values of pixels of the third block. 5. The method of claim 1 , further comprising: obtaining, from the bitstream, a third syntax element, wherein a third block comprises a third series of runs, the third series of runs including two or more runs, each respective run of the third series of runs consisting of one pixel or two or more consecutive pixels of the third block, each pixel of each respective run of the third series of runs having the same palette sample mode; obtaining, from the bitstream, a third set of one or more palette run length syntax elements, wherein the third set of palette run length syntax elements indicates lengths of one or more runs of the third series of runs; determining, based on the third syntax element having the first value, that the third set of palette run length syntax elements does not indicate a length of the first run of the third series of runs; determining, based on the number of pixels in the third block and the lengths indicated by the third set of palette run syntax elements, the length of the first run of the third series of runs; responsive to determining the third set of palette run length syntax elements does not indicate the length of the first run of the third series of runs and determining a current pixel is not the first pixel of the third block i
involving temporal prediction (adaptive coding with adaptive selection between spatial and temporal predictive coding H04N19/107; adaptive coding with adaptive selection among a plurality of temporal predictive coding modes H04N19/109) · CPC title
using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals · CPC title
Run-length coding · CPC title
characterised by syntax aspects related to video coding, e.g. related to compression standards · CPC title
the unit being a colour or a chrominance component · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.