Palette mode coding for video coding

US9986248B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9986248-B2
Application numberUS-201615004508-A
CountryUS
Kind codeB2
Filing dateJan 22, 2016
Priority dateJan 29, 2015
Publication dateMay 29, 2018
Grant dateMay 29, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Receiving a plurality of syntax elements that are indicative of a palette that was used to encode a block of video data, the plurality of syntax elements including a first syntax element that indicates a number of palette values for the palette that are explicitly signaled in the encoded video bitstream, wherein the first syntax element is encoded using one or more Golomb codes such that the length of the encoded first syntax element is less than or equal to a predetermined maximum number of bits, decoding the plurality of syntax elements, including decoding the first syntax element using the one or more Golomb codes, reconstructing the palette based on the decoded plurality of syntax elements, and decoding the block of video data using the reconstructed palette.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of decoding video data, the method comprising: receiving a block of video data in an encoded video bitstream, the block of video data having been encoded using a palette-based coding mode; receiving a plurality of syntax elements that are indicative of a palette that was used to encode the block of video data, the plurality of syntax elements including a first syntax element that indicates a number of palette values for the palette that are explicitly signaled in the encoded video bitstream, wherein a maximum value of the first syntax element is defined relative to one or more of a second syntax element that indicates a maximum size of the palette or a third syntax element that indicates a maximum size of a palette predictor, wherein the second syntax element has a value from 0 to a first threshold and the third syntax element has a value from 0 to a second threshold, and encoded using one or more Golomb codes such that the length of the encoded first syntax element is less than or equal to a predetermined maximum number of bits; decoding the plurality of syntax elements, including decoding the first syntax element using the one or more Golomb codes; reconstructing the palette based on the decoded plurality of syntax elements; and decoding the block of video data using the reconstructed palette. 2. The method of claim 1 , wherein the first syntax element is a num_signalled_palette_entries syntax element. 3. The method of claim 1 , wherein the predetermined maximum number of bits is 32, and wherein the one or more Golomb codes is an exponential Golomb code of order 0. 4. The method of claim 1 , wherein the predetermined maximum number of bits is 32, and wherein the one or more Golomb codes is a concatenation of a truncated Rice code and an exponential Golomb code. 5. The method of claim 1 , wherein the plurality of syntax elements includes the palette values indicated as being explicitly signaled by the first syntax element. 6. The method of claim 1 , wherein the maximum value of the first syntax element is defined relative to both of the second syntax element that indicates the maximum size of the palette and the third syntax element that indicates the maximum size of the palette predictor. 7. The method of claim 1 , wherein the first threshold is one of 4095 or 4096 and the second threshold is one of 4095, 8191, or 8192. 8. The method of claim 1 , wherein the maximum value of the first syntax element is defined relative to both of the second syntax element that indicates a maximum size of the palette and the third syntax element that indicates a maximum size of the palette predictor, the method further comprising: defining the second syntax element to be less than or equal to a number of pixels in a largest possible block of the video data in the encoded video bitstream; and defining the third syntax element to be less than or equal to K*a value of the second syntax element, where K is a positive constant and * indicates a multiplication operation. 9. The method of claim 8 , wherein K is 2. 10. The method of claim 1 , further comprising: displaying the decoded block of video data. 11. The method of claim 1 , further comprising: receiving a syntax element indicating a palette run type in the case that a current pixel of the block of video data is not a first pixel in a scanning order of the block of video data; and inferring the syntax element as indicating a palette run type in the case that the current pixel is the first pixel in the scanning order. 12. An apparatus configured to decode video data, the apparatus comprising: a memory configured to store an encoded video bitstream; and a video decoder configured to: receive a block of video data in the encoded video bitstream, the block of video data having been encoded using a palette-based coding mode; receive a plurality of syntax elements that are indicative of a palette that was used to encode the block of video data, the plurality of syntax elements including a first syntax element that indicates a number of palette values for the palette that are explicitly signaled in the encoded video bitstream, wherein a maximum value of the first syntax element is defined relative to one or more of a second syntax element that indicates a maximum size of the palette or a third syntax element that indicates a maximum size of a palette predictor, wherein the second syntax element has a value from 0 to a first threshold and the third syntax element has a value from 0 to a second threshold, and encoded using one or more Golomb codes such that the length of the encoded first syntax element is less than or equal to a predetermined maximum number of bits; decode the plurality of syntax elements, including decoding the first syntax element using the one or more Golomb codes; reconstruct the palette based on the decoded plurality of syntax elements; and decode the block of video data using the reconstructed palette. 13. The apparatus of claim 12 , wherein the first syntax element is a num_signalled_palette_entries syntax element. 14. The apparatus of claim 12 , wherein the predetermined maximum number of bits is 32, and wherein the one or more Golomb codes is an exponential Golomb code of order 0. 15. The apparatus of claim 12 , wherein the predetermined maximum number of bits is 32, and wherein the one or more Golomb codes is a concatenation of a truncated Rice code and an exponential Golomb code. 16. The apparatus of claim 12 , wherein the plurality of syntax elements includes the palette values indicated as being explicitly signaled by the first syntax element. 17. The apparatus of claim 12 , wherein the maximum value of the first syntax element is defined relative to both of the second syntax element that indicates the maximum size of the palette and the third syntax element that indicates the maximum size of a palette predictor. 18. The apparatus of claim 12 , wherein the first threshold is one of 4095 or 4096 and the second threshold is one of 4095, 8191, or 8192. 19. The apparatus of claim 12 , wherein the maximum value of the first syntax element is defined relative to both of the second syntax element that indicates a maximum size of the palette and the third syntax element that indicates a maximum size of the palette predictor, and wherein the video decoder is further configured to: define the second syntax element to be less than or equal to a number of pixels in a largest possible block of the video data in the encoded video bitstream; and define the third syntax element to be less than or equal to K*a value of the second syntax element, where K is a positive constant and * indicates a multiplication operation. 20. The apparatus of claim 19 , wherein K is 2. 21. The apparatus of claim 12 , further comprising: a display configured to display the decoded block of video data. 22. The apparatus of claim 12 , wherein the video decoder is further configured to: receive a syntax element indicating a palette run type in the case that a current pixel of the block of video data is not a first pixel in a scanning order of the block of video data; and infer the syntax element as indicating a palette run type in the case that the current pixel is the first pixel in the scanning order. 23. An apparatus configured to decode video data, the apparatus comprising: means for receiving a block of video data in an encoded video bitstream, the block of video data having bee

Assignees

Inventors

Classifications

  • using hierarchical techniques, e.g. scalability (H04N19/63 takes precedence) · CPC title

  • H04N19/593Primary

    involving spatial prediction techniques · CPC title

  • Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder · CPC title

  • 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

  • characterised by syntax aspects related to video coding, e.g. related to compression standards · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9986248B2 cover?
Receiving a plurality of syntax elements that are indicative of a palette that was used to encode a block of video data, the plurality of syntax elements including a first syntax element that indicates a number of palette values for the palette that are explicitly signaled in the encoded video bitstream, wherein the first syntax element is encoded using one or more Golomb codes such that the le…
Who is the assignee on this patent?
Qualcomm Inc
What technology area does this patent fall under?
Primary CPC classification H04N19/593. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 29 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).